"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Client = void 0;
/* eslint-disable @typescript-eslint/no-unused-vars */
/*
 * Copyright (c) 2018 Tencent. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */
const abstract_client_1 = require("../../../common/abstract_client");
/**
 * tdmysql client
 * @class
 */
class Client extends abstract_client_1.AbstractClient {
    constructor(clientConfig) {
        super("tdmysql.tencentcloudapi.com", "2021-11-22", clientConfig);
    }
    /**
     * 查询实例备份策略 DescribeDBSBackupPolicy
     */
    async DescribeDBSBackupPolicy(req, cb) {
        return this.request("DescribeDBSBackupPolicy", req, cb);
    }
    /**
     * 本接口（DescribeDatabaseObjects）用于查询云数据库实例的数据库中的对象列表，包含表、存储过程、视图和函数。
     */
    async DescribeDatabaseObjects(req, cb) {
        return this.request("DescribeDatabaseObjects", req, cb);
    }
    /**
     * 本接口（CancelIsolateDBInstances）提供批量解除隔离实例功能
     */
    async CancelIsolateDBInstances(req, cb) {
        return this.request("CancelIsolateDBInstances", req, cb);
    }
    /**
     * 本接口（DescribeSaleInfo）提供查询可用售卖地域功能
     */
    async DescribeSaleInfo(req, cb) {
        return this.request("DescribeSaleInfo", req, cb);
    }
    /**
     * 本接口（CreateCloneInstance）提供创建克隆实例功能
     */
    async CreateCloneInstance(req, cb) {
        return this.request("CreateCloneInstance", req, cb);
    }
    /**
     * 本接口（DescribeUsers）提供查询用户列表功能
     */
    async DescribeUsers(req, cb) {
        return this.request("DescribeUsers", req, cb);
    }
    /**
     * 本接口（ModifyDBParameters）用于修改实例参数。
     */
    async ModifyDBParameters(req, cb) {
        return this.request("ModifyDBParameters", req, cb);
    }
    /**
     * 本接口（IsolateDBInstance）提供批量隔离实例功能
     */
    async IsolateDBInstance(req, cb) {
        return this.request("IsolateDBInstance", req, cb);
    }
    /**
     * 本接口（DescribeFlow）用于查询异步任务流程状态
     */
    async DescribeFlow(req, cb) {
        return this.request("DescribeFlow", req, cb);
    }
    /**
     * 本接口（DescribeDBParameters）用于获取实例的当前参数设置。
     */
    async DescribeDBParameters(req, cb) {
        return this.request("DescribeDBParameters", req, cb);
    }
    /**
     * 本接口（CreateDBInstances）提供批量创建实例功能
     */
    async CreateDBInstances(req, cb) {
        return this.request("CreateDBInstances", req, cb);
    }
    /**
     * 本接口（ModifyInstanceName）提供修改实例名称功能
     */
    async ModifyInstanceName(req, cb) {
        return this.request("ModifyInstanceName", req, cb);
    }
    /**
     * 查询实例归档日志列表 DescribeDBSArchiveLogs
     */
    async DescribeDBSArchiveLogs(req, cb) {
        return this.request("DescribeDBSArchiveLogs", req, cb);
    }
    /**
     * 本接口（DestroyInstances）提供批量销毁实例功能
     */
    async DestroyInstances(req, cb) {
        return this.request("DestroyInstances", req, cb);
    }
    /**
     * 本接口（ModifyAutoRenewFlag）用于修改自动续费标志
     */
    async ModifyAutoRenewFlag(req, cb) {
        return this.request("ModifyAutoRenewFlag", req, cb);
    }
    /**
     * 本接口(ModifyPrivileges)修改用户权限
     */
    async ModifyUserPrivileges(req, cb) {
        return this.request("ModifyUserPrivileges", req, cb);
    }
    /**
     * 查询实例备份集信息 DescribeDBSBackupSets
     */
    async DescribeDBSBackupSets(req, cb) {
        return this.request("DescribeDBSBackupSets", req, cb);
    }
    /**
     * 修改实例备份策略 ModifyDBSBackupPolicy
     */
    async ModifyDBSBackupPolicy(req, cb) {
        return this.request("ModifyDBSBackupPolicy", req, cb);
    }
    /**
     * 查询实例备份空间概览 DescribeDBSBackupStatistics
     */
    async DescribeDBSBackupStatistics(req, cb) {
        return this.request("DescribeDBSBackupStatistics", req, cb);
    }
    /**
     * 本接口（ModifyDBInstanceSecurityGroups）用于修改云数据库安全组
     */
    async ModifyDBInstanceSecurityGroups(req, cb) {
        return this.request("ModifyDBInstanceSecurityGroups", req, cb);
    }
    /**
     * 获取可恢复时间 DescribeDBSAvailableRecoveryTime
     */
    async DescribeDBSAvailableRecoveryTime(req, cb) {
        return this.request("DescribeDBSAvailableRecoveryTime", req, cb);
    }
    /**
     * 删除实例手工备份 DeleteDBSBackupSets
     */
    async DeleteDBSBackupSets(req, cb) {
        return this.request("DeleteDBSBackupSets", req, cb);
    }
    /**
     * 创建实例手工备份  CreateDBSBackup
     */
    async CreateDBSBackup(req, cb) {
        return this.request("CreateDBSBackup", req, cb);
    }
    /**
     * 本接口（RestartDBInstances）用于重启数据库实例
     */
    async RestartDBInstances(req, cb) {
        return this.request("RestartDBInstances", req, cb);
    }
    /**
     * 本接口（DescribeUserPrivileges）提供查询用户的权限功能
     */
    async DescribeUserPrivileges(req, cb) {
        return this.request("DescribeUserPrivileges", req, cb);
    }
    /**
     * 本接口（UpgradeInstance）提供纵向扩容实例功能
     */
    async UpgradeInstance(req, cb) {
        return this.request("UpgradeInstance", req, cb);
    }
    /**
     * 本接口（DescribeSpecs）提供查询售卖规格功能
     */
    async DescribeSpecs(req, cb) {
        return this.request("DescribeSpecs", req, cb);
    }
    /**
     * 查询备份集统计详情 DescribeDBSBackupStatisticsDetail
     */
    async DescribeDBSBackupStatisticsDetail(req, cb) {
        return this.request("DescribeDBSBackupStatisticsDetail", req, cb);
    }
    /**
     * 本接口（DescribeDatabases）用于查询云数据库实例的数据库列表。
     */
    async DescribeDatabases(req, cb) {
        return this.request("DescribeDatabases", req, cb);
    }
    /**
     * 本接口（DescribeDBInstances）提供查询实例列表功能
     */
    async DescribeDBInstances(req, cb) {
        return this.request("DescribeDBInstances", req, cb);
    }
    /**
     * 本接口（DescribeDBSecurityGroups）用于查询实例安全组信息
     */
    async DescribeDBSecurityGroups(req, cb) {
        return this.request("DescribeDBSecurityGroups", req, cb);
    }
    /**
     * 本接口（ExpandInstance）提供横向扩容实例功能
     */
    async ExpandInstance(req, cb) {
        return this.request("ExpandInstance", req, cb);
    }
    /**
     * 修改实例备份备注 ModifyDBSBackupSetComment
     */
    async ModifyDBSBackupSetComment(req, cb) {
        return this.request("ModifyDBSBackupSetComment", req, cb);
    }
    /**
     * 本接口（DescribeDBInstanceDetail）提供查询实例详情功能
     */
    async DescribeDBInstanceDetail(req, cb) {
        return this.request("DescribeDBInstanceDetail", req, cb);
    }
    /**
     * 查询实例克隆列表 DescribeDBSCloneInstances
     */
    async DescribeDBSCloneInstances(req, cb) {
        return this.request("DescribeDBSCloneInstances", req, cb);
    }
}
exports.Client = Client;
