import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../../types/input"; import * as outputs from "../../types/output"; /** * Creates a new TcpRoute in a given project and location. */ export declare class TcpRoute extends pulumi.CustomResource { /** * Get an existing TcpRoute 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 opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): TcpRoute; /** * Returns true if the given object is an instance of TcpRoute. 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 TcpRoute; /** * The timestamp when the resource was created. */ readonly createTime: pulumi.Output; /** * Optional. A free-text description of the resource. Max length 1024 characters. */ readonly description: pulumi.Output; /** * Optional. Gateways defines a list of gateways this TcpRoute is attached to, as one of the routing rules to route the requests served by the gateway. Each gateway reference should match the pattern: `projects/*/locations/global/gateways/` */ readonly gateways: pulumi.Output; /** * Optional. Set of label tags associated with the TcpRoute resource. */ readonly labels: pulumi.Output<{ [key: string]: string; }>; readonly location: pulumi.Output; /** * Optional. Meshes defines a list of meshes this TcpRoute is attached to, as one of the routing rules to route the requests served by the mesh. Each mesh reference should match the pattern: `projects/*/locations/global/meshes/` The attached Mesh should be of a type SIDECAR */ readonly meshes: pulumi.Output; /** * Name of the TcpRoute resource. It matches pattern `projects/*/locations/global/tcpRoutes/tcp_route_name>`. */ readonly name: pulumi.Output; readonly project: pulumi.Output; /** * Rules that define how traffic is routed and handled. At least one RouteRule must be supplied. If there are multiple rules then the action taken will be the first rule to match. */ readonly rules: pulumi.Output; /** * Server-defined URL of this resource */ readonly selfLink: pulumi.Output; /** * Required. Short name of the TcpRoute resource to be created. */ readonly tcpRouteId: pulumi.Output; /** * The timestamp when the resource was updated. */ readonly updateTime: pulumi.Output; /** * Create a TcpRoute 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: TcpRouteArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a TcpRoute resource. */ export interface TcpRouteArgs { /** * Optional. A free-text description of the resource. Max length 1024 characters. */ description?: pulumi.Input; /** * Optional. Gateways defines a list of gateways this TcpRoute is attached to, as one of the routing rules to route the requests served by the gateway. Each gateway reference should match the pattern: `projects/*/locations/global/gateways/` */ gateways?: pulumi.Input[]>; /** * Optional. Set of label tags associated with the TcpRoute resource. */ labels?: pulumi.Input<{ [key: string]: pulumi.Input; }>; location?: pulumi.Input; /** * Optional. Meshes defines a list of meshes this TcpRoute is attached to, as one of the routing rules to route the requests served by the mesh. Each mesh reference should match the pattern: `projects/*/locations/global/meshes/` The attached Mesh should be of a type SIDECAR */ meshes?: pulumi.Input[]>; /** * Name of the TcpRoute resource. It matches pattern `projects/*/locations/global/tcpRoutes/tcp_route_name>`. */ name?: pulumi.Input; project?: pulumi.Input; /** * Rules that define how traffic is routed and handled. At least one RouteRule must be supplied. If there are multiple rules then the action taken will be the first rule to match. */ rules: pulumi.Input[]>; /** * Required. Short name of the TcpRoute resource to be created. */ tcpRouteId: pulumi.Input; }