import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface MplsConfig 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/mpls#delete_mode Mpls#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/mpls#device Mpls#device} */ readonly device?: string; /** * Per CE label * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mpls#label_mode_all_vrfs_all_afs_per_ce Mpls#label_mode_all_vrfs_all_afs_per_ce} */ readonly labelModeAllVrfsAllAfsPerCe?: boolean | cdktf.IResolvable; /** * Per prefix label (default) * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mpls#label_mode_all_vrfs_all_afs_per_prefix Mpls#label_mode_all_vrfs_all_afs_per_prefix} */ readonly labelModeAllVrfsAllAfsPerPrefix?: boolean | cdktf.IResolvable; /** * Per VRF label for entire VRF * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mpls#label_mode_all_vrfs_all_afs_per_vrf Mpls#label_mode_all_vrfs_all_afs_per_vrf} */ readonly labelModeAllVrfsAllAfsPerVrf?: boolean | cdktf.IResolvable; /** * Per VRF label for connected and BGP aggregates in VRF * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mpls#label_mode_all_vrfs_all_afs_vrf_conn_aggr Mpls#label_mode_all_vrfs_all_afs_vrf_conn_aggr} */ readonly labelModeAllVrfsAllAfsVrfConnAggr?: boolean | cdktf.IResolvable; /** * Per CE label * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mpls#label_mode_all_vrfs_bgp_vpnv4_per_ce Mpls#label_mode_all_vrfs_bgp_vpnv4_per_ce} */ readonly labelModeAllVrfsBgpVpnv4PerCe?: boolean | cdktf.IResolvable; /** * Per prefix label (default) * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mpls#label_mode_all_vrfs_bgp_vpnv4_per_prefix Mpls#label_mode_all_vrfs_bgp_vpnv4_per_prefix} */ readonly labelModeAllVrfsBgpVpnv4PerPrefix?: boolean | cdktf.IResolvable; /** * Per VRF label for entire VRF * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mpls#label_mode_all_vrfs_bgp_vpnv4_per_vrf Mpls#label_mode_all_vrfs_bgp_vpnv4_per_vrf} */ readonly labelModeAllVrfsBgpVpnv4PerVrf?: boolean | cdktf.IResolvable; /** * Per VRF label for connected and BGP aggregates in VRF * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mpls#label_mode_all_vrfs_bgp_vpnv4_vrf_conn_aggr Mpls#label_mode_all_vrfs_bgp_vpnv4_vrf_conn_aggr} */ readonly labelModeAllVrfsBgpVpnv4VrfConnAggr?: boolean | cdktf.IResolvable; /** * Per CE label * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mpls#label_mode_all_vrfs_bgp_vpnv6_per_ce Mpls#label_mode_all_vrfs_bgp_vpnv6_per_ce} */ readonly labelModeAllVrfsBgpVpnv6PerCe?: boolean | cdktf.IResolvable; /** * Per prefix label (default) * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mpls#label_mode_all_vrfs_bgp_vpnv6_per_prefix Mpls#label_mode_all_vrfs_bgp_vpnv6_per_prefix} */ readonly labelModeAllVrfsBgpVpnv6PerPrefix?: boolean | cdktf.IResolvable; /** * Per VRF label for entire VRF * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mpls#label_mode_all_vrfs_bgp_vpnv6_per_vrf Mpls#label_mode_all_vrfs_bgp_vpnv6_per_vrf} */ readonly labelModeAllVrfsBgpVpnv6PerVrf?: boolean | cdktf.IResolvable; /** * Per VRF label for connected and BGP aggregates in VRF * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mpls#label_mode_all_vrfs_bgp_vpnv6_vrf_conn_aggr Mpls#label_mode_all_vrfs_bgp_vpnv6_vrf_conn_aggr} */ readonly labelModeAllVrfsBgpVpnv6VrfConnAggr?: boolean | cdktf.IResolvable; /** * Set platform default label distribution protocol * - Choices: `ldp`, `tdp` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mpls#label_protocol Mpls#label_protocol} */ readonly labelProtocol?: string; } /** * Represents a {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mpls iosxe_mpls} */ export declare class Mpls extends cdktf.TerraformResource { static readonly tfResourceType = "iosxe_mpls"; /** * Generates CDKTF code for importing a Mpls 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 Mpls to import * @param importFromId The id of the existing Mpls that should be imported. Refer to the {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mpls#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the Mpls 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/mpls iosxe_mpls} 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 MplsConfig = {} */ constructor(scope: Construct, id: string, config?: MplsConfig); 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 _labelModeAllVrfsAllAfsPerCe?; get labelModeAllVrfsAllAfsPerCe(): boolean | cdktf.IResolvable; set labelModeAllVrfsAllAfsPerCe(value: boolean | cdktf.IResolvable); resetLabelModeAllVrfsAllAfsPerCe(): void; get labelModeAllVrfsAllAfsPerCeInput(): any; private _labelModeAllVrfsAllAfsPerPrefix?; get labelModeAllVrfsAllAfsPerPrefix(): boolean | cdktf.IResolvable; set labelModeAllVrfsAllAfsPerPrefix(value: boolean | cdktf.IResolvable); resetLabelModeAllVrfsAllAfsPerPrefix(): void; get labelModeAllVrfsAllAfsPerPrefixInput(): any; private _labelModeAllVrfsAllAfsPerVrf?; get labelModeAllVrfsAllAfsPerVrf(): boolean | cdktf.IResolvable; set labelModeAllVrfsAllAfsPerVrf(value: boolean | cdktf.IResolvable); resetLabelModeAllVrfsAllAfsPerVrf(): void; get labelModeAllVrfsAllAfsPerVrfInput(): any; private _labelModeAllVrfsAllAfsVrfConnAggr?; get labelModeAllVrfsAllAfsVrfConnAggr(): boolean | cdktf.IResolvable; set labelModeAllVrfsAllAfsVrfConnAggr(value: boolean | cdktf.IResolvable); resetLabelModeAllVrfsAllAfsVrfConnAggr(): void; get labelModeAllVrfsAllAfsVrfConnAggrInput(): any; private _labelModeAllVrfsBgpVpnv4PerCe?; get labelModeAllVrfsBgpVpnv4PerCe(): boolean | cdktf.IResolvable; set labelModeAllVrfsBgpVpnv4PerCe(value: boolean | cdktf.IResolvable); resetLabelModeAllVrfsBgpVpnv4PerCe(): void; get labelModeAllVrfsBgpVpnv4PerCeInput(): any; private _labelModeAllVrfsBgpVpnv4PerPrefix?; get labelModeAllVrfsBgpVpnv4PerPrefix(): boolean | cdktf.IResolvable; set labelModeAllVrfsBgpVpnv4PerPrefix(value: boolean | cdktf.IResolvable); resetLabelModeAllVrfsBgpVpnv4PerPrefix(): void; get labelModeAllVrfsBgpVpnv4PerPrefixInput(): any; private _labelModeAllVrfsBgpVpnv4PerVrf?; get labelModeAllVrfsBgpVpnv4PerVrf(): boolean | cdktf.IResolvable; set labelModeAllVrfsBgpVpnv4PerVrf(value: boolean | cdktf.IResolvable); resetLabelModeAllVrfsBgpVpnv4PerVrf(): void; get labelModeAllVrfsBgpVpnv4PerVrfInput(): any; private _labelModeAllVrfsBgpVpnv4VrfConnAggr?; get labelModeAllVrfsBgpVpnv4VrfConnAggr(): boolean | cdktf.IResolvable; set labelModeAllVrfsBgpVpnv4VrfConnAggr(value: boolean | cdktf.IResolvable); resetLabelModeAllVrfsBgpVpnv4VrfConnAggr(): void; get labelModeAllVrfsBgpVpnv4VrfConnAggrInput(): any; private _labelModeAllVrfsBgpVpnv6PerCe?; get labelModeAllVrfsBgpVpnv6PerCe(): boolean | cdktf.IResolvable; set labelModeAllVrfsBgpVpnv6PerCe(value: boolean | cdktf.IResolvable); resetLabelModeAllVrfsBgpVpnv6PerCe(): void; get labelModeAllVrfsBgpVpnv6PerCeInput(): any; private _labelModeAllVrfsBgpVpnv6PerPrefix?; get labelModeAllVrfsBgpVpnv6PerPrefix(): boolean | cdktf.IResolvable; set labelModeAllVrfsBgpVpnv6PerPrefix(value: boolean | cdktf.IResolvable); resetLabelModeAllVrfsBgpVpnv6PerPrefix(): void; get labelModeAllVrfsBgpVpnv6PerPrefixInput(): any; private _labelModeAllVrfsBgpVpnv6PerVrf?; get labelModeAllVrfsBgpVpnv6PerVrf(): boolean | cdktf.IResolvable; set labelModeAllVrfsBgpVpnv6PerVrf(value: boolean | cdktf.IResolvable); resetLabelModeAllVrfsBgpVpnv6PerVrf(): void; get labelModeAllVrfsBgpVpnv6PerVrfInput(): any; private _labelModeAllVrfsBgpVpnv6VrfConnAggr?; get labelModeAllVrfsBgpVpnv6VrfConnAggr(): boolean | cdktf.IResolvable; set labelModeAllVrfsBgpVpnv6VrfConnAggr(value: boolean | cdktf.IResolvable); resetLabelModeAllVrfsBgpVpnv6VrfConnAggr(): void; get labelModeAllVrfsBgpVpnv6VrfConnAggrInput(): any; private _labelProtocol?; get labelProtocol(): string; set labelProtocol(value: string); resetLabelProtocol(): void; get labelProtocolInput(): string; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }