import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * The endpoint service enables private network connections between VPCs via endpoints. * * ## Import * * ```sh * $ pulumi import volcenginecc:privatelink/endpointService:EndpointService example "service_id" * ``` */ export declare class EndpointService extends pulumi.CustomResource { /** * Get an existing EndpointService 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?: EndpointServiceState, opts?: pulumi.CustomResourceOptions): EndpointService; /** * Returns true if the given object is an instance of EndpointService. 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 EndpointService; /** * Whether to automatically accept endpoint connections. true: The endpoint service automatically accepts endpoint connections. false: The endpoint service does not automatically accept endpoint connections; you must manually accept them by calling the EnableVpcEndpointConnection API. */ readonly autoAcceptEnabled: pulumi.Output; /** * Billing type of the endpoint service. 0: No charge. 3: Pay-as-you-go. */ readonly billingType: pulumi.Output; /** * Whether the endpoint service is locked. Normal: normal. FinancialLocked: locked. If this parameter is empty, the endpoint service is not locked. */ readonly businessStatus: pulumi.Output; /** * Creation time of the endpoint service. */ readonly createTime: pulumi.Output; /** * Description of the endpoint service. */ readonly description: pulumi.Output; /** * Verify the DNS name of the specified endpoint service. Only verification of public domain names is supported. true: enabled. false: not enabled. */ readonly enableVerifyPrivateDns: pulumi.Output; /** * IP protocol type of the endpoint service. If the return value only contains ipv4, the endpoint service is IPv4 type and only supports IPv4 services. If the return value contains both ipv4 and ipv6, the endpoint service is dual-stack and supports both IPv4 and IPv6 services. */ readonly ipAddressVersions: pulumi.Output; /** * Billing account for the private network connection. Endpoint: endpoint account. EndpointService: endpoint service account. */ readonly payer: pulumi.Output; /** * Details of authorized allowlist accounts. */ readonly permitAccountIds: pulumi.Output; /** * Whether the endpoint service enables private DNS name. false: Not enabled. true: Enabled. */ readonly privateDnsEnabled: pulumi.Output; /** * Private DNS name of the endpoint service. If the PrivateDNSEnabled parameter returns false, this parameter is empty. */ readonly privateDnsName: pulumi.Output; /** * Configuration information for the private DNS name of the endpoint service. Note: If PrivateDNSType is private, this parameter is not returned. */ readonly privateDnsNameConfiguration: pulumi.Output; /** * Domain name type of the private DNS name. public: public network. Note: If the custom private domain name feature is not enabled, this parameter is not returned. */ readonly privateDnsType: pulumi.Output; /** * Project name to which the endpoint service belongs. */ readonly projectName: pulumi.Output; readonly resources: pulumi.Output; /** * Service domain name of the endpoint service. */ readonly serviceDomain: pulumi.Output; /** * Endpoint service ID. */ readonly serviceId: pulumi.Output; /** * Name of the endpoint service. */ readonly serviceName: pulumi.Output; /** * Whether this is a managed endpoint service. false: not a managed endpoint service. true: managed endpoint service. If the account owning the endpoint service has not enabled managed endpoint service functionality, this parameter is not returned. */ readonly serviceNameManaged: pulumi.Output; /** * Suffix for the endpoint service name. This parameter is currently in beta testing. If you need to use different name suffixes to distinguish business scenarios, please contact your account manager. */ readonly serviceNameSuffix: pulumi.Output; /** * Current service principal. */ readonly serviceOwner: pulumi.Output; /** * Type of service resource. CLB: Load Balancer CLB. ALB: Application Load Balancer ALB. RDSMySQL: Cloud Database MySQL Edition. */ readonly serviceResourceType: pulumi.Output; /** * Type of the endpoint service. Interface: Interface endpoint service. */ readonly serviceType: pulumi.Output; /** * Status of the endpoint service. Creating: being created. Pending: configuration being modified. Available: available. Deleting: being deleted. */ readonly status: pulumi.Output; readonly tags: pulumi.Output; /** * Most recent operation time of the endpoint service. */ readonly updateTime: pulumi.Output; /** * Whether to enable wildcard domain name. true: Enabled. false: Not enabled. */ readonly wildcardDomainEnabled: pulumi.Output; /** * Availability zone where the endpoint service provides service. Note: If the ServiceResourceType parameter returns RDSMySQL, this parameter returns an empty value. */ readonly zoneIds: pulumi.Output; /** * Create a EndpointService 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?: EndpointServiceArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering EndpointService resources. */ export interface EndpointServiceState { /** * Whether to automatically accept endpoint connections. true: The endpoint service automatically accepts endpoint connections. false: The endpoint service does not automatically accept endpoint connections; you must manually accept them by calling the EnableVpcEndpointConnection API. */ autoAcceptEnabled?: pulumi.Input; /** * Billing type of the endpoint service. 0: No charge. 3: Pay-as-you-go. */ billingType?: pulumi.Input; /** * Whether the endpoint service is locked. Normal: normal. FinancialLocked: locked. If this parameter is empty, the endpoint service is not locked. */ businessStatus?: pulumi.Input; /** * Creation time of the endpoint service. */ createTime?: pulumi.Input; /** * Description of the endpoint service. */ description?: pulumi.Input; /** * Verify the DNS name of the specified endpoint service. Only verification of public domain names is supported. true: enabled. false: not enabled. */ enableVerifyPrivateDns?: pulumi.Input; /** * IP protocol type of the endpoint service. If the return value only contains ipv4, the endpoint service is IPv4 type and only supports IPv4 services. If the return value contains both ipv4 and ipv6, the endpoint service is dual-stack and supports both IPv4 and IPv6 services. */ ipAddressVersions?: pulumi.Input[]>; /** * Billing account for the private network connection. Endpoint: endpoint account. EndpointService: endpoint service account. */ payer?: pulumi.Input; /** * Details of authorized allowlist accounts. */ permitAccountIds?: pulumi.Input[]>; /** * Whether the endpoint service enables private DNS name. false: Not enabled. true: Enabled. */ privateDnsEnabled?: pulumi.Input; /** * Private DNS name of the endpoint service. If the PrivateDNSEnabled parameter returns false, this parameter is empty. */ privateDnsName?: pulumi.Input; /** * Configuration information for the private DNS name of the endpoint service. Note: If PrivateDNSType is private, this parameter is not returned. */ privateDnsNameConfiguration?: pulumi.Input; /** * Domain name type of the private DNS name. public: public network. Note: If the custom private domain name feature is not enabled, this parameter is not returned. */ privateDnsType?: pulumi.Input; /** * Project name to which the endpoint service belongs. */ projectName?: pulumi.Input; resources?: pulumi.Input[]>; /** * Service domain name of the endpoint service. */ serviceDomain?: pulumi.Input; /** * Endpoint service ID. */ serviceId?: pulumi.Input; /** * Name of the endpoint service. */ serviceName?: pulumi.Input; /** * Whether this is a managed endpoint service. false: not a managed endpoint service. true: managed endpoint service. If the account owning the endpoint service has not enabled managed endpoint service functionality, this parameter is not returned. */ serviceNameManaged?: pulumi.Input; /** * Suffix for the endpoint service name. This parameter is currently in beta testing. If you need to use different name suffixes to distinguish business scenarios, please contact your account manager. */ serviceNameSuffix?: pulumi.Input; /** * Current service principal. */ serviceOwner?: pulumi.Input; /** * Type of service resource. CLB: Load Balancer CLB. ALB: Application Load Balancer ALB. RDSMySQL: Cloud Database MySQL Edition. */ serviceResourceType?: pulumi.Input; /** * Type of the endpoint service. Interface: Interface endpoint service. */ serviceType?: pulumi.Input; /** * Status of the endpoint service. Creating: being created. Pending: configuration being modified. Available: available. Deleting: being deleted. */ status?: pulumi.Input; tags?: pulumi.Input[]>; /** * Most recent operation time of the endpoint service. */ updateTime?: pulumi.Input; /** * Whether to enable wildcard domain name. true: Enabled. false: Not enabled. */ wildcardDomainEnabled?: pulumi.Input; /** * Availability zone where the endpoint service provides service. Note: If the ServiceResourceType parameter returns RDSMySQL, this parameter returns an empty value. */ zoneIds?: pulumi.Input[]>; } /** * The set of arguments for constructing a EndpointService resource. */ export interface EndpointServiceArgs { /** * Whether to automatically accept endpoint connections. true: The endpoint service automatically accepts endpoint connections. false: The endpoint service does not automatically accept endpoint connections; you must manually accept them by calling the EnableVpcEndpointConnection API. */ autoAcceptEnabled?: pulumi.Input; /** * Description of the endpoint service. */ description?: pulumi.Input; /** * Verify the DNS name of the specified endpoint service. Only verification of public domain names is supported. true: enabled. false: not enabled. */ enableVerifyPrivateDns?: pulumi.Input; /** * IP protocol type of the endpoint service. If the return value only contains ipv4, the endpoint service is IPv4 type and only supports IPv4 services. If the return value contains both ipv4 and ipv6, the endpoint service is dual-stack and supports both IPv4 and IPv6 services. */ ipAddressVersions?: pulumi.Input[]>; /** * Billing account for the private network connection. Endpoint: endpoint account. EndpointService: endpoint service account. */ payer?: pulumi.Input; /** * Details of authorized allowlist accounts. */ permitAccountIds?: pulumi.Input[]>; /** * Whether the endpoint service enables private DNS name. false: Not enabled. true: Enabled. */ privateDnsEnabled?: pulumi.Input; /** * Private DNS name of the endpoint service. If the PrivateDNSEnabled parameter returns false, this parameter is empty. */ privateDnsName?: pulumi.Input; /** * Domain name type of the private DNS name. public: public network. Note: If the custom private domain name feature is not enabled, this parameter is not returned. */ privateDnsType?: pulumi.Input; /** * Project name to which the endpoint service belongs. */ projectName?: pulumi.Input; resources?: pulumi.Input[]>; /** * Whether this is a managed endpoint service. false: not a managed endpoint service. true: managed endpoint service. If the account owning the endpoint service has not enabled managed endpoint service functionality, this parameter is not returned. */ serviceNameManaged?: pulumi.Input; /** * Suffix for the endpoint service name. This parameter is currently in beta testing. If you need to use different name suffixes to distinguish business scenarios, please contact your account manager. */ serviceNameSuffix?: pulumi.Input; /** * Current service principal. */ serviceOwner?: pulumi.Input; /** * Type of service resource. CLB: Load Balancer CLB. ALB: Application Load Balancer ALB. RDSMySQL: Cloud Database MySQL Edition. */ serviceResourceType?: pulumi.Input; /** * Type of the endpoint service. Interface: Interface endpoint service. */ serviceType?: pulumi.Input; tags?: pulumi.Input[]>; /** * Whether to enable wildcard domain name. true: Enabled. false: Not enabled. */ wildcardDomainEnabled?: pulumi.Input; }