import * as $dara from '@darabonba/typescript';
export declare class DescribeDisksResponseBodyDisksDiskAttachmentsAttachment extends $dara.Model {
    attachedTime?: string;
    device?: string;
    instanceId?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeDisksResponseBodyDisksDiskAttachments extends $dara.Model {
    attachment?: DescribeDisksResponseBodyDisksDiskAttachmentsAttachment[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeDisksResponseBodyDisksDiskMountInstancesMountInstance extends $dara.Model {
    attachedTime?: string;
    device?: string;
    instanceId?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeDisksResponseBodyDisksDiskMountInstances extends $dara.Model {
    mountInstance?: DescribeDisksResponseBodyDisksDiskMountInstancesMountInstance[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeDisksResponseBodyDisksDiskOperationLocksOperationLock extends $dara.Model {
    lockReason?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeDisksResponseBodyDisksDiskOperationLocks extends $dara.Model {
    operationLock?: DescribeDisksResponseBodyDisksDiskOperationLocksOperationLock[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeDisksResponseBodyDisksDiskPlacement extends $dara.Model {
    zoneIds?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeDisksResponseBodyDisksDiskTagsTag extends $dara.Model {
    tagKey?: string;
    tagValue?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeDisksResponseBodyDisksDiskTags extends $dara.Model {
    tag?: DescribeDisksResponseBodyDisksDiskTagsTag[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeDisksResponseBodyDisksDisk extends $dara.Model {
    attachedTime?: string;
    attachments?: DescribeDisksResponseBodyDisksDiskAttachments;
    autoSnapshotPolicyId?: string;
    bdfId?: string;
    burstingEnabled?: boolean;
    category?: string;
    creationTime?: string;
    deleteAutoSnapshot?: boolean;
    deleteWithInstance?: boolean;
    description?: string;
    detachedTime?: string;
    device?: string;
    diskChargeType?: string;
    diskId?: string;
    diskName?: string;
    enableAutoSnapshot?: boolean;
    enableAutomatedSnapshotPolicy?: boolean;
    encrypted?: boolean;
    expiredTime?: string;
    IOPS?: number;
    IOPSRead?: number;
    IOPSWrite?: number;
    imageId?: string;
    instanceId?: string;
    KMSKeyId?: string;
    mountInstanceNum?: number;
    mountInstances?: DescribeDisksResponseBodyDisksDiskMountInstances;
    multiAttach?: string;
    operationLocks?: DescribeDisksResponseBodyDisksDiskOperationLocks;
    performanceLevel?: string;
    placement?: DescribeDisksResponseBodyDisksDiskPlacement;
    portable?: boolean;
    productCode?: string;
    provisionedIops?: number;
    regionId?: string;
    resourceGroupId?: string;
    serialNumber?: string;
    size?: number;
    /**
     * @example
     * d-123*********
     */
    sourceDiskId?: string;
    sourceSnapshotId?: string;
    status?: string;
    storageClusterId?: string;
    storageSetId?: string;
    storageSetPartitionNumber?: number;
    tags?: DescribeDisksResponseBodyDisksDiskTags;
    throughput?: number;
    throughputRead?: number;
    throughputWrite?: number;
    type?: string;
    zoneId?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeDisksResponseBodyDisks extends $dara.Model {
    disk?: DescribeDisksResponseBodyDisksDisk[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeDisksResponseBody extends $dara.Model {
    disks?: DescribeDisksResponseBodyDisks;
    /**
     * @remarks
     * The returned pagination token which can be used in the next request to retrieve a new page of results.
     *
     * @example
     * AAAAAdDWBF2****
     */
    nextToken?: string;
    /**
     * @remarks
     * >  This parameter will be removed in the future. We recommend that you use `NextToken` and `MaxResults` for a paged query.
     *
     * @example
     * 1
     */
    pageNumber?: number;
    /**
     * @remarks
     * >  This parameter will be removed in the future. We recommend that you use `NextToken` and `MaxResults` for a paged query.
     *
     * @example
     * 1
     */
    pageSize?: number;
    /**
     * @remarks
     * The request ID.
     *
     * @example
     * 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E
     */
    requestId?: string;
    /**
     * @remarks
     * The total number of entries returned.
     *
     * > When using the `MaxResults` and `NextToken` parameters for a paginated query, the returned `TotalCount` parameter value is invalid.
     *
     * @example
     * 15
     */
    totalCount?: number;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
