import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface CtsConfig extends cdktf.TerraformMetaArguments { /** * Local authorization list to use for CTS * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#authorization_list Cts#authorization_list} */ readonly authorizationList?: string; /** * Configure behavior when deleting/destroying the resource. Either delete the entire object (YANG container) being managed, or only delete the individual resource attributes configured explicitly and leave everything else as-is. Default value is `all`. * - Choices: `all`, `attributes` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#delete_mode Cts#delete_mode} */ readonly deleteMode?: string; /** * A device name from the provider configuration. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#device Cts#device} */ readonly device?: string; /** * Enable Role-based Access Control enforcement * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#role_based_enforcement Cts#role_based_enforcement} */ readonly roleBasedEnforcement?: boolean | cdktf.IResolvable; /** * Configure sgacl logging interval * - Range: `5`-`86400` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#role_based_enforcement_logging_interval Cts#role_based_enforcement_logging_interval} */ readonly roleBasedEnforcementLoggingInterval?: number; /** * VLANs on which Role-based ACLs are enforced * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#role_based_enforcement_vlan_lists Cts#role_based_enforcement_vlan_lists} */ readonly roleBasedEnforcementVlanLists?: number[]; /** * Role-based Access-list name * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#role_based_permissions_default_acl_name Cts#role_based_permissions_default_acl_name} */ readonly roleBasedPermissionsDefaultAclName?: string[]; /** * Local device security group * - Range: `2`-`65519` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#sgt Cts#sgt} */ readonly sgt?: number; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#sxp_connection_peers_ipv4 Cts#sxp_connection_peers_ipv4} */ readonly sxpConnectionPeersIpv4?: CtsSxpConnectionPeersIpv4[] | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#sxp_connection_peers_ipv4_vrf Cts#sxp_connection_peers_ipv4_vrf} */ readonly sxpConnectionPeersIpv4Vrf?: CtsSxpConnectionPeersIpv4Vrf[] | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#sxp_default_password Cts#sxp_default_password} */ readonly sxpDefaultPassword?: string; /** * * - Choices: `0`, `6`, `7` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#sxp_default_password_type Cts#sxp_default_password_type} */ readonly sxpDefaultPasswordType?: string; /** * Enable CTS SXP support * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#sxp_enable Cts#sxp_enable} */ readonly sxpEnable?: boolean | cdktf.IResolvable; /** * Enter maximum allowed Hold Time in seconds * - Range: `1`-`65534` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#sxp_listener_hold_max_time Cts#sxp_listener_hold_max_time} */ readonly sxpListenerHoldMaxTime?: number; /** * Enter minimum allowed Hold Time in seconds * - Range: `1`-`65534` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#sxp_listener_hold_min_time Cts#sxp_listener_hold_min_time} */ readonly sxpListenerHoldMinTime?: number; /** * Enter retry period value for sxp connection in seconds * - Range: `0`-`64000` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#sxp_retry_period Cts#sxp_retry_period} */ readonly sxpRetryPeriod?: number; /** * Enter speaker hold-time value in seconds * - Range: `1`-`65534` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#sxp_speaker_hold_time Cts#sxp_speaker_hold_time} */ readonly sxpSpeakerHoldTime?: number; } export interface CtsSxpConnectionPeersIpv4 { /** * Mode of connection * - Choices: `local`, `peer` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#connection_mode Cts#connection_mode} */ readonly connectionMode?: string; /** * Minimum hold time period * - Range: `0`-`65535` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#hold_time Cts#hold_time} */ readonly holdTime?: number; /** * Enter SXP Peer IP address (IPv4) * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#ip Cts#ip} */ readonly ip: string; /** * Maximum hold time period * - Range: `0`-`65535` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#max_time Cts#max_time} */ readonly maxTime?: number; /** * Role of a device speaker/listener/both * - Choices: `both`, `listener`, `speaker` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#option Cts#option} */ readonly option?: string; /** * Password type * - Choices: `default`, `key-chain`, `none` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#password Cts#password} */ readonly password?: string; /** * Enter SXP Source IP address (IPv4) * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#source_ip Cts#source_ip} */ readonly sourceIp?: string; } export declare function ctsSxpConnectionPeersIpv4ToTerraform(struct?: CtsSxpConnectionPeersIpv4 | cdktf.IResolvable): any; export declare function ctsSxpConnectionPeersIpv4ToHclTerraform(struct?: CtsSxpConnectionPeersIpv4 | cdktf.IResolvable): any; export declare class CtsSxpConnectionPeersIpv4OutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): CtsSxpConnectionPeersIpv4 | cdktf.IResolvable | undefined; set internalValue(value: CtsSxpConnectionPeersIpv4 | cdktf.IResolvable | undefined); private _connectionMode?; get connectionMode(): string; set connectionMode(value: string); resetConnectionMode(): void; get connectionModeInput(): string; private _holdTime?; get holdTime(): number; set holdTime(value: number); resetHoldTime(): void; get holdTimeInput(): number; private _ip?; get ip(): string; set ip(value: string); get ipInput(): string; private _maxTime?; get maxTime(): number; set maxTime(value: number); resetMaxTime(): void; get maxTimeInput(): number; private _option?; get option(): string; set option(value: string); resetOption(): void; get optionInput(): string; private _password?; get password(): string; set password(value: string); resetPassword(): void; get passwordInput(): string; private _sourceIp?; get sourceIp(): string; set sourceIp(value: string); resetSourceIp(): void; get sourceIpInput(): string; } export declare class CtsSxpConnectionPeersIpv4List extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: CtsSxpConnectionPeersIpv4[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): CtsSxpConnectionPeersIpv4OutputReference; } export interface CtsSxpConnectionPeersIpv4Vrf { /** * Mode of connection * - Choices: `local`, `peer` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#connection_mode Cts#connection_mode} */ readonly connectionMode?: string; /** * Minimum hold time period * - Range: `0`-`65535` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#hold_time Cts#hold_time} */ readonly holdTime?: number; /** * Enter SXP Peer IP address (IPv4) * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#ip Cts#ip} */ readonly ip: string; /** * Maximum hold time period * - Range: `0`-`65535` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#max_time Cts#max_time} */ readonly maxTime?: number; /** * Role of a device speaker/listener/both * - Choices: `both`, `listener`, `speaker` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#option Cts#option} */ readonly option?: string; /** * Password type * - Choices: `default`, `key-chain`, `none` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#password Cts#password} */ readonly password?: string; /** * Enter SXP Source IP address (IPv4) * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#source_ip Cts#source_ip} */ readonly sourceIp?: string; /** * VRF details * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#vrf Cts#vrf} */ readonly vrf: string; } export declare function ctsSxpConnectionPeersIpv4VrfToTerraform(struct?: CtsSxpConnectionPeersIpv4Vrf | cdktf.IResolvable): any; export declare function ctsSxpConnectionPeersIpv4VrfToHclTerraform(struct?: CtsSxpConnectionPeersIpv4Vrf | cdktf.IResolvable): any; export declare class CtsSxpConnectionPeersIpv4VrfOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): CtsSxpConnectionPeersIpv4Vrf | cdktf.IResolvable | undefined; set internalValue(value: CtsSxpConnectionPeersIpv4Vrf | cdktf.IResolvable | undefined); private _connectionMode?; get connectionMode(): string; set connectionMode(value: string); resetConnectionMode(): void; get connectionModeInput(): string; private _holdTime?; get holdTime(): number; set holdTime(value: number); resetHoldTime(): void; get holdTimeInput(): number; private _ip?; get ip(): string; set ip(value: string); get ipInput(): string; private _maxTime?; get maxTime(): number; set maxTime(value: number); resetMaxTime(): void; get maxTimeInput(): number; private _option?; get option(): string; set option(value: string); resetOption(): void; get optionInput(): string; private _password?; get password(): string; set password(value: string); resetPassword(): void; get passwordInput(): string; private _sourceIp?; get sourceIp(): string; set sourceIp(value: string); resetSourceIp(): void; get sourceIpInput(): string; private _vrf?; get vrf(): string; set vrf(value: string); get vrfInput(): string; } export declare class CtsSxpConnectionPeersIpv4VrfList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: CtsSxpConnectionPeersIpv4Vrf[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): CtsSxpConnectionPeersIpv4VrfOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts iosxe_cts} */ export declare class Cts extends cdktf.TerraformResource { static readonly tfResourceType = "iosxe_cts"; /** * Generates CDKTF code for importing a Cts 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 Cts to import * @param importFromId The id of the existing Cts that should be imported. Refer to the {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/cts#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the Cts 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/ciscodevnet/iosxe/0.15.0/docs/resources/cts iosxe_cts} 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 CtsConfig = {} */ constructor(scope: Construct, id: string, config?: CtsConfig); private _authorizationList?; get authorizationList(): string; set authorizationList(value: string); resetAuthorizationList(): void; get authorizationListInput(): string; private _deleteMode?; get deleteMode(): string; set deleteMode(value: string); resetDeleteMode(): void; get deleteModeInput(): string; private _device?; get device(): string; set device(value: string); resetDevice(): void; get deviceInput(): string; get id(): any; private _roleBasedEnforcement?; get roleBasedEnforcement(): boolean | cdktf.IResolvable; set roleBasedEnforcement(value: boolean | cdktf.IResolvable); resetRoleBasedEnforcement(): void; get roleBasedEnforcementInput(): any; private _roleBasedEnforcementLoggingInterval?; get roleBasedEnforcementLoggingInterval(): number; set roleBasedEnforcementLoggingInterval(value: number); resetRoleBasedEnforcementLoggingInterval(): void; get roleBasedEnforcementLoggingIntervalInput(): number; private _roleBasedEnforcementVlanLists?; get roleBasedEnforcementVlanLists(): number[]; set roleBasedEnforcementVlanLists(value: number[]); resetRoleBasedEnforcementVlanLists(): void; get roleBasedEnforcementVlanListsInput(): number[]; private _roleBasedPermissionsDefaultAclName?; get roleBasedPermissionsDefaultAclName(): string[]; set roleBasedPermissionsDefaultAclName(value: string[]); resetRoleBasedPermissionsDefaultAclName(): void; get roleBasedPermissionsDefaultAclNameInput(): string[]; private _sgt?; get sgt(): number; set sgt(value: number); resetSgt(): void; get sgtInput(): number; private _sxpConnectionPeersIpv4; get sxpConnectionPeersIpv4(): CtsSxpConnectionPeersIpv4List; putSxpConnectionPeersIpv4(value: CtsSxpConnectionPeersIpv4[] | cdktf.IResolvable): void; resetSxpConnectionPeersIpv4(): void; get sxpConnectionPeersIpv4Input(): any; private _sxpConnectionPeersIpv4Vrf; get sxpConnectionPeersIpv4Vrf(): CtsSxpConnectionPeersIpv4VrfList; putSxpConnectionPeersIpv4Vrf(value: CtsSxpConnectionPeersIpv4Vrf[] | cdktf.IResolvable): void; resetSxpConnectionPeersIpv4Vrf(): void; get sxpConnectionPeersIpv4VrfInput(): any; private _sxpDefaultPassword?; get sxpDefaultPassword(): string; set sxpDefaultPassword(value: string); resetSxpDefaultPassword(): void; get sxpDefaultPasswordInput(): string; private _sxpDefaultPasswordType?; get sxpDefaultPasswordType(): string; set sxpDefaultPasswordType(value: string); resetSxpDefaultPasswordType(): void; get sxpDefaultPasswordTypeInput(): string; private _sxpEnable?; get sxpEnable(): boolean | cdktf.IResolvable; set sxpEnable(value: boolean | cdktf.IResolvable); resetSxpEnable(): void; get sxpEnableInput(): any; private _sxpListenerHoldMaxTime?; get sxpListenerHoldMaxTime(): number; set sxpListenerHoldMaxTime(value: number); resetSxpListenerHoldMaxTime(): void; get sxpListenerHoldMaxTimeInput(): number; private _sxpListenerHoldMinTime?; get sxpListenerHoldMinTime(): number; set sxpListenerHoldMinTime(value: number); resetSxpListenerHoldMinTime(): void; get sxpListenerHoldMinTimeInput(): number; private _sxpRetryPeriod?; get sxpRetryPeriod(): number; set sxpRetryPeriod(value: number); resetSxpRetryPeriod(): void; get sxpRetryPeriodInput(): number; private _sxpSpeakerHoldTime?; get sxpSpeakerHoldTime(): number; set sxpSpeakerHoldTime(value: number); resetSxpSpeakerHoldTime(): void; get sxpSpeakerHoldTimeInput(): number; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }