/**
 * KubeBlocks Cloud API
 * KubeBlocks Cloud API is a RESTful API for managing KubeBlocks Cloud resources.  The API is organized around REST.  Our API has predictable resource-oriented URLs, accepts `JSON-encoded` request bodies, returns `JSON-encoded` responses, and uses standard HTTP response codes, authentication, and verbs.  We use standard HTTP authentication and provide API keys to identify who you are. Your API keys carry many privileges, so be sure to keep them secret! Do not share your secret API keys in publicly accessible areas such as GitHub, client-side code, and so forth.
 *
 * The version of the OpenAPI document: 1.0.0
 * Contact: support@apecloud.com
 *
 * 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 { BackupRepoAccessMethod } from './backup-repo-access-method';
/**
 * backupRepo is the payload for KubeBlocks cluster backup repo
 * @export
 * @interface BackupRepo
 */
export interface BackupRepo {
    /**
     *
     * @type {BackupRepoAccessMethod}
     * @memberof BackupRepo
     */
    'accessMethod'?: BackupRepoAccessMethod;
    /**
     * the id of backup repo
     * @type {string}
     * @memberof BackupRepo
     */
    'id'?: string;
    /**
     * backupNums specifies the number of backups in the backupRepo
     * @type {number}
     * @memberof BackupRepo
     */
    'backupNums'?: number;
    /**
     * config specifies the configuration of the backupRepo
     * @type {{ [key: string]: string; }}
     * @memberof BackupRepo
     */
    'config': {
        [key: string]: string;
    };
    /**
     * createdAt specifies the creation time of the backupRepo
     * @type {string}
     * @memberof BackupRepo
     */
    'createdAt': string;
    /**
     * default specifies whether the backupRepo is the default backupRepo
     * @type {boolean}
     * @memberof BackupRepo
     */
    'default': boolean;
    /**
     * environmentId of the backupRepo
     * @type {string}
     * @memberof BackupRepo
     */
    'environmentId': string;
    /**
     * environmentName of the backupRepo
     * @type {string}
     * @memberof BackupRepo
     */
    'environmentName': string;
    /**
     * name of the backupRepo
     * @type {string}
     * @memberof BackupRepo
     */
    'name': string;
    /**
     * status specifies the status of the backupRepo
     * @type {string}
     * @memberof BackupRepo
     */
    'status'?: string;
    /**
     * the name of storage used by backup repo
     * @type {string}
     * @memberof BackupRepo
     */
    'storageName'?: string;
    /**
     * the id of storage used by backup repo
     * @type {string}
     * @memberof BackupRepo
     */
    'storageID'?: string;
    /**
     * storageProvider specifies the storage provider of the backupRepo
     * @type {string}
     * @memberof BackupRepo
     */
    'storageProvider': string;
    /**
     * totalSize specifies the total size of backups in the backupRepo
     * @type {string}
     * @memberof BackupRepo
     */
    'totalSize'?: string;
    /**
     * failedReason specifies the reason of the backupRepo failure
     * @type {string}
     * @memberof BackupRepo
     */
    'failedReason'?: string;
    /**
     * failedMessage specifies the message of the backupRepo failure
     * @type {string}
     * @memberof BackupRepo
     */
    'failedMessage'?: string;
}
//# sourceMappingURL=backup-repo.d.ts.map