import * as pulumi from "@pulumi/pulumi"; import { input as inputs, output as outputs } from "../../types"; /** * Creates a ServiceAttachment in the specified project in the given scope using the parameters that are included in the request. */ export declare class ServiceAttachment extends pulumi.CustomResource { /** * Get an existing ServiceAttachment 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): ServiceAttachment; /** * Returns true if the given object is an instance of ServiceAttachment. 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 ServiceAttachment; /** * The connection preference of service attachment. The value can be set to ACCEPT_AUTOMATIC. An ACCEPT_AUTOMATIC service attachment is one that always accepts the connection from consumer forwarding rules. */ readonly connectionPreference: pulumi.Output; /** * [Output Only] An array of forwarding rules for all the consumers connected to this service attachment. */ readonly consumerForwardingRules: pulumi.Output; /** * [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; /** * If true, enable the proxy protocol which is for supplying client TCP/IP address data in TCP connections that traverse proxies on their way to destination servers. */ readonly enableProxyProtocol: pulumi.Output; /** * [Output Only] Type of the resource. Always compute#serviceAttachment for service attachments. */ 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; /** * An array of URLs where each entry is the URL of a subnet provided by the service producer to use for NAT in this service attachment. */ readonly natSubnets: pulumi.Output; /** * The URL of a forwarding rule with loadBalancingScheme INTERNAL* that is serving the endpoint identified by this service attachment. */ readonly producerForwardingRule: pulumi.Output; /** * [Output Only] URL of the region where the service attachment resides. This field applies only to the region resource. 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; /** * Create a ServiceAttachment 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: ServiceAttachmentArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a ServiceAttachment resource. */ export interface ServiceAttachmentArgs { /** * The connection preference of service attachment. The value can be set to ACCEPT_AUTOMATIC. An ACCEPT_AUTOMATIC service attachment is one that always accepts the connection from consumer forwarding rules. */ readonly connectionPreference?: pulumi.Input; /** * [Output Only] An array of forwarding rules for all the consumers connected to this service attachment. */ readonly consumerForwardingRules?: pulumi.Input[]>; /** * [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; /** * If true, enable the proxy protocol which is for supplying client TCP/IP address data in TCP connections that traverse proxies on their way to destination servers. */ readonly enableProxyProtocol?: pulumi.Input; /** * [Output Only] The unique identifier for the resource type. The server generates this identifier. */ readonly id?: pulumi.Input; /** * [Output Only] Type of the resource. Always compute#serviceAttachment for service attachments. */ 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; /** * An array of URLs where each entry is the URL of a subnet provided by the service producer to use for NAT in this service attachment. */ readonly natSubnets?: pulumi.Input[]>; /** * The URL of a forwarding rule with loadBalancingScheme INTERNAL* that is serving the endpoint identified by this service attachment. */ readonly producerForwardingRule?: pulumi.Input; readonly project: pulumi.Input; /** * [Output Only] URL of the region where the service attachment resides. This field applies only to the region resource. 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; readonly serviceAttachment: pulumi.Input; }