import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface InterfaceOspfConfig extends cdktf.TerraformMetaArguments { /** * Route cost of this interface * - Range: `1`-`65535` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#cost InterfaceOspf#cost} */ readonly cost?: number; /** * Interval after which a neighbor is declared dead * - Range: `1`-`65535` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#dead_interval InterfaceOspf#dead_interval} */ readonly deadInterval?: number; /** * 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_ospf#delete_mode InterfaceOspf#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_ospf#device InterfaceOspf#device} */ readonly device?: string; /** * Time between HELLO packets * - Range: `1`-`65535` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#hello_interval InterfaceOspf#hello_interval} */ readonly helloInterval?: number; /** * Message digest authentication password (key) * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#message_digest_keys InterfaceOspf#message_digest_keys} */ readonly messageDigestKeys?: InterfaceOspfMessageDigestKeys[] | cdktf.IResolvable; /** * Ignores the MTU in DBD packets * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#mtu_ignore InterfaceOspf#mtu_ignore} */ readonly mtuIgnore?: boolean | cdktf.IResolvable; /** * Set the OSPF multi-area ID * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#multi_area_ids InterfaceOspf#multi_area_ids} */ readonly multiAreaIds?: InterfaceOspfMultiAreaIds[] | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#name InterfaceOspf#name} */ readonly name: string; /** * Specify OSPF broadcast multi-access network * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#network_type_broadcast InterfaceOspf#network_type_broadcast} */ readonly networkTypeBroadcast?: boolean | cdktf.IResolvable; /** * Specify OSPF NBMA network * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#network_type_non_broadcast InterfaceOspf#network_type_non_broadcast} */ readonly networkTypeNonBroadcast?: boolean | cdktf.IResolvable; /** * Specify OSPF point-to-multipoint network * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#network_type_point_to_multipoint InterfaceOspf#network_type_point_to_multipoint} */ readonly networkTypePointToMultipoint?: boolean | cdktf.IResolvable; /** * Specify OSPF point-to-point network * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#network_type_point_to_point InterfaceOspf#network_type_point_to_point} */ readonly networkTypePointToPoint?: boolean | cdktf.IResolvable; /** * Router priority * - Range: `0`-`255` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#priority InterfaceOspf#priority} */ readonly priority?: number; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#process_ids InterfaceOspf#process_ids} */ readonly processIds?: InterfaceOspfProcessIds[] | cdktf.IResolvable; /** * IP hops * - Range: `1`-`254` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#ttl_security_hops InterfaceOspf#ttl_security_hops} */ readonly ttlSecurityHops?: number; /** * 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_ospf#type InterfaceOspf#type} */ readonly type: string; } export interface InterfaceOspfMessageDigestKeys { /** * Key ID * - Range: `1`-`255` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#id InterfaceOspf#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: number; /** * The OSPF password (key) (only the first 16 characters are used) * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#md5_auth_key InterfaceOspf#md5_auth_key} */ readonly md5AuthKey?: string; /** * Encryption type (0 for not yet encrypted, 7 for proprietary) * - Range: `0`-`7` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#md5_auth_type InterfaceOspf#md5_auth_type} */ readonly md5AuthType?: number; } export declare function interfaceOspfMessageDigestKeysToTerraform(struct?: InterfaceOspfMessageDigestKeys | cdktf.IResolvable): any; export declare function interfaceOspfMessageDigestKeysToHclTerraform(struct?: InterfaceOspfMessageDigestKeys | cdktf.IResolvable): any; export declare class InterfaceOspfMessageDigestKeysOutputReference 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(): InterfaceOspfMessageDigestKeys | cdktf.IResolvable | undefined; set internalValue(value: InterfaceOspfMessageDigestKeys | cdktf.IResolvable | undefined); private _id?; get id(): number; set id(value: number); get idInput(): number; private _md5AuthKey?; get md5AuthKey(): string; set md5AuthKey(value: string); resetMd5AuthKey(): void; get md5AuthKeyInput(): string; private _md5AuthType?; get md5AuthType(): number; set md5AuthType(value: number); resetMd5AuthType(): void; get md5AuthTypeInput(): number; } export declare class InterfaceOspfMessageDigestKeysList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: InterfaceOspfMessageDigestKeys[] | 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): InterfaceOspfMessageDigestKeysOutputReference; } export interface InterfaceOspfMultiAreaIds { /** * OSPF multi-area ID * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#area_id InterfaceOspf#area_id} */ readonly areaId: string; } export declare function interfaceOspfMultiAreaIdsToTerraform(struct?: InterfaceOspfMultiAreaIds | cdktf.IResolvable): any; export declare function interfaceOspfMultiAreaIdsToHclTerraform(struct?: InterfaceOspfMultiAreaIds | cdktf.IResolvable): any; export declare class InterfaceOspfMultiAreaIdsOutputReference 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(): InterfaceOspfMultiAreaIds | cdktf.IResolvable | undefined; set internalValue(value: InterfaceOspfMultiAreaIds | cdktf.IResolvable | undefined); private _areaId?; get areaId(): string; set areaId(value: string); get areaIdInput(): string; } export declare class InterfaceOspfMultiAreaIdsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: InterfaceOspfMultiAreaIds[] | 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): InterfaceOspfMultiAreaIdsOutputReference; } export interface InterfaceOspfProcessIdsAreas { /** * Set the OSPF area ID * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#area_id InterfaceOspf#area_id} */ readonly areaId: string; } export declare function interfaceOspfProcessIdsAreasToTerraform(struct?: InterfaceOspfProcessIdsAreas | cdktf.IResolvable): any; export declare function interfaceOspfProcessIdsAreasToHclTerraform(struct?: InterfaceOspfProcessIdsAreas | cdktf.IResolvable): any; export declare class InterfaceOspfProcessIdsAreasOutputReference 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(): InterfaceOspfProcessIdsAreas | cdktf.IResolvable | undefined; set internalValue(value: InterfaceOspfProcessIdsAreas | cdktf.IResolvable | undefined); private _areaId?; get areaId(): string; set areaId(value: string); get areaIdInput(): string; } export declare class InterfaceOspfProcessIdsAreasList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: InterfaceOspfProcessIdsAreas[] | 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): InterfaceOspfProcessIdsAreasOutputReference; } export interface InterfaceOspfProcessIds { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#areas InterfaceOspf#areas} */ readonly areas?: InterfaceOspfProcessIdsAreas[] | cdktf.IResolvable; /** * Process ID * - Range: `1`-`65535` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#id InterfaceOspf#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: number; } export declare function interfaceOspfProcessIdsToTerraform(struct?: InterfaceOspfProcessIds | cdktf.IResolvable): any; export declare function interfaceOspfProcessIdsToHclTerraform(struct?: InterfaceOspfProcessIds | cdktf.IResolvable): any; export declare class InterfaceOspfProcessIdsOutputReference 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(): InterfaceOspfProcessIds | cdktf.IResolvable | undefined; set internalValue(value: InterfaceOspfProcessIds | cdktf.IResolvable | undefined); private _areas; get areas(): InterfaceOspfProcessIdsAreasList; putAreas(value: InterfaceOspfProcessIdsAreas[] | cdktf.IResolvable): void; resetAreas(): void; get areasInput(): any; private _id?; get id(): number; set id(value: number); get idInput(): number; } export declare class InterfaceOspfProcessIdsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: InterfaceOspfProcessIds[] | 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): InterfaceOspfProcessIdsOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf iosxe_interface_ospf} */ export declare class InterfaceOspf extends cdktf.TerraformResource { static readonly tfResourceType = "iosxe_interface_ospf"; /** * Generates CDKTF code for importing a InterfaceOspf 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 InterfaceOspf to import * @param importFromId The id of the existing InterfaceOspf that should be imported. Refer to the {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/interface_ospf#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the InterfaceOspf 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_ospf iosxe_interface_ospf} 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 InterfaceOspfConfig */ constructor(scope: Construct, id: string, config: InterfaceOspfConfig); private _cost?; get cost(): number; set cost(value: number); resetCost(): void; get costInput(): number; private _deadInterval?; get deadInterval(): number; set deadInterval(value: number); resetDeadInterval(): void; get deadIntervalInput(): number; 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; private _helloInterval?; get helloInterval(): number; set helloInterval(value: number); resetHelloInterval(): void; get helloIntervalInput(): number; get id(): any; private _messageDigestKeys; get messageDigestKeys(): InterfaceOspfMessageDigestKeysList; putMessageDigestKeys(value: InterfaceOspfMessageDigestKeys[] | cdktf.IResolvable): void; resetMessageDigestKeys(): void; get messageDigestKeysInput(): any; private _mtuIgnore?; get mtuIgnore(): boolean | cdktf.IResolvable; set mtuIgnore(value: boolean | cdktf.IResolvable); resetMtuIgnore(): void; get mtuIgnoreInput(): any; private _multiAreaIds; get multiAreaIds(): InterfaceOspfMultiAreaIdsList; putMultiAreaIds(value: InterfaceOspfMultiAreaIds[] | cdktf.IResolvable): void; resetMultiAreaIds(): void; get multiAreaIdsInput(): any; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _networkTypeBroadcast?; get networkTypeBroadcast(): boolean | cdktf.IResolvable; set networkTypeBroadcast(value: boolean | cdktf.IResolvable); resetNetworkTypeBroadcast(): void; get networkTypeBroadcastInput(): any; private _networkTypeNonBroadcast?; get networkTypeNonBroadcast(): boolean | cdktf.IResolvable; set networkTypeNonBroadcast(value: boolean | cdktf.IResolvable); resetNetworkTypeNonBroadcast(): void; get networkTypeNonBroadcastInput(): any; private _networkTypePointToMultipoint?; get networkTypePointToMultipoint(): boolean | cdktf.IResolvable; set networkTypePointToMultipoint(value: boolean | cdktf.IResolvable); resetNetworkTypePointToMultipoint(): void; get networkTypePointToMultipointInput(): any; private _networkTypePointToPoint?; get networkTypePointToPoint(): boolean | cdktf.IResolvable; set networkTypePointToPoint(value: boolean | cdktf.IResolvable); resetNetworkTypePointToPoint(): void; get networkTypePointToPointInput(): any; private _priority?; get priority(): number; set priority(value: number); resetPriority(): void; get priorityInput(): number; private _processIds; get processIds(): InterfaceOspfProcessIdsList; putProcessIds(value: InterfaceOspfProcessIds[] | cdktf.IResolvable): void; resetProcessIds(): void; get processIdsInput(): any; private _ttlSecurityHops?; get ttlSecurityHops(): number; set ttlSecurityHops(value: number); resetTtlSecurityHops(): void; get ttlSecurityHopsInput(): number; private _type?; get type(): string; set type(value: string); get typeInput(): string; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }