import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface UserConfig extends cdktf.TerraformMetaArguments { /** * Account disabled. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#account_disabled User#account_disabled} */ readonly accountDisabled?: boolean | cdktf.IResolvable; /** * Add an attribute/value pair. Format is attr=value. The attribute must be part of the LDAP schema. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#addattr User#addattr} */ readonly addattr?: string[]; /** * User authentication type. Possible values of the elements are (password, radius, otp, pkinit, hardened, idp, passkey) * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#auth_type User#auth_type} */ readonly authType?: string[]; /** * Car Licenses * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#car_license User#car_license} */ readonly carLicense?: string[]; /** * City * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#city User#city} */ readonly city?: string; /** * Display name * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#display_name User#display_name} */ readonly displayName?: string; /** * Email address * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#email_address User#email_address} */ readonly emailAddress?: string[]; /** * Employee Number * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#employee_number User#employee_number} */ readonly employeeNumber?: string; /** * Employee Type * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#employee_type User#employee_type} */ readonly employeeType?: string; /** * External IdP configuration * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#external_idp_config User#external_idp_config} */ readonly externalIdpConfig?: string; /** * External IdP user identifier * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#external_idp_username User#external_idp_username} */ readonly externalIdpUsername?: string; /** * First name * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#first_name User#first_name} */ readonly firstName: string; /** * Full name * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#full_name User#full_name} */ readonly fullName?: string; /** * GECOS * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#gecos User#gecos} */ readonly gecos?: string; /** * Group ID Number * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#gid_number User#gid_number} */ readonly gidNumber?: number; /** * Home Directory * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#home_directory User#home_directory} */ readonly homeDirectory?: string; /** * Initials * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#initials User#initials} */ readonly initials?: string; /** * Job Title * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#job_title User#job_title} */ readonly jobTitle?: string; /** * User password expiration [RFC3339](https://datatracker.ietf.org/doc/html/rfc3339#section-5.8) format (see [RFC3339 time string](https://tools.ietf.org/html/rfc3339#section-5.8) e.g., `YYYY-MM-DDTHH:MM:SSZ`) * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#krb_password_expiration User#krb_password_expiration} */ readonly krbPasswordExpiration?: string; /** * Kerberos principal expiration [RFC3339](https://datatracker.ietf.org/doc/html/rfc3339#section-5.8) format (see [RFC3339 time string](https://tools.ietf.org/html/rfc3339#section-5.8) e.g., `YYYY-MM-DDTHH:MM:SSZ`) * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#krb_principal_expiration User#krb_principal_expiration} */ readonly krbPrincipalExpiration?: string; /** * Principal alias * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#krb_principal_name User#krb_principal_name} */ readonly krbPrincipalName?: string[]; /** * Last name * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#last_name User#last_name} */ readonly lastName: string; /** * Login Shell * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#login_shell User#login_shell} */ readonly loginShell?: string; /** * Manager * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#manager User#manager} */ readonly manager?: string; /** * Mobile Number * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#mobile_numbers User#mobile_numbers} */ readonly mobileNumbers?: string[]; /** * UID or Login * * - The name must not exceed 32 characters. * - The name must contain only lowercase letters (a-z), digits (0-9), and the characters (. - _). * - The name must not start with a special character. * - A user and a group cannot have the same name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#name User#name} */ readonly name: string; /** * Org. Unit * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#organisation_unit User#organisation_unit} */ readonly organisationUnit?: string; /** * Postal code * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#postal_code User#postal_code} */ readonly postalCode?: string; /** * Preferred Language * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#preferred_language User#preferred_language} */ readonly preferredLanguage?: string; /** * Province/State/Country * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#province User#province} */ readonly province?: string; /** * RADIUS proxy configuration * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#radius_proxy_config User#radius_proxy_config} */ readonly radiusProxyConfig?: string; /** * RADIUS proxy username * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#radius_proxy_username User#radius_proxy_username} */ readonly radiusProxyUsername?: string; /** * Generate a random user password * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#random_password User#random_password} */ readonly randomPassword?: boolean | cdktf.IResolvable; /** * Set an attribute to a name/value pair. Format is attr=value. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#setattr User#setattr} */ readonly setattr?: string[]; /** * List of SSH public keys * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#ssh_public_key User#ssh_public_key} */ readonly sshPublicKey?: string[]; /** * The current state of the user, can be `active`, `disabled`, `staged`, or `preserved` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#state User#state} */ readonly state?: string; /** * Street address * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#street_address User#street_address} */ readonly streetAddress?: string; /** * Telephone Number * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#telephone_numbers User#telephone_numbers} */ readonly telephoneNumbers?: string[]; /** * User ID Number (system will assign one if not provided) * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#uid_number User#uid_number} */ readonly uidNumber?: number; /** * List of Base-64 encoded user certificates * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#user_certificates User#user_certificates} */ readonly userCertificates?: string[]; /** * User category (semantics placed on this attribute are for local interpretation) * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#userclass User#userclass} */ readonly userclass?: string[]; /** * Prompt to set the user password * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#userpassword User#userpassword} */ readonly userpassword?: string; } /** * Represents a {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user freeipa_user} */ export declare class User extends cdktf.TerraformResource { static readonly tfResourceType = "freeipa_user"; /** * Generates CDKTF code for importing a User resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the User to import * @param importFromId The id of the existing User that should be imported. Refer to the {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the User to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any; /** * Create a new {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/user freeipa_user} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options UserConfig */ constructor(scope: Construct, id: string, config: UserConfig); private _accountDisabled?; get accountDisabled(): boolean | cdktf.IResolvable; set accountDisabled(value: boolean | cdktf.IResolvable); resetAccountDisabled(): void; get accountDisabledInput(): any; private _addattr?; get addattr(): string[]; set addattr(value: string[]); resetAddattr(): void; get addattrInput(): string[]; private _authType?; get authType(): string[]; set authType(value: string[]); resetAuthType(): void; get authTypeInput(): string[]; private _carLicense?; get carLicense(): string[]; set carLicense(value: string[]); resetCarLicense(): void; get carLicenseInput(): string[]; private _city?; get city(): string; set city(value: string); resetCity(): void; get cityInput(): string; private _displayName?; get displayName(): string; set displayName(value: string); resetDisplayName(): void; get displayNameInput(): string; private _emailAddress?; get emailAddress(): string[]; set emailAddress(value: string[]); resetEmailAddress(): void; get emailAddressInput(): string[]; private _employeeNumber?; get employeeNumber(): string; set employeeNumber(value: string); resetEmployeeNumber(): void; get employeeNumberInput(): string; private _employeeType?; get employeeType(): string; set employeeType(value: string); resetEmployeeType(): void; get employeeTypeInput(): string; private _externalIdpConfig?; get externalIdpConfig(): string; set externalIdpConfig(value: string); resetExternalIdpConfig(): void; get externalIdpConfigInput(): string; private _externalIdpUsername?; get externalIdpUsername(): string; set externalIdpUsername(value: string); resetExternalIdpUsername(): void; get externalIdpUsernameInput(): string; private _firstName?; get firstName(): string; set firstName(value: string); get firstNameInput(): string; private _fullName?; get fullName(): string; set fullName(value: string); resetFullName(): void; get fullNameInput(): string; private _gecos?; get gecos(): string; set gecos(value: string); resetGecos(): void; get gecosInput(): string; private _gidNumber?; get gidNumber(): number; set gidNumber(value: number); resetGidNumber(): void; get gidNumberInput(): number; private _homeDirectory?; get homeDirectory(): string; set homeDirectory(value: string); resetHomeDirectory(): void; get homeDirectoryInput(): string; get id(): any; private _initials?; get initials(): string; set initials(value: string); resetInitials(): void; get initialsInput(): string; private _jobTitle?; get jobTitle(): string; set jobTitle(value: string); resetJobTitle(): void; get jobTitleInput(): string; private _krbPasswordExpiration?; get krbPasswordExpiration(): string; set krbPasswordExpiration(value: string); resetKrbPasswordExpiration(): void; get krbPasswordExpirationInput(): string; private _krbPrincipalExpiration?; get krbPrincipalExpiration(): string; set krbPrincipalExpiration(value: string); resetKrbPrincipalExpiration(): void; get krbPrincipalExpirationInput(): string; private _krbPrincipalName?; get krbPrincipalName(): string[]; set krbPrincipalName(value: string[]); resetKrbPrincipalName(): void; get krbPrincipalNameInput(): string[]; private _lastName?; get lastName(): string; set lastName(value: string); get lastNameInput(): string; private _loginShell?; get loginShell(): string; set loginShell(value: string); resetLoginShell(): void; get loginShellInput(): string; private _manager?; get manager(): string; set manager(value: string); resetManager(): void; get managerInput(): string; private _mobileNumbers?; get mobileNumbers(): string[]; set mobileNumbers(value: string[]); resetMobileNumbers(): void; get mobileNumbersInput(): string[]; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _organisationUnit?; get organisationUnit(): string; set organisationUnit(value: string); resetOrganisationUnit(): void; get organisationUnitInput(): string; private _postalCode?; get postalCode(): string; set postalCode(value: string); resetPostalCode(): void; get postalCodeInput(): string; private _preferredLanguage?; get preferredLanguage(): string; set preferredLanguage(value: string); resetPreferredLanguage(): void; get preferredLanguageInput(): string; private _province?; get province(): string; set province(value: string); resetProvince(): void; get provinceInput(): string; private _radiusProxyConfig?; get radiusProxyConfig(): string; set radiusProxyConfig(value: string); resetRadiusProxyConfig(): void; get radiusProxyConfigInput(): string; private _radiusProxyUsername?; get radiusProxyUsername(): string; set radiusProxyUsername(value: string); resetRadiusProxyUsername(): void; get radiusProxyUsernameInput(): string; private _randomPassword?; get randomPassword(): boolean | cdktf.IResolvable; set randomPassword(value: boolean | cdktf.IResolvable); resetRandomPassword(): void; get randomPasswordInput(): any; private _setattr?; get setattr(): string[]; set setattr(value: string[]); resetSetattr(): void; get setattrInput(): string[]; private _sshPublicKey?; get sshPublicKey(): string[]; set sshPublicKey(value: string[]); resetSshPublicKey(): void; get sshPublicKeyInput(): string[]; private _state?; get state(): string; set state(value: string); resetState(): void; get stateInput(): string; private _streetAddress?; get streetAddress(): string; set streetAddress(value: string); resetStreetAddress(): void; get streetAddressInput(): string; private _telephoneNumbers?; get telephoneNumbers(): string[]; set telephoneNumbers(value: string[]); resetTelephoneNumbers(): void; get telephoneNumbersInput(): string[]; private _uidNumber?; get uidNumber(): number; set uidNumber(value: number); resetUidNumber(): void; get uidNumberInput(): number; private _userCertificates?; get userCertificates(): string[]; set userCertificates(value: string[]); resetUserCertificates(): void; get userCertificatesInput(): string[]; private _userclass?; get userclass(): string[]; set userclass(value: string[]); resetUserclass(): void; get userclassInput(): string[]; private _userpassword?; get userpassword(): string; set userpassword(value: string); resetUserpassword(): void; get userpasswordInput(): string; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }