import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface RadiusServerConfig extends cdktf.TerraformMetaArguments { /** * Enable accounting in the radius server. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#accounting RadiusServer#accounting} */ readonly accounting?: boolean | cdktf.IResolvable; /** * Configuration Type. Values: 0: IPv4, 1: IPv6, -1: Hostname. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#address_type RadiusServer#address_type} */ readonly addressType?: number; /** * Attribute type for RADIUS group extraction. Maximum value = * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#attribute_type RadiusServer#attribute_type} */ readonly attributeType?: number; /** * The maximum number of seconds the system will wait for a response from the Radius server. Maximum value = * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#auth_timeout RadiusServer#auth_timeout} */ readonly authTimeout?: number; /** * This is the default group that is chosen when the authentication succeeds in addition to extracted groups. Maximum length = 64 * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#default_authentication_group RadiusServer#default_authentication_group} */ readonly defaultAuthenticationGroup?: string; /** * Enable NAS IP extraction. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#enable_nas_ip RadiusServer#enable_nas_ip} */ readonly enableNasIp?: boolean | cdktf.IResolvable; /** * Group separator string that delimits group names within a RADIUS attribute for RADIUS group extraction. Maximum length = 7 * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#group_separator RadiusServer#group_separator} */ readonly groupSeparator?: string; /** * Prefix string that precedes group names within a RADIUS attribute for RADIUS group extraction. Maximum length = 31 * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#groups_prefix RadiusServer#groups_prefix} */ readonly groupsPrefix?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#id RadiusServer#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id?: string; /** * IP Address of radius server. Minimum length = 1 Maximum length = 64 * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#ip_address RadiusServer#ip_address} */ readonly ipAddress: string; /** * The attribute type of the remote IP address attribute in a RADIUS response. Maximum value = * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#ip_attribute_type RadiusServer#ip_attribute_type} */ readonly ipAttributeType?: number; /** * The vendor ID of the attribute in the RADIUS response which denotes the intranet IP. Maximum value = * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#ip_vendor_id RadiusServer#ip_vendor_id} */ readonly ipVendorId?: number; /** * Name of radius server. Minimum length = 1 Maximum length = 128 * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#name RadiusServer#name} */ readonly name: string; /** * NAS ID. Maximum length = 128 * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#nas_id RadiusServer#nas_id} */ readonly nasId?: string; /** * Enable password encoding in RADIUS packets send to the RADIUS server. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#pass_encoding RadiusServer#pass_encoding} */ readonly passEncoding?: string; /** * Port number of radius server. Minimum value = 1 Maximum value = * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#port RadiusServer#port} */ readonly port?: number; /** * The attribute type of the password attribute in a RADIUS response.. Maximum value = * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#pwd_attribute_type RadiusServer#pwd_attribute_type} */ readonly pwdAttributeType?: number; /** * Vendor ID of the password in the RADIUS response. Used to extract the user password. Maximum value = * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#pwd_vendor_id RadiusServer#pwd_vendor_id} */ readonly pwdVendorId?: number; /** * Key of radius server. Minimum length = 4 Maximum length = 32 * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#radius_key RadiusServer#radius_key} */ readonly radiusKey: string; /** * Vendor ID for RADIUS group extraction. Maximum value = * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#vendor_id RadiusServer#vendor_id} */ readonly vendorId?: number; } /** * Represents a {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server netscalersdx_radius_server} */ export declare class RadiusServer extends cdktf.TerraformResource { static readonly tfResourceType = "netscalersdx_radius_server"; /** * Generates CDKTF code for importing a RadiusServer 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 RadiusServer to import * @param importFromId The id of the existing RadiusServer that should be imported. Refer to the {@link https://registry.terraform.io/providers/netscaler/netscalersdx/0.7.2/docs/resources/radius_server#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the RadiusServer 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/netscaler/netscalersdx/0.7.2/docs/resources/radius_server netscalersdx_radius_server} 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 RadiusServerConfig */ constructor(scope: Construct, id: string, config: RadiusServerConfig); private _accounting?; get accounting(): boolean | cdktf.IResolvable; set accounting(value: boolean | cdktf.IResolvable); resetAccounting(): void; get accountingInput(): any; private _addressType?; get addressType(): number; set addressType(value: number); resetAddressType(): void; get addressTypeInput(): number; private _attributeType?; get attributeType(): number; set attributeType(value: number); resetAttributeType(): void; get attributeTypeInput(): number; private _authTimeout?; get authTimeout(): number; set authTimeout(value: number); resetAuthTimeout(): void; get authTimeoutInput(): number; private _defaultAuthenticationGroup?; get defaultAuthenticationGroup(): string; set defaultAuthenticationGroup(value: string); resetDefaultAuthenticationGroup(): void; get defaultAuthenticationGroupInput(): string; private _enableNasIp?; get enableNasIp(): boolean | cdktf.IResolvable; set enableNasIp(value: boolean | cdktf.IResolvable); resetEnableNasIp(): void; get enableNasIpInput(): any; private _groupSeparator?; get groupSeparator(): string; set groupSeparator(value: string); resetGroupSeparator(): void; get groupSeparatorInput(): string; private _groupsPrefix?; get groupsPrefix(): string; set groupsPrefix(value: string); resetGroupsPrefix(): void; get groupsPrefixInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _ipAddress?; get ipAddress(): string; set ipAddress(value: string); get ipAddressInput(): string; private _ipAttributeType?; get ipAttributeType(): number; set ipAttributeType(value: number); resetIpAttributeType(): void; get ipAttributeTypeInput(): number; private _ipVendorId?; get ipVendorId(): number; set ipVendorId(value: number); resetIpVendorId(): void; get ipVendorIdInput(): number; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _nasId?; get nasId(): string; set nasId(value: string); resetNasId(): void; get nasIdInput(): string; private _passEncoding?; get passEncoding(): string; set passEncoding(value: string); resetPassEncoding(): void; get passEncodingInput(): string; private _port?; get port(): number; set port(value: number); resetPort(): void; get portInput(): number; private _pwdAttributeType?; get pwdAttributeType(): number; set pwdAttributeType(value: number); resetPwdAttributeType(): void; get pwdAttributeTypeInput(): number; private _pwdVendorId?; get pwdVendorId(): number; set pwdVendorId(value: number); resetPwdVendorId(): void; get pwdVendorIdInput(): number; private _radiusKey?; get radiusKey(): string; set radiusKey(value: string); get radiusKeyInput(): string; private _vendorId?; get vendorId(): number; set vendorId(value: number); resetVendorId(): void; get vendorIdInput(): number; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }