import * as pulumi from "@pulumi/pulumi"; /** * Provides a resource, that manages Cloudflare tunnel routes for Zero Trust. Tunnel * routes are used to direct IP traffic through Cloudflare Tunnels. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as cloudflare from "@pulumi/cloudflare"; * * const example = new cloudflare.TunnelRoute("example", { * accountId: "c4a7362d577a6c3019a474fd6f485821", * comment: "New tunnel route for documentation", * network: "192.0.2.24/32", * tunnelId: "f70ff985-a4ef-4643-bbbc-4a0ed4fc8415", * virtualNetworkId: "bdc39a3c-3104-4c23-8ac0-9f455dda691a", * }); * ``` * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as pulumi_cloudflare from "@mapped/pulumi-cloudflare"; * * const tunnel = new cloudflare.ArgoTunnel("tunnel", { * accountId: "c4a7362d577a6c3019a474fd6f485821", * name: "my_tunnel", * secret: "AQIDBAUGBwgBAgMEBQYHCAECAwQFBgcIAQIDBAUGBwg=", * }); * const example = new cloudflare.TunnelRoute("example", { * accountId: "c4a7362d577a6c3019a474fd6f485821", * tunnelId: tunnel.id, * network: "192.0.2.24/32", * comment: "New tunnel route for documentation", * virtualNetworkId: "bdc39a3c-3104-4c23-8ac0-9f455dda691a", * }); * ``` * * ## Import * * An existing tunnel route can be imported using the account ID and network CIDR * * ```sh * $ pulumi import cloudflare:index/tunnelRoute:TunnelRoute cloudflare_tunnel_route c4a7362d577a6c3019a474fd6f485821/192.0.2.24/32 * ``` * * or using account ID, network CIDR and virtual network ID. * * ```sh * $ pulumi import cloudflare:index/tunnelRoute:TunnelRoute cloudflare_tunnel_route c4a7362d577a6c3019a474fd6f485821/192.0.2.24/32/bdc39a3c-3104-4c23-8ac0-9f455dda691a * ``` */ export declare class TunnelRoute extends pulumi.CustomResource { /** * Get an existing TunnelRoute 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?: TunnelRouteState, opts?: pulumi.CustomResourceOptions): TunnelRoute; /** * Returns true if the given object is an instance of TunnelRoute. 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 TunnelRoute; /** * The ID of the account where the tunnel route is being created. */ readonly accountId: pulumi.Output; /** * Description of the tunnel route. */ readonly comment: pulumi.Output; /** * The IPv4 or IPv6 network that should use this tunnel route, in CIDR notation. */ readonly network: pulumi.Output; /** * The ID of the tunnel that will service the tunnel route. */ readonly tunnelId: pulumi.Output; /** * The ID of the virtual network for which this route is being added; uses the default virtual network of the account if none is provided. */ readonly virtualNetworkId: pulumi.Output; /** * Create a TunnelRoute 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: TunnelRouteArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering TunnelRoute resources. */ export interface TunnelRouteState { /** * The ID of the account where the tunnel route is being created. */ accountId?: pulumi.Input; /** * Description of the tunnel route. */ comment?: pulumi.Input; /** * The IPv4 or IPv6 network that should use this tunnel route, in CIDR notation. */ network?: pulumi.Input; /** * The ID of the tunnel that will service the tunnel route. */ tunnelId?: pulumi.Input; /** * The ID of the virtual network for which this route is being added; uses the default virtual network of the account if none is provided. */ virtualNetworkId?: pulumi.Input; } /** * The set of arguments for constructing a TunnelRoute resource. */ export interface TunnelRouteArgs { /** * The ID of the account where the tunnel route is being created. */ accountId: pulumi.Input; /** * Description of the tunnel route. */ comment?: pulumi.Input; /** * The IPv4 or IPv6 network that should use this tunnel route, in CIDR notation. */ network: pulumi.Input; /** * The ID of the tunnel that will service the tunnel route. */ tunnelId: pulumi.Input; /** * The ID of the virtual network for which this route is being added; uses the default virtual network of the account if none is provided. */ virtualNetworkId?: pulumi.Input; }