import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface EvpnEthernetSegmentConfig extends cdktf.TerraformMetaArguments { /** * A device name from the provider configuration. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/evpn_ethernet_segment#device EvpnEthernetSegment#device} */ readonly device?: string; /** * * - Range: `1`-`10` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/evpn_ethernet_segment#df_election_wait_time EvpnEthernetSegment#df_election_wait_time} */ readonly dfElectionWaitTime?: number; /** * Ethernet segment local discriminator value * - Range: `1`-`65535` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/evpn_ethernet_segment#es_value EvpnEthernetSegment#es_value} */ readonly esValue: number; /** * Ethernet Segment Identifier type * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/evpn_ethernet_segment#identifier_types EvpnEthernetSegment#identifier_types} */ readonly identifierTypes?: EvpnEthernetSegmentIdentifierTypes[] | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/evpn_ethernet_segment#redundancy_all_active EvpnEthernetSegment#redundancy_all_active} */ readonly redundancyAllActive?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/evpn_ethernet_segment#redundancy_single_active EvpnEthernetSegment#redundancy_single_active} */ readonly redundancySingleActive?: boolean | cdktf.IResolvable; } export interface EvpnEthernetSegmentIdentifierTypes { /** * H.H.H.H.H.H.H.H.H 9-octet ESI value in hex * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/evpn_ethernet_segment#hex_string EvpnEthernetSegment#hex_string} */ readonly hexString?: string; /** * System MAC address for generating the ESI value * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/evpn_ethernet_segment#system_mac EvpnEthernetSegment#system_mac} */ readonly systemMac?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/evpn_ethernet_segment#type EvpnEthernetSegment#type} */ readonly type: number; } export declare function evpnEthernetSegmentIdentifierTypesToTerraform(struct?: EvpnEthernetSegmentIdentifierTypes | cdktf.IResolvable): any; export declare function evpnEthernetSegmentIdentifierTypesToHclTerraform(struct?: EvpnEthernetSegmentIdentifierTypes | cdktf.IResolvable): any; export declare class EvpnEthernetSegmentIdentifierTypesOutputReference 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(): EvpnEthernetSegmentIdentifierTypes | cdktf.IResolvable | undefined; set internalValue(value: EvpnEthernetSegmentIdentifierTypes | cdktf.IResolvable | undefined); private _hexString?; get hexString(): string; set hexString(value: string); resetHexString(): void; get hexStringInput(): string; private _systemMac?; get systemMac(): string; set systemMac(value: string); resetSystemMac(): void; get systemMacInput(): string; private _type?; get type(): number; set type(value: number); get typeInput(): number; } export declare class EvpnEthernetSegmentIdentifierTypesList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: EvpnEthernetSegmentIdentifierTypes[] | 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): EvpnEthernetSegmentIdentifierTypesOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/evpn_ethernet_segment iosxe_evpn_ethernet_segment} */ export declare class EvpnEthernetSegment extends cdktf.TerraformResource { static readonly tfResourceType = "iosxe_evpn_ethernet_segment"; /** * Generates CDKTF code for importing a EvpnEthernetSegment 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 EvpnEthernetSegment to import * @param importFromId The id of the existing EvpnEthernetSegment that should be imported. Refer to the {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/evpn_ethernet_segment#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the EvpnEthernetSegment 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/evpn_ethernet_segment iosxe_evpn_ethernet_segment} 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 EvpnEthernetSegmentConfig */ constructor(scope: Construct, id: string, config: EvpnEthernetSegmentConfig); private _device?; get device(): string; set device(value: string); resetDevice(): void; get deviceInput(): string; private _dfElectionWaitTime?; get dfElectionWaitTime(): number; set dfElectionWaitTime(value: number); resetDfElectionWaitTime(): void; get dfElectionWaitTimeInput(): number; private _esValue?; get esValue(): number; set esValue(value: number); get esValueInput(): number; get id(): any; private _identifierTypes; get identifierTypes(): EvpnEthernetSegmentIdentifierTypesList; putIdentifierTypes(value: EvpnEthernetSegmentIdentifierTypes[] | cdktf.IResolvable): void; resetIdentifierTypes(): void; get identifierTypesInput(): any; private _redundancyAllActive?; get redundancyAllActive(): boolean | cdktf.IResolvable; set redundancyAllActive(value: boolean | cdktf.IResolvable); resetRedundancyAllActive(): void; get redundancyAllActiveInput(): any; private _redundancySingleActive?; get redundancySingleActive(): boolean | cdktf.IResolvable; set redundancySingleActive(value: boolean | cdktf.IResolvable); resetRedundancySingleActive(): void; get redundancySingleActiveInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }