import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface InterfaceIsisConfig 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_isis#delete_mode InterfaceIsis#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/interface_isis#device InterfaceIsis#device} */ readonly device?: string; /** * Configure IS-IS metric for interface * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_isis#ipv4_metric_levels InterfaceIsis#ipv4_metric_levels} */ readonly ipv4MetricLevels?: InterfaceIsisIpv4MetricLevels[] | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_isis#name InterfaceIsis#name} */ readonly name: string; /** * Set ISIS network type to point-to-point * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_isis#network_point_to_point InterfaceIsis#network_point_to_point} */ readonly networkPointToPoint?: boolean | cdktf.IResolvable; /** * Interface type * - Choices: `GigabitEthernet`, `TwoGigabitEthernet`, `FiveGigabitEthernet`, `TenGigabitEthernet`, `TwentyFiveGigE`, `FortyGigabitEthernet`, `FiftyGigabitEthernet`, `HundredGigE`, `TwoHundredGigE`, `FourHundredGigE`, `Loopback`, `Vlan`, `Port-channel`, `Port-channel-subinterface/Port-channel`, `Tunnel` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_isis#type InterfaceIsis#type} */ readonly type: string; } export interface InterfaceIsisIpv4MetricLevels { /** * IS-IS level (level-1 or level-2) * - Choices: `level-1`, `level-2` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_isis#level InterfaceIsis#level} */ readonly level: string; /** * Metric value (1-16777214) * - Range: `1`-`16777214` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_isis#value InterfaceIsis#value} */ readonly value: number; } export declare function interfaceIsisIpv4MetricLevelsToTerraform(struct?: InterfaceIsisIpv4MetricLevels | cdktf.IResolvable): any; export declare function interfaceIsisIpv4MetricLevelsToHclTerraform(struct?: InterfaceIsisIpv4MetricLevels | cdktf.IResolvable): any; export declare class InterfaceIsisIpv4MetricLevelsOutputReference 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(): InterfaceIsisIpv4MetricLevels | cdktf.IResolvable | undefined; set internalValue(value: InterfaceIsisIpv4MetricLevels | cdktf.IResolvable | undefined); private _level?; get level(): string; set level(value: string); get levelInput(): string; private _value?; get value(): number; set value(value: number); get valueInput(): number; } export declare class InterfaceIsisIpv4MetricLevelsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: InterfaceIsisIpv4MetricLevels[] | 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): InterfaceIsisIpv4MetricLevelsOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_isis iosxe_interface_isis} */ export declare class InterfaceIsis extends cdktf.TerraformResource { static readonly tfResourceType = "iosxe_interface_isis"; /** * Generates CDKTF code for importing a InterfaceIsis 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 InterfaceIsis to import * @param importFromId The id of the existing InterfaceIsis that should be imported. Refer to the {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_isis#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the InterfaceIsis 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_isis iosxe_interface_isis} 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 InterfaceIsisConfig */ constructor(scope: Construct, id: string, config: InterfaceIsisConfig); 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 _ipv4MetricLevels; get ipv4MetricLevels(): InterfaceIsisIpv4MetricLevelsList; putIpv4MetricLevels(value: InterfaceIsisIpv4MetricLevels[] | cdktf.IResolvable): void; resetIpv4MetricLevels(): void; get ipv4MetricLevelsInput(): any; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _networkPointToPoint?; get networkPointToPoint(): boolean | cdktf.IResolvable; set networkPointToPoint(value: boolean | cdktf.IResolvable); resetNetworkPointToPoint(): void; get networkPointToPointInput(): any; private _type?; get type(): string; set type(value: string); get typeInput(): string; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }