import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface InterfaceNveConfig extends cdktf.TerraformMetaArguments { /** * 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/interface_nve#delete_mode InterfaceNve#delete_mode} */ readonly deleteMode?: string; /** * Interface specific description * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_nve#description InterfaceNve#description} */ readonly description?: 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/interface_nve#device InterfaceNve#device} */ readonly device?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_nve#host_reachability_protocol_bgp InterfaceNve#host_reachability_protocol_bgp} */ readonly hostReachabilityProtocolBgp?: boolean | cdktf.IResolvable; /** * * - Range: `1`-`4096` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_nve#name InterfaceNve#name} */ readonly name: number; /** * Shutdown the selected interface * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_nve#shutdown InterfaceNve#shutdown} */ readonly shutdown?: boolean | cdktf.IResolvable; /** * Loopback interface * - Range: `0`-`2147483647` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_nve#source_interface_loopback InterfaceNve#source_interface_loopback} */ readonly sourceInterfaceLoopback?: number; /** * Configure VNI information * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_nve#vni_vrfs InterfaceNve#vni_vrfs} */ readonly vniVrfs?: InterfaceNveVniVrfs[] | cdktf.IResolvable; /** * Configure VNI information * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_nve#vnis InterfaceNve#vnis} */ readonly vnis?: InterfaceNveVnis[] | cdktf.IResolvable; } export interface InterfaceNveVniVrfs { /** * VNI range or instance between 4096-16777215, example: 6010-6030 or 7115 * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_nve#vni_range InterfaceNve#vni_range} */ readonly vniRange: string; /** * Specify a particular VRF * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_nve#vrf InterfaceNve#vrf} */ readonly vrf?: string; } export declare function interfaceNveVniVrfsToTerraform(struct?: InterfaceNveVniVrfs | cdktf.IResolvable): any; export declare function interfaceNveVniVrfsToHclTerraform(struct?: InterfaceNveVniVrfs | cdktf.IResolvable): any; export declare class InterfaceNveVniVrfsOutputReference 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(): InterfaceNveVniVrfs | cdktf.IResolvable | undefined; set internalValue(value: InterfaceNveVniVrfs | cdktf.IResolvable | undefined); private _vniRange?; get vniRange(): string; set vniRange(value: string); get vniRangeInput(): string; private _vrf?; get vrf(): string; set vrf(value: string); resetVrf(): void; get vrfInput(): string; } export declare class InterfaceNveVniVrfsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: InterfaceNveVniVrfs[] | 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): InterfaceNveVniVrfsOutputReference; } export interface InterfaceNveVnis { /** * Ingress Replication control-plane (BGP) signaling * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_nve#ingress_replication InterfaceNve#ingress_replication} */ readonly ingressReplication?: boolean | cdktf.IResolvable; /** * Starting Multicast Group IPv4 Address * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_nve#ipv4_multicast_group InterfaceNve#ipv4_multicast_group} */ readonly ipv4MulticastGroup?: string; /** * Enable vxlan centralized gateway forwarding for routed traffic * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_nve#local_routing InterfaceNve#local_routing} */ readonly localRouting?: boolean | cdktf.IResolvable; /** * VNI range or instance between 4096-16777215, example: 6010-6030 or 7115 * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_nve#vni_range InterfaceNve#vni_range} */ readonly vniRange: string; } export declare function interfaceNveVnisToTerraform(struct?: InterfaceNveVnis | cdktf.IResolvable): any; export declare function interfaceNveVnisToHclTerraform(struct?: InterfaceNveVnis | cdktf.IResolvable): any; export declare class InterfaceNveVnisOutputReference 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(): InterfaceNveVnis | cdktf.IResolvable | undefined; set internalValue(value: InterfaceNveVnis | cdktf.IResolvable | undefined); private _ingressReplication?; get ingressReplication(): boolean | cdktf.IResolvable; set ingressReplication(value: boolean | cdktf.IResolvable); resetIngressReplication(): void; get ingressReplicationInput(): any; private _ipv4MulticastGroup?; get ipv4MulticastGroup(): string; set ipv4MulticastGroup(value: string); resetIpv4MulticastGroup(): void; get ipv4MulticastGroupInput(): string; private _localRouting?; get localRouting(): boolean | cdktf.IResolvable; set localRouting(value: boolean | cdktf.IResolvable); resetLocalRouting(): void; get localRoutingInput(): any; private _vniRange?; get vniRange(): string; set vniRange(value: string); get vniRangeInput(): string; } export declare class InterfaceNveVnisList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: InterfaceNveVnis[] | 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): InterfaceNveVnisOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_nve iosxe_interface_nve} */ export declare class InterfaceNve extends cdktf.TerraformResource { static readonly tfResourceType = "iosxe_interface_nve"; /** * Generates CDKTF code for importing a InterfaceNve 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 InterfaceNve to import * @param importFromId The id of the existing InterfaceNve that should be imported. Refer to the {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_nve#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the InterfaceNve 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/interface_nve iosxe_interface_nve} 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 InterfaceNveConfig */ constructor(scope: Construct, id: string, config: InterfaceNveConfig); private _deleteMode?; get deleteMode(): string; set deleteMode(value: string); resetDeleteMode(): void; get deleteModeInput(): string; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _device?; get device(): string; set device(value: string); resetDevice(): void; get deviceInput(): string; private _hostReachabilityProtocolBgp?; get hostReachabilityProtocolBgp(): boolean | cdktf.IResolvable; set hostReachabilityProtocolBgp(value: boolean | cdktf.IResolvable); resetHostReachabilityProtocolBgp(): void; get hostReachabilityProtocolBgpInput(): any; get id(): any; private _name?; get name(): number; set name(value: number); get nameInput(): number; private _shutdown?; get shutdown(): boolean | cdktf.IResolvable; set shutdown(value: boolean | cdktf.IResolvable); resetShutdown(): void; get shutdownInput(): any; private _sourceInterfaceLoopback?; get sourceInterfaceLoopback(): number; set sourceInterfaceLoopback(value: number); resetSourceInterfaceLoopback(): void; get sourceInterfaceLoopbackInput(): number; private _vniVrfs; get vniVrfs(): InterfaceNveVniVrfsList; putVniVrfs(value: InterfaceNveVniVrfs[] | cdktf.IResolvable): void; resetVniVrfs(): void; get vniVrfsInput(): any; private _vnis; get vnis(): InterfaceNveVnisList; putVnis(value: InterfaceNveVnis[] | cdktf.IResolvable): void; resetVnis(): void; get vnisInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }