import * as $dara from '@darabonba/typescript';
export declare class CopyImageRequestTag extends $dara.Model {
    /**
     * @remarks
     * The key of tag N of the image copy. 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 contain `http://` or `https://`. The tag key cannot start with `aliyun` or `acs:`.
     *
     * @example
     * TestKey
     */
    key?: string;
    /**
     * @remarks
     * The value of tag N of the image copy. Valid values of N: 1 to 20. The tag value can be an empty string. The tag value 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 CopyImageRequest extends $dara.Model {
    /**
     * @remarks
     * The client token that you want to use to ensure the idempotence of the request. You can use the client to generate the value, but you ensure sure that the value 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 image copy. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.
     *
     * @example
     * This is a description example.
     */
    destinationDescription?: string;
    /**
     * @remarks
     * The name of the new image. The name must be 2 to 128 characters in length. The name must start with a letter and cannot contain `http://` or `https://`. The name cannot start with `acs:` or `aliyun`. The name can contain letters, digits, periods (.), colons (:), underscores (_), and hyphens (-).
     *
     * @example
     * YourImageName
     */
    destinationImageName?: string;
    /**
     * @remarks
     * The ID of the destination region to which the source custom image is copied.
     *
     * @example
     * cn-shanghai
     */
    destinationRegionId?: string;
    /**
     * @remarks
     * Specifies whether to perform only a dry run, without performing the actual request. Specifies whether to check the image used by the instance supports hot migration. Valid values:
     *
     * *   true: performs only a dry run. The system checks the request for potential issues, including invalid AccessKey pairs, unauthorized RAM users, and missing parameter values. 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: performs a dry run and performs the actual request. If the request passes the dry run, a 2xx HTTP status code is returned and the operation is performed.
     *
     * Default value: false.
     *
     * @example
     * false
     */
    dryRun?: boolean;
    /**
     * @remarks
     * > This parameter is unavailable.
     *
     * @example
     * hide
     */
    encryptAlgorithm?: string;
    /**
     * @remarks
     * Specifies whether to encrypt the new image.
     *
     * *   true
     * *   false
     *
     * Default value: false.
     *
     * @example
     * false
     */
    encrypted?: boolean;
    /**
     * @remarks
     * The ID of the source custom image.
     *
     * This parameter is required.
     *
     * @example
     * m-bp1h46wfpjsjastc****
     */
    imageId?: string;
    /**
     * @remarks
     * The ID of the key used to encrypt the image copy.
     *
     * @example
     * e522b26d-abf6-4e0d-b5da-04b7******3c
     */
    KMSKeyId?: string;
    ownerAccount?: string;
    ownerId?: number;
    /**
     * @remarks
     * The region ID of the source custom image. You can call the [DescribeRegions](https://help.aliyun.com/document_detail/25609.html) operation to query the most recent region list.
     *
     * This parameter is required.
     *
     * @example
     * cn-hangzhou
     */
    regionId?: string;
    /**
     * @remarks
     * The ID of the resource group to which to assign the new image. If you do not specify this parameter, the new image is assigned to the default resource group.
     *
     * >  If you call the CopyImage operation as a Resource Access Management (RAM) user who does not have the permissions to manage the default resource group and do not specify `ResourceGroupId`, the `Forbidden: User not authorized to operate on the specified resource` error message is returned. You must specify the ID of a resource group that the RAM user has the permissions to manage or grant the RAM user the permissions to manage the default resource group before you call the CopyImage operation again.
     *
     * @example
     * rg-bp67acfmxazb4p****
     */
    resourceGroupId?: string;
    resourceOwnerAccount?: string;
    resourceOwnerId?: number;
    /**
     * @remarks
     * The list of tags.
     */
    tag?: CopyImageRequestTag[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
