import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * BgpFilteringProfile resource * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as scm from "@pulumi/scm"; * * // * // Creates an empty bgp filtering profile * // * const scmBgpFilteringProfile = new scm.BgpFilteringProfile("scm_bgp_filtering_profile", { * folder: "ngfw-shared", * name: "scm_bgp_filtering_profile", * ipv4: {}, * }); * // * // Creates various resources used for scm_bgp_filtering_profile_complex * // * const scmPlInbound = new scm.RoutePrefixList("scm_pl_inbound", { * folder: "ngfw-shared", * name: "scm_pl_inbound", * description: "Managed by Pulumi", * type: { * ipv4: { * ipv4Entries: [{ * name: 10, * action: "permit", * prefix: { * greaterThanOrEqual: 24, * network: "any", * }, * }], * }, * }, * }); * const scmRmInbound = new scm.BgpRouteMap("scm_rm_inbound", { * folder: "ngfw-shared", * name: "scm_rm_inbound", * description: "Managed by Pulumi", * routeMaps: [{ * name: 10, * description: "No Export", * match: { * ipv4: { * address: { * prefixList: "scm_pl_inbound", * }, * }, * }, * set: { * regularCommunity: ["no-export"], * }, * }], * }, { * dependsOn: [scmPlInbound], * }); * const scmPlOutbound = new scm.RoutePrefixList("scm_pl_outbound", { * folder: "ngfw-shared", * name: "scm_pl_outbound", * description: "Managed by Pulumi", * type: { * ipv4: { * ipv4Entries: [{ * name: 10, * action: "permit", * prefix: { * greaterThanOrEqual: 24, * network: "any", * }, * }], * }, * }, * }); * const scmRmOutbound = new scm.BgpRouteMap("scm_rm_outbound", { * folder: "ngfw-shared", * name: "scm_rm_outbound", * description: "Managed by Pulumi", * routeMaps: [{ * name: 10, * description: "No Export", * match: { * ipv4: { * address: { * prefixList: "scm_pl_outbound", * }, * }, * }, * set: { * regularCommunity: ["no-export"], * }, * }], * }, { * dependsOn: [scmPlOutbound], * }); * // * // Creates a complex filtering profile that utilises previously created FL, PL and RM * // * const scmBgpFilteringProfileComplex = new scm.BgpFilteringProfile("scm_bgp_filtering_profile_complex", { * folder: "ngfw-shared", * name: "scm_bgp_filtering_profile_complex", * ipv4: { * unicast: { * inboundNetworkFilters: { * prefixList: "scm_pl_inbound", * }, * routeMaps: { * inbound: "scm_rm_inbound", * outbound: "scm_rm_outbound", * }, * }, * }, * }, { * dependsOn: [ * scmPlInbound, * scmRmInbound, * scmRmOutbound, * ], * }); * ``` * * ## Import * * The following command can be used to import a resource not managed by Terraform: * * ```sh * $ pulumi import scm:index/bgpFilteringProfile:BgpFilteringProfile example folder:::id * ``` * * or * * ```sh * $ pulumi import scm:index/bgpFilteringProfile:BgpFilteringProfile example :snippet::id * ``` * * or * * ```sh * $ pulumi import scm:index/bgpFilteringProfile:BgpFilteringProfile example ::device:id * ``` * * **Note:** Please provide just one of folder, snippet, or device for the import command. */ export declare class BgpFilteringProfile extends pulumi.CustomResource { /** * Get an existing BgpFilteringProfile 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?: BgpFilteringProfileState, opts?: pulumi.CustomResourceOptions): BgpFilteringProfile; /** * Returns true if the given object is an instance of BgpFilteringProfile. 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 BgpFilteringProfile; /** * Description */ readonly description: pulumi.Output; /** * The device in which the resource is defined */ readonly device: pulumi.Output; /** * The folder in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ readonly folder: pulumi.Output; /** * Ipv4 */ readonly ipv4: pulumi.Output; /** * Name */ readonly name: pulumi.Output; /** * The snippet in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ readonly snippet: pulumi.Output; /** * The Terraform ID. */ readonly tfid: pulumi.Output; /** * Create a BgpFilteringProfile 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?: BgpFilteringProfileArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering BgpFilteringProfile resources. */ export interface BgpFilteringProfileState { /** * Description */ description?: pulumi.Input; /** * The device in which the resource is defined */ device?: pulumi.Input; /** * The folder in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ folder?: pulumi.Input; /** * Ipv4 */ ipv4?: pulumi.Input; /** * Name */ name?: pulumi.Input; /** * The snippet in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ snippet?: pulumi.Input; /** * The Terraform ID. */ tfid?: pulumi.Input; } /** * The set of arguments for constructing a BgpFilteringProfile resource. */ export interface BgpFilteringProfileArgs { /** * Description */ description?: pulumi.Input; /** * The device in which the resource is defined */ device?: pulumi.Input; /** * The folder in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ folder?: pulumi.Input; /** * Ipv4 */ ipv4?: pulumi.Input; /** * Name */ name?: pulumi.Input; /** * The snippet in which the resource is defined * * > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`. */ snippet?: pulumi.Input; } //# sourceMappingURL=bgpFilteringProfile.d.ts.map