import * as pulumi from "@pulumi/pulumi"; import * as outputs from "../types/output"; /** * Data Source schema for Volcengine::NatGateway::NGW */ export declare function getNgw(args: GetNgwArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getNgw. */ export interface GetNgwArgs { /** * Uniquely identifies the resource. */ id: string; } /** * A collection of values returned by getNgw. */ export interface GetNgwResult { /** * NAT Gateway billing mode. Possible values: 1: Subscription. 2 (default): Pay-as-you-go by specification. 3: Pay-as-you-go by usage. When NetworkType is set to intranet, only 3 is supported and required for this parameter. */ readonly billingType: number; /** * Indicates whether the NAT gateway is locked. Empty: Normal, not locked. Normal: Normal, not locked. FinancialLocked: Locked due to overdue payment. */ readonly businessStatus: string; /** * Creation time */ readonly createdTime: string; /** * Deletion time */ readonly deletedTime: string; /** * Description of the NAT Gateway. Must start with a letter, Chinese character, or number. Can include English comma (,), period (.), underscore (_), space ( ), equals sign (=), hyphen (-), Chinese comma (,), and Chinese period (。). Length: 1 to 255 characters. If not specified, defaults to an empty string. */ readonly description: string; /** * Indicates whether the NAT is direct or non-direct. - true (default): EIP direct NAT gateway. - false: Non-EIP direct NAT gateway. */ readonly directMode: boolean; /** * DNAT rule ID list. */ readonly dnatEntryIds: string[]; /** * Information about the public IP bound to the NAT Gateway */ readonly eipAddresses: outputs.natgateway.GetNgwEipAddress[]; /** * Expiration time for subscription NAT Gateway. Only NAT Gateways with subscription billing return this parameter. */ readonly expiredTime: string; /** * Uniquely identifies the resource. */ readonly id: string; /** * Reason for NAT lock. financial: Locked due to overdue payment. security: Locked for security reasons. */ readonly lockReason: string; /** * NAT gateway ID. */ readonly natGatewayId: string; /** * Name of the NAT Gateway. Must start with a letter, Chinese character, or number. Can include period (.), underscore (_), and hyphen (-). Length: 1 to 128 characters. If not specified, defaults to the NAT Gateway instance ID. */ readonly natGatewayName: string; /** * Transit IP list for private NAT instance */ readonly natIpAddresses: outputs.natgateway.GetNgwNatIpAddress[]; /** * Network interface ID occupied by the NAT gateway. */ readonly networkInterfaceId: string; /** * NAT Gateway type. internet: Public NAT Gateway. intranet: Private NAT Gateway. */ readonly networkType: string; /** * Resource freeze time. This parameter is returned only when the resource is frozen due to overdue payment. */ readonly overdueTime: string; /** * Duration for purchasing a subscription NAT Gateway, default is 1. If PeriodUnit is Month, Period can be 1 ~ 9, 12, 24, 36. If PeriodUnit is Year, Period can be 1 ~ 3. */ readonly period: number; /** * Unit for subscription NAT Gateway duration, default is Month. Month: month. Year: year. */ readonly periodUnit: string; /** * Name of the project the NAT Gateway belongs to. If not specified, defaults to the 'default' project. */ readonly projectName: string; /** * Whether to enable intelligent scheduling */ readonly smartScheduleEnabled: boolean; /** * Intelligent scheduling policy rules. ChinaMobile: China Mobile. ChinaUnicom: China Unicom. ChinaTelecom: China Telecom. BGP: BGP multi-line. */ readonly smartScheduleRule: string; /** * SNAT rule ID list */ readonly snatEntryIds: string[]; /** * NAT Gateway specification. Small (default): Small. Medium: Medium. Large: Large. Extra*Large*1: Extra Large 1. Extra*Large*2: Extra Large 2. */ readonly spec: string; /** * Status of the NAT Gateway. Available: Available. Creating: Creating. Pending: In progress. Deleting: Deleting. */ readonly status: string; /** * ID of the subnet where the NAT gateway is located. The input subnet must be a subnet of the private network specified by VpcId. There must be at least one available private IP in the subnet. The system automatically generates a NAT gateway network interface that will occupy one private IP in this subnet. The availability zone of the subnet must have deployed NAT gateway resources. The availability zone of the subnet will be used as the primary availability zone for the NAT gateway and will automatically associate with a backup availability zone. When the primary availability zone fails, the NAT gateway automatically switches to the backup availability zone. */ readonly subnetId: string; /** * Tag list */ readonly tags: outputs.natgateway.GetNgwTag[]; /** * Last operation time of the NAT Gateway */ readonly updatedTime: string; /** * ID of the private network where the NAT Gateway is located */ readonly vpcId: string; /** * ID of the primary availability zone the NAT Gateway belongs to */ readonly zoneId: string; } /** * Data Source schema for Volcengine::NatGateway::NGW */ export declare function getNgwOutput(args: GetNgwOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getNgw. */ export interface GetNgwOutputArgs { /** * Uniquely identifies the resource. */ id: pulumi.Input; }