import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface HostConfig extends cdktf.TerraformMetaArguments { /** * Assigned ID View * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#assigned_idview Host#assigned_idview} */ readonly assignedIdview?: string; /** * A description of this host * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#description Host#description} */ readonly description?: string; /** * Skip host's DNS check (A/AAAA) before adding it * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#force Host#force} */ readonly force?: boolean | cdktf.IResolvable; /** * IP address of the host * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#ip_address Host#ip_address} */ readonly ipAddress?: string; /** * SSH public keys * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#ipasshpubkeys Host#ipasshpubkeys} */ readonly ipasshpubkeys?: string[]; /** * Defines a whitelist for Authentication Indicators. Use 'otp' to allow OTP-based 2FA authentications. Use 'radius' to allow RADIUS-based 2FA authentications. Other values may be used for custom configurations. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#krb_auth_indicators Host#krb_auth_indicators} */ readonly krbAuthIndicators?: string[]; /** * Pre-authentication is required for the service * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#krb_preauth Host#krb_preauth} */ readonly krbPreauth?: boolean | cdktf.IResolvable; /** * Host locality (e.g. 'Baltimore, MD') * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#locality Host#locality} */ readonly locality?: string; /** * Host location (e.g. 'Lab 2') * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#location Host#location} */ readonly location?: string; /** * Hardware MAC address(es) on this host * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#mac_addresses Host#mac_addresses} */ readonly macAddresses?: string[]; /** * Host fully qualified name * * - May contain only letters, numbers, '-'. * - DNS label may not start or end with '-' * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#name Host#name} */ readonly name: string; /** * Host operating system and version (e.g. 'Fedora 40') * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#operating_system Host#operating_system} */ readonly operatingSystem?: string; /** * Host hardware platform (e.g. 'Lenovo T61') * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#platform Host#platform} */ readonly platform?: string; /** * Generate a random password to be used in bulk enrollment * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#random_password Host#random_password} */ readonly randomPassword?: boolean | cdktf.IResolvable; /** * Client credentials may be delegated to the service * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#trusted_for_delegation Host#trusted_for_delegation} */ readonly trustedForDelegation?: boolean | cdktf.IResolvable; /** * The service is allowed to authenticate on behalf of a client * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#trusted_to_auth_as_delegate Host#trusted_to_auth_as_delegate} */ readonly trustedToAuthAsDelegate?: boolean | cdktf.IResolvable; /** * Update DNS when updating or deleting the host (default to `true`) * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#update_dns Host#update_dns} */ readonly updateDns?: boolean | cdktf.IResolvable; /** * Base-64 encoded host certificate * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#user_certificates Host#user_certificates} */ readonly userCertificates?: string[]; /** * Host 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/host#userclass Host#userclass} */ readonly userclass?: string[]; /** * Password used in bulk enrollment * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#userpassword Host#userpassword} */ readonly userpassword?: string; } /** * Represents a {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host freeipa_host} */ export declare class Host extends cdktf.TerraformResource { static readonly tfResourceType = "freeipa_host"; /** * Generates CDKTF code for importing a Host 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 Host to import * @param importFromId The id of the existing Host that should be imported. Refer to the {@link https://registry.terraform.io/providers/rework-space-com/freeipa/5.2.1/docs/resources/host#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the Host 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/host freeipa_host} 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 HostConfig */ constructor(scope: Construct, id: string, config: HostConfig); private _assignedIdview?; get assignedIdview(): string; set assignedIdview(value: string); resetAssignedIdview(): void; get assignedIdviewInput(): string; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _force?; get force(): boolean | cdktf.IResolvable; set force(value: boolean | cdktf.IResolvable); resetForce(): void; get forceInput(): any; get generatedPassword(): any; get id(): any; private _ipAddress?; get ipAddress(): string; set ipAddress(value: string); resetIpAddress(): void; get ipAddressInput(): string; private _ipasshpubkeys?; get ipasshpubkeys(): string[]; set ipasshpubkeys(value: string[]); resetIpasshpubkeys(): void; get ipasshpubkeysInput(): string[]; private _krbAuthIndicators?; get krbAuthIndicators(): string[]; set krbAuthIndicators(value: string[]); resetKrbAuthIndicators(): void; get krbAuthIndicatorsInput(): string[]; private _krbPreauth?; get krbPreauth(): boolean | cdktf.IResolvable; set krbPreauth(value: boolean | cdktf.IResolvable); resetKrbPreauth(): void; get krbPreauthInput(): any; private _locality?; get locality(): string; set locality(value: string); resetLocality(): void; get localityInput(): string; private _location?; get location(): string; set location(value: string); resetLocation(): void; get locationInput(): string; private _macAddresses?; get macAddresses(): string[]; set macAddresses(value: string[]); resetMacAddresses(): void; get macAddressesInput(): string[]; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _operatingSystem?; get operatingSystem(): string; set operatingSystem(value: string); resetOperatingSystem(): void; get operatingSystemInput(): string; private _platform?; get platform(): string; set platform(value: string); resetPlatform(): void; get platformInput(): string; private _randomPassword?; get randomPassword(): boolean | cdktf.IResolvable; set randomPassword(value: boolean | cdktf.IResolvable); resetRandomPassword(): void; get randomPasswordInput(): any; private _trustedForDelegation?; get trustedForDelegation(): boolean | cdktf.IResolvable; set trustedForDelegation(value: boolean | cdktf.IResolvable); resetTrustedForDelegation(): void; get trustedForDelegationInput(): any; private _trustedToAuthAsDelegate?; get trustedToAuthAsDelegate(): boolean | cdktf.IResolvable; set trustedToAuthAsDelegate(value: boolean | cdktf.IResolvable); resetTrustedToAuthAsDelegate(): void; get trustedToAuthAsDelegateInput(): any; private _updateDns?; get updateDns(): boolean | cdktf.IResolvable; set updateDns(value: boolean | cdktf.IResolvable); resetUpdateDns(): void; get updateDnsInput(): any; 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; }; }