import * as pulumi from "@pulumi/pulumi"; /** * Creates a target VPN gateway in the specified project and region using the data included in the request. */ export declare class TargetVpnGateway extends pulumi.CustomResource { /** * Get an existing TargetVpnGateway 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): TargetVpnGateway; /** * Returns true if the given object is an instance of TargetVpnGateway. 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 TargetVpnGateway; /** * [Output Only] Creation timestamp in RFC3339 text format. */ readonly creationTimestamp: pulumi.Output; /** * An optional description of this resource. Provide this property when you create the resource. */ readonly description: pulumi.Output; /** * [Output Only] A list of URLs to the ForwardingRule resources. ForwardingRules are created using compute.forwardingRules.insert and associated with a VPN gateway. */ readonly forwardingRules: pulumi.Output; /** * [Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways. */ readonly kind: pulumi.Output; /** * Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. */ readonly name: pulumi.Output; /** * URL of the network to which this VPN gateway is attached. Provided by the client when the VPN gateway is created. */ readonly network: pulumi.Output; /** * [Output Only] URL of the region where the target VPN gateway resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. */ readonly region: pulumi.Output; /** * [Output Only] Server-defined URL for the resource. */ readonly selfLink: pulumi.Output; /** * [Output Only] The status of the VPN gateway, which can be one of the following: CREATING, READY, FAILED, or DELETING. */ readonly status: pulumi.Output; /** * [Output Only] A list of URLs to VpnTunnel resources. VpnTunnels are created using the compute.vpntunnels.insert method and associated with a VPN gateway. */ readonly tunnels: pulumi.Output; /** * Create a TargetVpnGateway 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: TargetVpnGatewayArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a TargetVpnGateway resource. */ export interface TargetVpnGatewayArgs { /** * [Output Only] Creation timestamp in RFC3339 text format. */ readonly creationTimestamp?: pulumi.Input; /** * An optional description of this resource. Provide this property when you create the resource. */ readonly description?: pulumi.Input; /** * [Output Only] A list of URLs to the ForwardingRule resources. ForwardingRules are created using compute.forwardingRules.insert and associated with a VPN gateway. */ readonly forwardingRules?: pulumi.Input[]>; /** * [Output Only] The unique identifier for the resource. This identifier is defined by the server. */ readonly id?: pulumi.Input; /** * [Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways. */ readonly kind?: pulumi.Input; /** * Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. */ readonly name?: pulumi.Input; /** * URL of the network to which this VPN gateway is attached. Provided by the client when the VPN gateway is created. */ readonly network?: pulumi.Input; readonly project: pulumi.Input; /** * [Output Only] URL of the region where the target VPN gateway resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. */ readonly region: pulumi.Input; /** * [Output Only] Server-defined URL for the resource. */ readonly selfLink?: pulumi.Input; /** * [Output Only] The status of the VPN gateway, which can be one of the following: CREATING, READY, FAILED, or DELETING. */ readonly status?: pulumi.Input; readonly targetVpnGateway: pulumi.Input; /** * [Output Only] A list of URLs to VpnTunnel resources. VpnTunnels are created using the compute.vpntunnels.insert method and associated with a VPN gateway. */ readonly tunnels?: pulumi.Input[]>; }