import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * This resource can manage the VRF configuration. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as iosxe from "@lbrlabs/pulumi-iosxe"; * * const example = new iosxe.Vrf("example", { * addressFamilyIpv4: true, * addressFamilyIpv6: true, * description: "VRF22 description", * ipv4RouteTargetExports: [{ * value: "22:22", * }], * ipv4RouteTargetExportStitchings: [{ * value: "22:22", * }], * ipv4RouteTargetImports: [{ * value: "22:22", * }], * ipv4RouteTargetImportStitchings: [{ * value: "22:22", * }], * ipv6RouteTargetExports: [{ * value: "22:22", * }], * ipv6RouteTargetExportStitchings: [{ * value: "22:22", * }], * ipv6RouteTargetImports: [{ * value: "22:22", * }], * ipv6RouteTargetImportStitchings: [{ * value: "22:22", * }], * rd: "22:22", * routeTargetExports: [{ * stitching: false, * value: "22:22", * }], * routeTargetImports: [{ * stitching: false, * value: "22:22", * }], * vpnId: "22:22", * }); * ``` * * ## Import * * ```sh * $ pulumi import iosxe:index/vrf:Vrf example "Cisco-IOS-XE-native:native/vrf/definition=VRF22" * ``` */ export declare class Vrf extends pulumi.CustomResource { /** * Get an existing Vrf resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: VrfState, opts?: pulumi.CustomResourceOptions): Vrf; /** * Returns true if the given object is an instance of Vrf. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is Vrf; /** * Address family */ readonly addressFamilyIpv4: pulumi.Output; /** * Address family */ readonly addressFamilyIpv6: pulumi.Output; /** * 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` */ readonly deleteMode: pulumi.Output; /** * VRF specific description */ readonly description: pulumi.Output; /** * A device name from the provider configuration. */ readonly device: pulumi.Output; /** * Export Target-VPN community */ readonly ipv4RouteTargetExportStitchings: pulumi.Output; /** * Export Target-VPN community */ readonly ipv4RouteTargetExports: pulumi.Output; /** * Import Target-VPN community */ readonly ipv4RouteTargetImportStitchings: pulumi.Output; /** * Import Target-VPN community */ readonly ipv4RouteTargetImports: pulumi.Output; /** * Export Target-VPN community */ readonly ipv6RouteTargetExportStitchings: pulumi.Output; /** * Export Target-VPN community */ readonly ipv6RouteTargetExports: pulumi.Output; /** * Import Target-VPN community */ readonly ipv6RouteTargetImportStitchings: pulumi.Output; /** * Import Target-VPN community */ readonly ipv6RouteTargetImports: pulumi.Output; /** * WORD;;VRF name */ readonly name: pulumi.Output; /** * Specify Route Distinguisher */ readonly rd: pulumi.Output; /** * Export Target-VPN community */ readonly routeTargetExports: pulumi.Output; /** * Import Target-VPN community */ readonly routeTargetImports: pulumi.Output; /** * Configure VPN ID in rfc2685 format */ readonly vpnId: pulumi.Output; /** * Create a Vrf resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args?: VrfArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Vrf resources. */ export interface VrfState { /** * Address family */ addressFamilyIpv4?: pulumi.Input; /** * Address family */ addressFamilyIpv6?: pulumi.Input; /** * 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` */ deleteMode?: pulumi.Input; /** * VRF specific description */ description?: pulumi.Input; /** * A device name from the provider configuration. */ device?: pulumi.Input; /** * Export Target-VPN community */ ipv4RouteTargetExportStitchings?: pulumi.Input[]>; /** * Export Target-VPN community */ ipv4RouteTargetExports?: pulumi.Input[]>; /** * Import Target-VPN community */ ipv4RouteTargetImportStitchings?: pulumi.Input[]>; /** * Import Target-VPN community */ ipv4RouteTargetImports?: pulumi.Input[]>; /** * Export Target-VPN community */ ipv6RouteTargetExportStitchings?: pulumi.Input[]>; /** * Export Target-VPN community */ ipv6RouteTargetExports?: pulumi.Input[]>; /** * Import Target-VPN community */ ipv6RouteTargetImportStitchings?: pulumi.Input[]>; /** * Import Target-VPN community */ ipv6RouteTargetImports?: pulumi.Input[]>; /** * WORD;;VRF name */ name?: pulumi.Input; /** * Specify Route Distinguisher */ rd?: pulumi.Input; /** * Export Target-VPN community */ routeTargetExports?: pulumi.Input[]>; /** * Import Target-VPN community */ routeTargetImports?: pulumi.Input[]>; /** * Configure VPN ID in rfc2685 format */ vpnId?: pulumi.Input; } /** * The set of arguments for constructing a Vrf resource. */ export interface VrfArgs { /** * Address family */ addressFamilyIpv4?: pulumi.Input; /** * Address family */ addressFamilyIpv6?: pulumi.Input; /** * 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` */ deleteMode?: pulumi.Input; /** * VRF specific description */ description?: pulumi.Input; /** * A device name from the provider configuration. */ device?: pulumi.Input; /** * Export Target-VPN community */ ipv4RouteTargetExportStitchings?: pulumi.Input[]>; /** * Export Target-VPN community */ ipv4RouteTargetExports?: pulumi.Input[]>; /** * Import Target-VPN community */ ipv4RouteTargetImportStitchings?: pulumi.Input[]>; /** * Import Target-VPN community */ ipv4RouteTargetImports?: pulumi.Input[]>; /** * Export Target-VPN community */ ipv6RouteTargetExportStitchings?: pulumi.Input[]>; /** * Export Target-VPN community */ ipv6RouteTargetExports?: pulumi.Input[]>; /** * Import Target-VPN community */ ipv6RouteTargetImportStitchings?: pulumi.Input[]>; /** * Import Target-VPN community */ ipv6RouteTargetImports?: pulumi.Input[]>; /** * WORD;;VRF name */ name?: pulumi.Input; /** * Specify Route Distinguisher */ rd?: pulumi.Input; /** * Export Target-VPN community */ routeTargetExports?: pulumi.Input[]>; /** * Import Target-VPN community */ routeTargetImports?: pulumi.Input[]>; /** * Configure VPN ID in rfc2685 format */ vpnId?: pulumi.Input; }