/**
 * KubeBlocks Cloud Internal API
 * The Internal API is using for interaction of ApeCloud platform microservices.
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import type { ClusterType } from './cluster-type';
/**
 * KubeBlocks cluster information
 * @export
 * @interface ClusterListItem
 */
export interface ClusterListItem {
    /**
     * Cloud Provider
     * @type {string}
     * @memberof ClusterListItem
     */
    'cloudProvider': string;
    /**
     * Cloud Provider
     * @type {string}
     * @memberof ClusterListItem
     */
    'cloudRegion'?: string;
    /**
     * Availability Zones
     * @type {Array<string>}
     * @memberof ClusterListItem
     */
    'availabilityZones'?: Array<string>;
    /**
     * CreatedAt is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC. Populated by the system. Read-only. Null for lists
     * @type {string}
     * @memberof ClusterListItem
     */
    'createdAt': string;
    /**
     * Display name of cluster.
     * @type {string}
     * @memberof ClusterListItem
     */
    'displayName'?: string;
    /**
     * Cluster Application Engine
     * @type {string}
     * @memberof ClusterListItem
     */
    'engine': string;
    /**
     * Cluster topology mode
     * @type {string}
     * @memberof ClusterListItem
     */
    'mode'?: string;
    /**
     * Environment Name
     * @type {string}
     * @memberof ClusterListItem
     */
    'environmentName': string;
    /**
     * Environment Display Name
     * @type {string}
     * @memberof ClusterListItem
     */
    'environmentDisplayName'?: string;
    /**
     * ID of cluster
     * @type {string}
     * @memberof ClusterListItem
     */
    'id': string;
    /**
     * Name of cluster. Name must be unique within an Org
     * @type {string}
     * @memberof ClusterListItem
     */
    'name': string;
    /**
     * When two clusters have a relationship, parentId records the parent cluster id.Can be empty when there is no relationship
     * @type {string}
     * @memberof ClusterListItem
     */
    'parentId'?: string | null;
    /**
     * the name of parent cluster
     * @type {string}
     * @memberof ClusterListItem
     */
    'parentName'?: string | null;
    /**
     * the display name of parent cluster
     * @type {string}
     * @memberof ClusterListItem
     */
    'parentDisplayName'?: string | null;
    /**
     *
     * @type {ClusterType}
     * @memberof ClusterListItem
     */
    'clusterType'?: ClusterType | null;
    /**
     *
     * @type {number}
     * @memberof ClusterListItem
     */
    'delay'?: number | null;
    /**
     * Cluster Status
     * @type {string}
     * @memberof ClusterListItem
     */
    'status': string;
    /**
     * Cluster termination policy
     * @type {string}
     * @memberof ClusterListItem
     */
    'terminationPolicy': string;
    /**
     * UpdatedAt is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC. Populated by the system. Read-only. Null for lists
     * @type {string}
     * @memberof ClusterListItem
     */
    'updatedAt': string;
    /**
     * Cluster Application Version
     * @type {string}
     * @memberof ClusterListItem
     */
    'version': string;
    /**
     * Cluster main component classCode
     * @type {string}
     * @memberof ClusterListItem
     */
    'classCode'?: string;
    /**
     * Cluster main component storage
     * @type {string}
     * @memberof ClusterListItem
     */
    'storage'?: string;
    /**
     * Cluster main component codeShort
     * @type {string}
     * @memberof ClusterListItem
     */
    'codeShort'?: string;
    /**
     * Org Name
     * @type {string}
     * @memberof ClusterListItem
     */
    'orgName'?: string;
}
//# sourceMappingURL=cluster-list-item.d.ts.map