import * as $dara from '@darabonba/typescript';
export declare class CreateIpv4GatewayRequestTag extends $dara.Model {
    /**
     * @remarks
     * The key of tag N to add to the resource. You can specify up to 20 tag keys. The tag key cannot be an empty string.
     *
     * The tag key can be up to 128 characters in length. It cannot start with `aliyun` or `acs:`, and cannot contain `http://` or `https://`.
     *
     * @example
     * FinanceDept
     */
    key?: string;
    /**
     * @remarks
     * The value of tag N to add to the resource. You can specify at most 20 tag values. The tag value can be an empty string.
     *
     * The tag value can be up to 128 characters in length and cannot contain `http://` or `https://`. The tag value cannot start with `aliyun` or `acs:`.
     *
     * @example
     * FinanceJoshua
     */
    value?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class CreateIpv4GatewayRequest extends $dara.Model {
    /**
     * @remarks
     * The client token that is used to ensure the idempotence of the request.
     *
     * You can use the client to generate the value, but you must make sure that it is unique among different requests. ClientToken can contain only ASCII characters.
     *
     * >  If you do not set this parameter, the system sets **ClientToken** to the value of **RequestId**. The value of **RequestId** for each API request is different.
     *
     * @example
     * 123e4567-e89b-12d3-a456-426655440000
     */
    clientToken?: string;
    /**
     * @remarks
     * Specifies whether to perform a dry run. Valid values:
     *
     * *   **true**: performs a dry run. The system checks the required parameters, request syntax, and limits. If the request fails the dry run, an error message is returned. If the request passes the dry run, the `DryRunOperation` error code is returned.
     * *   **false** (default): performs a dry run and sends the request. If the request passes the dry run, a 2xx HTTP status code is returned and the operation is performed.
     *
     * @example
     * false
     */
    dryRun?: boolean;
    /**
     * @remarks
     * The description of the IPv4 gateway.
     *
     * The description must be 1 to 256 characters in length and cannot start with `http://` or `https://`.
     *
     * @example
     * test
     */
    ipv4GatewayDescription?: string;
    /**
     * @remarks
     * The name of the IPv4 gateway.
     *
     * The name must be 1 to 128 characters in length, and cannot start with `http://` or `https://`.
     *
     * @example
     * ipv4
     */
    ipv4GatewayName?: string;
    ownerAccount?: string;
    ownerId?: number;
    /**
     * @remarks
     * The ID of the region where you want to create the IPv4 gateway.
     *
     * You can call the [DescribeRegions](https://help.aliyun.com/document_detail/36063.html) operation to query the most recent region list.
     *
     * This parameter is required.
     *
     * @example
     * ap-southeast-6
     */
    regionId?: string;
    /**
     * @remarks
     * The ID of the resource group.
     *
     * @example
     * rg-acfmxazb4ph6aiy****
     */
    resourceGroupId?: string;
    resourceOwnerAccount?: string;
    resourceOwnerId?: number;
    /**
     * @remarks
     * The tags of the resource.
     */
    tag?: CreateIpv4GatewayRequestTag[];
    /**
     * @remarks
     * The ID of the VPC where you want to create the IPv4 gateway.
     *
     * You can create only one IPv4 gateway in a VPC.
     *
     * This parameter is required.
     *
     * @example
     * vpc-5tss06uvoyps5xoya****
     */
    vpcId?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
