import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface BgpPeerSessionTemplateConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/bgp_peer_session_template#asn BgpPeerSessionTemplate#asn} */ readonly asn: 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/bgp_peer_session_template#delete_mode BgpPeerSessionTemplate#delete_mode} */ readonly deleteMode?: string; /** * Neighbor specific description * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/bgp_peer_session_template#description BgpPeerSessionTemplate#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/bgp_peer_session_template#device BgpPeerSessionTemplate#device} */ readonly device?: string; /** * one-hop away EBGP peer using loopback address * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/bgp_peer_session_template#disable_connected_check BgpPeerSessionTemplate#disable_connected_check} */ readonly disableConnectedCheck?: boolean | cdktf.IResolvable; /** * Allow EBGP neighbors not on directly connected networks. For single-hop ebgp peers, delete ebgp-multihop directly. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/bgp_peer_session_template#ebgp_multihop BgpPeerSessionTemplate#ebgp_multihop} */ readonly ebgpMultihop?: boolean | cdktf.IResolvable; /** * * - Range: `2`-`255` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/bgp_peer_session_template#ebgp_multihop_max_hop BgpPeerSessionTemplate#ebgp_multihop_max_hop} */ readonly ebgpMultihopMaxHop?: number; /** * Inherit a peer-session template * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/bgp_peer_session_template#inherit_peer_session BgpPeerSessionTemplate#inherit_peer_session} */ readonly inheritPeerSession?: string; /** * Specify a BGP neighbor remote-as * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/bgp_peer_session_template#remote_as BgpPeerSessionTemplate#remote_as} */ readonly remoteAs?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/bgp_peer_session_template#template_name BgpPeerSessionTemplate#template_name} */ readonly templateName: string; /** * Loopback interface * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/bgp_peer_session_template#update_source_interface_loopback BgpPeerSessionTemplate#update_source_interface_loopback} */ readonly updateSourceInterfaceLoopback?: number; } /** * Represents a {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/bgp_peer_session_template iosxe_bgp_peer_session_template} */ export declare class BgpPeerSessionTemplate extends cdktf.TerraformResource { static readonly tfResourceType = "iosxe_bgp_peer_session_template"; /** * Generates CDKTF code for importing a BgpPeerSessionTemplate 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 BgpPeerSessionTemplate to import * @param importFromId The id of the existing BgpPeerSessionTemplate that should be imported. Refer to the {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/bgp_peer_session_template#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the BgpPeerSessionTemplate 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/bgp_peer_session_template iosxe_bgp_peer_session_template} 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 BgpPeerSessionTemplateConfig */ constructor(scope: Construct, id: string, config: BgpPeerSessionTemplateConfig); private _asn?; get asn(): string; set asn(value: string); get asnInput(): string; 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 _disableConnectedCheck?; get disableConnectedCheck(): boolean | cdktf.IResolvable; set disableConnectedCheck(value: boolean | cdktf.IResolvable); resetDisableConnectedCheck(): void; get disableConnectedCheckInput(): any; private _ebgpMultihop?; get ebgpMultihop(): boolean | cdktf.IResolvable; set ebgpMultihop(value: boolean | cdktf.IResolvable); resetEbgpMultihop(): void; get ebgpMultihopInput(): any; private _ebgpMultihopMaxHop?; get ebgpMultihopMaxHop(): number; set ebgpMultihopMaxHop(value: number); resetEbgpMultihopMaxHop(): void; get ebgpMultihopMaxHopInput(): number; get id(): any; private _inheritPeerSession?; get inheritPeerSession(): string; set inheritPeerSession(value: string); resetInheritPeerSession(): void; get inheritPeerSessionInput(): string; private _remoteAs?; get remoteAs(): string; set remoteAs(value: string); resetRemoteAs(): void; get remoteAsInput(): string; private _templateName?; get templateName(): string; set templateName(value: string); get templateNameInput(): string; private _updateSourceInterfaceLoopback?; get updateSourceInterfaceLoopback(): number; set updateSourceInterfaceLoopback(value: number); resetUpdateSourceInterfaceLoopback(): void; get updateSourceInterfaceLoopbackInput(): number; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }