import * as pulumi from "@pulumi/pulumi"; /** * This resource can manage the EVPN configuration. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as iosxe from "@lbrlabs/pulumi-iosxe"; * * const example = new iosxe.Evpn("example", { * defaultGatewayAdvertise: true, * ipDuplicationLimit: 10, * ipDuplicationTime: 100, * loggingPeerState: true, * macDuplicationLimit: 10, * macDuplicationTime: 100, * replicationTypeIngress: false, * replicationTypeMp2mp: false, * replicationTypeP2mp: false, * replicationTypeStatic: true, * routeTargetAutoVni: true, * routerIdLoopback: 100, * }); * ``` * * ## Import * * ```sh * $ pulumi import iosxe:index/evpn:Evpn example "Cisco-IOS-XE-native:native/l2vpn/Cisco-IOS-XE-l2vpn:evpn_cont/evpn" * ``` */ export declare class Evpn extends pulumi.CustomResource { /** * Get an existing Evpn 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?: EvpnState, opts?: pulumi.CustomResourceOptions): Evpn; /** * Returns true if the given object is an instance of Evpn. 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 Evpn; /** * Advertise Default Gateway MAC/IP routes */ readonly defaultGatewayAdvertise: 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; /** * A device name from the provider configuration. */ readonly device: pulumi.Output; /** * Number of IP moves within specified time interval - Range: `2`-`1000` */ readonly ipDuplicationLimit: pulumi.Output; /** * IP duplication timer - Range: `10`-`36000` */ readonly ipDuplicationTime: pulumi.Output; /** * Peer state transition logging */ readonly loggingPeerState: pulumi.Output; /** * Number of MAC moves within specified time interval - Range: `2`-`1000` */ readonly macDuplicationLimit: pulumi.Output; /** * MAC duplication timer - Range: `10`-`36000` */ readonly macDuplicationTime: pulumi.Output; /** * Ingress replication */ readonly replicationTypeIngress: pulumi.Output; /** * mp2mp replication */ readonly replicationTypeMp2mp: pulumi.Output; /** * p2mp replication */ readonly replicationTypeP2mp: pulumi.Output; /** * Static replication */ readonly replicationTypeStatic: pulumi.Output; /** * Set vni-based route-target */ readonly routeTargetAutoVni: pulumi.Output; /** * Loopback interface - Range: `0`-`2147483647` */ readonly routerIdLoopback: pulumi.Output; /** * Create a Evpn 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?: EvpnArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Evpn resources. */ export interface EvpnState { /** * Advertise Default Gateway MAC/IP routes */ defaultGatewayAdvertise?: 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; /** * A device name from the provider configuration. */ device?: pulumi.Input; /** * Number of IP moves within specified time interval - Range: `2`-`1000` */ ipDuplicationLimit?: pulumi.Input; /** * IP duplication timer - Range: `10`-`36000` */ ipDuplicationTime?: pulumi.Input; /** * Peer state transition logging */ loggingPeerState?: pulumi.Input; /** * Number of MAC moves within specified time interval - Range: `2`-`1000` */ macDuplicationLimit?: pulumi.Input; /** * MAC duplication timer - Range: `10`-`36000` */ macDuplicationTime?: pulumi.Input; /** * Ingress replication */ replicationTypeIngress?: pulumi.Input; /** * mp2mp replication */ replicationTypeMp2mp?: pulumi.Input; /** * p2mp replication */ replicationTypeP2mp?: pulumi.Input; /** * Static replication */ replicationTypeStatic?: pulumi.Input; /** * Set vni-based route-target */ routeTargetAutoVni?: pulumi.Input; /** * Loopback interface - Range: `0`-`2147483647` */ routerIdLoopback?: pulumi.Input; } /** * The set of arguments for constructing a Evpn resource. */ export interface EvpnArgs { /** * Advertise Default Gateway MAC/IP routes */ defaultGatewayAdvertise?: 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; /** * A device name from the provider configuration. */ device?: pulumi.Input; /** * Number of IP moves within specified time interval - Range: `2`-`1000` */ ipDuplicationLimit?: pulumi.Input; /** * IP duplication timer - Range: `10`-`36000` */ ipDuplicationTime?: pulumi.Input; /** * Peer state transition logging */ loggingPeerState?: pulumi.Input; /** * Number of MAC moves within specified time interval - Range: `2`-`1000` */ macDuplicationLimit?: pulumi.Input; /** * MAC duplication timer - Range: `10`-`36000` */ macDuplicationTime?: pulumi.Input; /** * Ingress replication */ replicationTypeIngress?: pulumi.Input; /** * mp2mp replication */ replicationTypeMp2mp?: pulumi.Input; /** * p2mp replication */ replicationTypeP2mp?: pulumi.Input; /** * Static replication */ replicationTypeStatic?: pulumi.Input; /** * Set vni-based route-target */ routeTargetAutoVni?: pulumi.Input; /** * Loopback interface - Range: `0`-`2147483647` */ routerIdLoopback?: pulumi.Input; }