import * as $dara from '@darabonba/typescript';
export declare class CreateSnapshotGroupRequestTag extends $dara.Model {
    /**
     * @remarks
     * The key of tag N of the snapshot-consistent group. Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot start with `acs:` or `aliyun`. It cannot contain `http://` or `https://`.
     *
     * @example
     * TestKey
     */
    key?: string;
    /**
     * @remarks
     * The value of tag N of the snapshot-consistent group. Valid values of N: 1 to 20. The tag value can be an empty string. It can be up to 128 characters in length and cannot start with `acs:`. It cannot contain `http://` or `https://`.
     *
     * @example
     * TestValue
     */
    value?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class CreateSnapshotGroupRequest 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 token, but you must make sure that the token is unique among different requests. The token can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](https://help.aliyun.com/document_detail/25693.html).
     *
     * @example
     * 123e4567-e89b-12d3-a456-426655440000
     */
    clientToken?: string;
    /**
     * @remarks
     * The description of the snapshot-consistent group. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.
     *
     * @example
     * This is description.
     */
    description?: string;
    /**
     * @remarks
     * The IDs of the cloud disks for which you want to create a snapshot-consistent group. You can specify the IDs of cloud disks that are attached to multiple instances within the same zone. Valid values of N: 1 to 16. A snapshot-consistent group can contain snapshots of up to 16 cloud disks whose total disk size does not exceed 32 TiB.
     *
     * Take note of the following:
     *
     * *   You cannot specify both the DiskId.N and `ExcludeDiskId.N` parameters in the same request.
     * *   If you specify `InstanceId`, you can specify the IDs of cloud disks that are attached only to the specified instance. You cannot specify the IDs of cloud disks that are attached to multiple instances.
     */
    diskId?: string[];
    /**
     * @remarks
     * The IDs of the cloud disks for which you do not want to create snapshots. After you specify the IDs of cloud disks, the snapshot-consistent group that you create does not contain the snapshots of the specified cloud disks. Valid values of N: 1 to 16.
     *
     * This parameter is empty by default, which indicates that snapshots are created for all disks of the instance.
     *
     * >  This parameter cannot be set at the same time as the `DiskId.N`.
     *
     * @example
     * d-j6cf7l0ewidb78lq****
     */
    excludeDiskId?: string[];
    /**
     * @remarks
     * The instance ID.
     *
     * @example
     * i-j6ca469urv8ei629****
     */
    instanceId?: string;
    /**
     * @remarks
     * Specifies whether to enable the instant access feature. Valid values:
     *
     * *   true
     * *   false
     *
     * Default value: false.
     *
     * >  This parameter is no longer used. By default, new standard snapshots of ESSDs are upgraded to instant access snapshots free of charge without the need for additional configurations. For more information, see [Use the instant access feature](https://help.aliyun.com/document_detail/193667.html).
     *
     * @example
     * false
     */
    instantAccess?: boolean;
    /**
     * @remarks
     * The number of days for which the instant access feature is available. Unit: days. Valid values: 1 to 65535.
     *
     * This parameter takes effect only when `InstantAccess` is set to true. The instant access feature is automatically disabled when the specified duration ends.
     *
     * This parameter is left empty by default, which indicates that the instant access feature is automatically disabled when the instant access snapshots are released.
     *
     * >  This parameter is no longer used. By default, new standard snapshots of ESSDs are upgraded to instant access snapshots free of charge without the need for additional configurations. For more information, see [Use the instant access feature](https://help.aliyun.com/document_detail/193667.html).
     *
     * @example
     * 1
     */
    instantAccessRetentionDays?: number;
    /**
     * @remarks
     * The name of the snapshot-consistent group. The name must be 2 to 128 characters in length. The name can contain letters, digits, periods (.), underscores (_), hyphens (-), and colons (:). It must start with a letter and cannot start with `http://` or `https://`.
     *
     * @example
     * testName
     */
    name?: string;
    ownerAccount?: string;
    ownerId?: number;
    /**
     * @remarks
     * The region ID of the instance. You can call the [DescribeRegions](https://help.aliyun.com/document_detail/25609.html) operation to query the most recent list of regions.
     *
     * This parameter is required.
     *
     * @example
     * cn-hangzhou
     */
    regionId?: string;
    /**
     * @remarks
     * The ID of the resource group to which the snapshot-consistent group belongs.
     *
     * @example
     * rg-bp67acfmxazb4p****
     */
    resourceGroupId?: string;
    resourceOwnerAccount?: string;
    resourceOwnerId?: number;
    /**
     * @remarks
     * > This parameter is unavailable for public use.
     *
     * @example
     * null
     */
    storageLocationArn?: string;
    /**
     * @remarks
     * The list of tags.
     */
    tag?: CreateSnapshotGroupRequestTag[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
