/* tslint:disable */
/* eslint-disable */
/**
* TeamCity REST API
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
*
* The version of the OpenAPI document: 2018.1 (current)
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
// May contain unused imports in some cases
// @ts-ignore
import type { AuthModules } from './auth-modules';
/**
* Stores settings that manage users accessing the TeamCity server.Use the `/app/rest/server/authSettings` endpoint to view and edit these settings, or navigate to **Admin | Authentication** page in TeamCity UI.
* @export
* @interface ServerAuthSettings
*/
export interface ServerAuthSettings {
/**
* **true** if users can log into TeamCity as [guests](https://www.jetbrains.com/help/teamcity/enabling-guest-login.html); **false** if only registered users can access TeamCity.
* @type {boolean}
* @memberof ServerAuthSettings
*/
allowGuest?: boolean;
/**
* The default username for all users logged in as guests.
* @type {string}
* @memberof ServerAuthSettings
*/
guestUsername?: string;
/**
* The custom text displayed on the TeamCity log in page.
* @type {string}
* @memberof ServerAuthSettings
*/
welcomeText?: string;
/**
* **true** if the username/password fields on the login page is collapsed by default, promoting authentication via third-party services. **false** if the username/password fields are initially visible.
* @type {boolean}
* @memberof ServerAuthSettings
*/
collapseLoginForm?: boolean;
/**
* **true** if the [per-project authorization mode](https://www.jetbrains.com/help/teamcity/managing-roles-and-permissions.html#Per-Project+Authorization+Mode) is enabled; otherwise, **false**.
* @type {boolean}
* @memberof ServerAuthSettings
*/
perProjectPermissions?: boolean;
/**
* **true** if users must enter their emails on registration; **false** if they can skip this setting.
* @type {boolean}
* @memberof ServerAuthSettings
*/
emailVerification?: boolean;
/**
* **strict** if builds can access only their own projects, projects that own VCS roots, and artifact dependencies projects. **lax** if builds have elevated permissions to access any project on the server (the default behavior).
* @type {string}
* @memberof ServerAuthSettings
*/
buildAuthenticationMode?: string;
/**
*
* @type {AuthModules}
* @memberof ServerAuthSettings
*/
modules?: AuthModules;
}