"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");
/**
 * ioa client
 * @class
 */
class Client extends abstract_client_1.AbstractClient {
    constructor(clientConfig) {
        super("ioa.tencentcloudapi.com", "2022-06-01", clientConfig);
    }
    /**
     * 聚合软件的已安装终端列表
     */
    async DescribeAggrSoftDeviceList(req, cb) {
        return this.request("DescribeAggrSoftDeviceList", req, cb);
    }
    /**
     * 获取企业目录配置
     */
    async DescribeCompanyDirectoryConfig(req, cb) {
        return this.request("DescribeCompanyDirectoryConfig", req, cb);
    }
    /**
     * 添加资源授权到账号组
     */
    async GrantResourcesByAccounts(req, cb) {
        return this.request("GrantResourcesByAccounts", req, cb);
    }
    /**
     * 删除终端自定义分组，私有化调用path为：/capi/Assets/Device/DeleteDeviceVirtualGroup
     */
    async DeleteDeviceVirtualGroup(req, cb) {
        return this.request("DeleteDeviceVirtualGroup", req, cb);
    }
    /**
     * 创建终端导出任务，私有化调用path为：capi/Assets/Device/ExportDeviceDownloadTask
     */
    async ExportDeviceDownloadTask(req, cb) {
        return this.request("ExportDeviceDownloadTask", req, cb);
    }
    /**
     * 创建获取终端进程网络服务信息任务，私有化调用path为：capi/Assets/Device/DescribeDeviceInfo
     */
    async CreateDeviceTask(req, cb) {
        return this.request("CreateDeviceTask", req, cb);
    }
    /**
     * 查看指定终端的软件详情列表,私有化调用path为：capi/Software/DescribeSoftwareInformation
     */
    async DescribeSoftwareInformation(req, cb) {
        return this.request("DescribeSoftwareInformation", req, cb);
    }
    /**
     * 列表账户组直接关联的资源，私有化调用path为：capi/NGN/DescribeResourceGrantedAccounts
     */
    async DescribeResourceGrantedAccountGroups(req, cb) {
        return this.request("DescribeResourceGrantedAccountGroups", req, cb);
    }
    /**
     * 创建文件鉴定任务，私有化调用path为：capi/DlpOpenApi/CreateDLPFileDetectTask
     */
    async CreateDLPFileDetectTask(req, cb) {
        return this.request("CreateDLPFileDetectTask", req, cb);
    }
    /**
     * 编辑企业目录配置
     */
    async ModifyCompanyDirectoryConfig(req, cb) {
        return this.request("ModifyCompanyDirectoryConfig", req, cb);
    }
    /**
     * 创建企业目录配置
     */
    async CreateCompanyDirectoryConfig(req, cb) {
        return this.request("CreateCompanyDirectoryConfig", req, cb);
    }
    /**
     * 创建终端自定义分组，私有化调用path为：/capi/Assets/Device/CreateDeviceVirtualGroup
     */
    async CreateDeviceVirtualGroup(req, cb) {
        return this.request("CreateDeviceVirtualGroup", req, cb);
    }
    /**
     * 查询文件鉴定任务结果
     */
    async DescribeDLPFileDetectTaskResult(req, cb) {
        return this.request("DescribeDLPFileDetectTaskResult", req, cb);
    }
    /**
     * 展示自定义分组终端列表，私有化调用path为：/capi/Assets/DescribeVirtualDevices
     */
    async DescribeVirtualDevices(req, cb) {
        return this.request("DescribeVirtualDevices", req, cb);
    }
    /**
     * 导出基于指定终端查看软件信息详情列表查询,私有化调用path为：capi/Software/ExportSoftwareInformationList
     */
    async ExportSoftwareInformationList(req, cb) {
        return this.request("ExportSoftwareInformationList", req, cb);
    }
    /**
     * 提交送检任务
     */
    async CreateDLPFileDetectionTask(req, cb) {
        return this.request("CreateDLPFileDetectionTask", req, cb);
    }
    /**
     * 生成特权码，私有化调用path为：capi/Assets/Device/CreatePrivilegeCode，生成的特权码、卸载码，仅对该设备当天有效
     */
    async CreatePrivilegeCode(req, cb) {
        return this.request("CreatePrivilegeCode", req, cb);
    }
    /**
     * 查询账号根分组详情。对应“用户与授权管理”里内置不可见的全网根账号组，所有新建的目录，都挂在该全网根账号组下。
     */
    async DescribeRootAccountGroup(req, cb) {
        return this.request("DescribeRootAccountGroup", req, cb);
    }
    /**
     * webservice查询文件检测结果
     */
    async DescribeDLPFileDetectResult(req, cb) {
        return this.request("DescribeDLPFileDetectResult", req, cb);
    }
    /**
     * 列表账户组直接关联的资源，私有化调用path为：capi/NGN/DescribeResourceGrantedAccounts
     */
    async DescribeResourceGrantedAccounts(req, cb) {
        return this.request("DescribeResourceGrantedAccounts", req, cb);
    }
    /**
     * 聚合的分类软件列表
     */
    async DescribeAggrSoftCategorySoftList(req, cb) {
        return this.request("DescribeAggrSoftCategorySoftList", req, cb);
    }
    /**
     * 查询边缘节点列表，私有化调用path为：capi/DlpOpenApi/DescribeDLPEdgeNodes
     */
    async DescribeDLPEdgeNodes(req, cb) {
        return this.request("DescribeDLPEdgeNodes", req, cb);
    }
    /**
     * saas版本，创建/修改业务资源后，调用绑定连接器接口,私有化调用path为：capi/GatewayResource/BindBusinessResourceConnectorGroup
     */
    async BindBusinessResourceConnectorGroup(req, cb) {
        return this.request("BindBusinessResourceConnectorGroup", req, cb);
    }
    /**
     * 列表账户组直接关联的资源，私有化调用path为：capi/NGN/DescribeDirectAccountGroupResources
     */
    async DescribeDirectAccountGroupResources(req, cb) {
        return this.request("DescribeDirectAccountGroupResources", req, cb);
    }
    /**
     * 添加资源授权到账号组
     */
    async GrantResourcesByAccountGroups(req, cb) {
        return this.request("GrantResourcesByAccountGroups", req, cb);
    }
    /**
     * 创建业务资源，会对一些必填参数进行校验和参数合法性校验，创建业务资源时，先调用下校验相同业务资源接口，看资源是不是有冲突。创建时也会做校验，但没有返回对应的异常信息，私有化调用path为：capi/GatewayResource/CreateBusinessResource
     */
    async CreateBusinessResource(req, cb) {
        return this.request("CreateBusinessResource", req, cb);
    }
    /**
     * 聚合的软件详情
     */
    async DescribeAggrSoftDetail(req, cb) {
        return this.request("DescribeAggrSoftDetail", req, cb);
    }
    /**
     * 获取终端进程网络服务信息，私有化调用path为：capi/Assets/Device/DescribeDeviceInfo
     */
    async DescribeDeviceInfo(req, cb) {
        return this.request("DescribeDeviceInfo", req, cb);
    }
    /**
     * 查询满足条件的查询终端硬件信息列表，私有化调用path为：/capi/Assets/Device/DescribeDeviceHardwareInfoList
     */
    async DescribeDeviceHardwareInfoList(req, cb) {
        return this.request("DescribeDeviceHardwareInfoList", req, cb);
    }
    /**
     * 查询设备组子分组详情，私有化调用path为：capi/Assets/Device/DescribeDeviceChildGroups
     */
    async DescribeDeviceChildGroups(req, cb) {
        return this.request("DescribeDeviceChildGroups", req, cb);
    }
    /**
     * 以分页的方式查询账号分组列表，私有化调用path为：/capi/Assets/DescribeAccountGroups
     */
    async DescribeAccountGroups(req, cb) {
        return this.request("DescribeAccountGroups", req, cb);
    }
    /**
     * 基于软件查看终端详情列表,私有化调用path为：capi/Software/DescribeDeviceDetailList
     */
    async DescribeDeviceDetailList(req, cb) {
        return this.request("DescribeDeviceDetailList", req, cb);
    }
    /**
     * 给接入设备加黑加白,私有化调用path为：capi/NGN/ModifyDeviceTrustStatus
     */
    async ModifyDeviceTrustStatus(req, cb) {
        return this.request("ModifyDeviceTrustStatus", req, cb);
    }
    /**
     * 获取账号列表，支持分页，模糊搜索，私有化调用path为：/capi/Assets/Account/DescribeLocalAccounts
     */
    async DescribeLocalAccounts(req, cb) {
        return this.request("DescribeLocalAccounts", req, cb);
    }
    /**
     * 修改业务资源，会对一些必填参数进行校验和参数合法性校验，修改业务资源时，先调用下校验相同业务资源接口，看资源是不是有冲突。修改时也会做校验，但没有返回对应的异常信息,私有化调用path为：capi/GatewayResource/ModifyBusinessResource
     */
    async ModifyBusinessResource(req, cb) {
        return this.request("ModifyBusinessResource", req, cb);
    }
    /**
     * 查询边缘节点分组，私有化调用path为：capi/Connectors/DescribeDLPEdgeNodeGroups
     */
    async DescribeDLPEdgeNodeGroups(req, cb) {
        return this.request("DescribeDLPEdgeNodeGroups", req, cb);
    }
    /**
     * 查询满足条件的终端数据详情，私有化调用path为：/capi/Assets/Device/DescribeDevices
     */
    async DescribeDevices(req, cb) {
        return this.request("DescribeDevices", req, cb);
    }
    /**
     * 查询终端自定义分组列表，私有化调用path为：/capi/Assets/Device/DescribeDeviceVirtualGroups
     */
    async DescribeDeviceVirtualGroups(req, cb) {
        return this.request("DescribeDeviceVirtualGroups", req, cb);
    }
    /**
     * 添加资源授权到账号组
     */
    async GrantResourcesByVirtualGroups(req, cb) {
        return this.request("GrantResourcesByVirtualGroups", req, cb);
    }
    /**
     * 查看终端树下的软件列表,私有化调用path为：capi/Software/DescribeSoftCensusListByDevice
     */
    async DescribeSoftCensusListByDevice(req, cb) {
        return this.request("DescribeSoftCensusListByDevice", req, cb);
    }
    /**
     * 终端自定义分组增减终端，私有化调用path为：/capi/Assets/Device/ModifyVirtualDeviceGroups
     */
    async ModifyVirtualDeviceGroups(req, cb) {
        return this.request("ModifyVirtualDeviceGroups", req, cb);
    }
    /**
     * 获取业务资源列表,支持分页，如果分页信息不传递会有默认分页，支持排序，不传排序字段，按业务资源创建时间排序,私有化调用path为：capi/GatewayResource/DescribeBusinessResources
     */
    async DescribeBusinessResources(req, cb) {
        return this.request("DescribeBusinessResources", req, cb);
    }
    /**
     * 列表账户组直接关联的资源，私有化调用path为：capi/NGN/DescribeResourceGrantedVirtualGroups
     */
    async DescribeResourceGrantedVirtualGroups(req, cb) {
        return this.request("DescribeResourceGrantedVirtualGroups", req, cb);
    }
}
exports.Client = Client;
