"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    var desc = Object.getOwnPropertyDescriptor(m, k);
    if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
      desc = { enumerable: true, get: function() { return m[k]; } };
    }
    Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
    Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
    o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
    var ownKeys = function(o) {
        ownKeys = Object.getOwnPropertyNames || function (o) {
            var ar = [];
            for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
            return ar;
        };
        return ownKeys(o);
    };
    return function (mod) {
        if (mod && mod.__esModule) return mod;
        var result = {};
        if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
        __setModuleDefault(result, mod);
        return result;
    };
})();
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.ReleaseGrayPercentSetRequest = exports.ReleaseGrayPercentSetHeaders = exports.ReleaseGrayPercentGetResponse = exports.ReleaseGrayPercentGetResponseBody = exports.ReleaseGrayPercentGetRequest = exports.ReleaseGrayPercentGetHeaders = exports.ReleaseGrayOrgSetResponse = exports.ReleaseGrayOrgSetResponseBody = exports.ReleaseGrayOrgSetRequest = exports.ReleaseGrayOrgSetHeaders = exports.ReleaseGrayOrgGetResponse = exports.ReleaseGrayOrgGetResponseBody = exports.ReleaseGrayOrgGetRequest = exports.ReleaseGrayOrgGetHeaders = exports.ReleaseGrayExitResponse = exports.ReleaseGrayExitResponseBody = exports.ReleaseGrayExitRequest = exports.ReleaseGrayExitHeaders = exports.ReleaseGrayDeployResponse = exports.ReleaseGrayDeployResponseBody = exports.ReleaseGrayDeployRequest = exports.ReleaseGrayDeployHeaders = exports.OpenMicroAppPackageResponse = exports.OpenMicroAppPackageResponseBody = exports.OpenMicroAppPackageRequest = exports.OpenMicroAppPackageHeaders = exports.HUploadPackageStatusResponse = exports.HUploadPackageStatusResponseBody = exports.HUploadPackageStatusRequest = exports.HUploadPackageStatusHeaders = exports.HUploadPackageResponse = exports.HUploadPackageResponseBody = exports.HUploadPackageRequest = exports.HUploadPackageHeaders = exports.HPublishPackageResponse = exports.HPublishPackageResponseBody = exports.HPublishPackageRequest = exports.HPublishPackageHeaders = exports.HPackageListGetResponse = exports.HPackageListGetResponseBody = exports.HPackageListGetRequest = exports.HPackageListGetHeaders = exports.GetUploadTokenResponse = exports.GetUploadTokenResponseBody = exports.GetUploadTokenRequest = exports.GetUploadTokenHeaders = exports.CloseHPackageResponse = exports.CloseHPackageResponseBody = exports.CloseHPackageRequest = exports.CloseHPackageHeaders = void 0;
exports.HPackageListGetResponseBodyList = exports.ReleaseGrayUserIdGetResponse = exports.ReleaseGrayUserIdGetResponseBody = exports.ReleaseGrayUserIdGetRequest = exports.ReleaseGrayUserIdGetHeaders = exports.ReleaseGrayPercentSetResponse = exports.ReleaseGrayPercentSetResponseBody = void 0;
// This file is auto-generated, don't edit it
/**
 */
const tea_util_1 = __importStar(require("@alicloud/tea-util")), $Util = tea_util_1;
const gateway_dingtalk_1 = __importDefault(require("@alicloud/gateway-dingtalk"));
const openapi_client_1 = __importStar(require("@alicloud/openapi-client")), $OpenApi = openapi_client_1;
const openapi_util_1 = __importDefault(require("@alicloud/openapi-util"));
const $tea = __importStar(require("@alicloud/tea-typescript"));
class CloseHPackageHeaders extends $tea.Model {
    static names() {
        return {
            commonHeaders: 'commonHeaders',
            xAcsDingtalkAccessToken: 'x-acs-dingtalk-access-token',
        };
    }
    static types() {
        return {
            commonHeaders: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            xAcsDingtalkAccessToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CloseHPackageHeaders = CloseHPackageHeaders;
class CloseHPackageRequest extends $tea.Model {
    static names() {
        return {
            miniAppId: 'miniAppId',
        };
    }
    static types() {
        return {
            miniAppId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CloseHPackageRequest = CloseHPackageRequest;
class CloseHPackageResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: 'any',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CloseHPackageResponseBody = CloseHPackageResponseBody;
class CloseHPackageResponse extends $tea.Model {
    static names() {
        return {
            headers: 'headers',
            statusCode: 'statusCode',
            body: 'body',
        };
    }
    static types() {
        return {
            headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            statusCode: 'number',
            body: CloseHPackageResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CloseHPackageResponse = CloseHPackageResponse;
class GetUploadTokenHeaders extends $tea.Model {
    static names() {
        return {
            commonHeaders: 'commonHeaders',
            xAcsDingtalkAccessToken: 'x-acs-dingtalk-access-token',
        };
    }
    static types() {
        return {
            commonHeaders: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            xAcsDingtalkAccessToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetUploadTokenHeaders = GetUploadTokenHeaders;
class GetUploadTokenRequest extends $tea.Model {
    static names() {
        return {
            miniAppId: 'miniAppId',
        };
    }
    static types() {
        return {
            miniAppId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetUploadTokenRequest = GetUploadTokenRequest;
class GetUploadTokenResponseBody extends $tea.Model {
    static names() {
        return {
            accessKeyId: 'accessKeyId',
            accessKeySecret: 'accessKeySecret',
            bucket: 'bucket',
            endpoint: 'endpoint',
            expiration: 'expiration',
            name: 'name',
            region: 'region',
            stsToken: 'stsToken',
        };
    }
    static types() {
        return {
            accessKeyId: 'string',
            accessKeySecret: 'string',
            bucket: 'string',
            endpoint: 'string',
            expiration: 'string',
            name: 'string',
            region: 'string',
            stsToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetUploadTokenResponseBody = GetUploadTokenResponseBody;
class GetUploadTokenResponse extends $tea.Model {
    static names() {
        return {
            headers: 'headers',
            statusCode: 'statusCode',
            body: 'body',
        };
    }
    static types() {
        return {
            headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            statusCode: 'number',
            body: GetUploadTokenResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetUploadTokenResponse = GetUploadTokenResponse;
class HPackageListGetHeaders extends $tea.Model {
    static names() {
        return {
            commonHeaders: 'commonHeaders',
            xAcsDingtalkAccessToken: 'x-acs-dingtalk-access-token',
        };
    }
    static types() {
        return {
            commonHeaders: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            xAcsDingtalkAccessToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.HPackageListGetHeaders = HPackageListGetHeaders;
class HPackageListGetRequest extends $tea.Model {
    static names() {
        return {
            miniAppId: 'miniAppId',
            pageNumber: 'pageNumber',
            pageSize: 'pageSize',
        };
    }
    static types() {
        return {
            miniAppId: 'string',
            pageNumber: 'number',
            pageSize: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.HPackageListGetRequest = HPackageListGetRequest;
class HPackageListGetResponseBody extends $tea.Model {
    static names() {
        return {
            list: 'list',
            totalCount: 'totalCount',
        };
    }
    static types() {
        return {
            list: { 'type': 'array', 'itemType': HPackageListGetResponseBodyList },
            totalCount: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.HPackageListGetResponseBody = HPackageListGetResponseBody;
class HPackageListGetResponse extends $tea.Model {
    static names() {
        return {
            headers: 'headers',
            statusCode: 'statusCode',
            body: 'body',
        };
    }
    static types() {
        return {
            headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            statusCode: 'number',
            body: HPackageListGetResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.HPackageListGetResponse = HPackageListGetResponse;
class HPublishPackageHeaders extends $tea.Model {
    static names() {
        return {
            commonHeaders: 'commonHeaders',
            xAcsDingtalkAccessToken: 'x-acs-dingtalk-access-token',
        };
    }
    static types() {
        return {
            commonHeaders: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            xAcsDingtalkAccessToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.HPublishPackageHeaders = HPublishPackageHeaders;
class HPublishPackageRequest extends $tea.Model {
    static names() {
        return {
            miniAppId: 'miniAppId',
            version: 'version',
        };
    }
    static types() {
        return {
            miniAppId: 'string',
            version: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.HPublishPackageRequest = HPublishPackageRequest;
class HPublishPackageResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
        };
    }
    static types() {
        return {
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.HPublishPackageResponseBody = HPublishPackageResponseBody;
class HPublishPackageResponse extends $tea.Model {
    static names() {
        return {
            headers: 'headers',
            statusCode: 'statusCode',
            body: 'body',
        };
    }
    static types() {
        return {
            headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            statusCode: 'number',
            body: HPublishPackageResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.HPublishPackageResponse = HPublishPackageResponse;
class HUploadPackageHeaders extends $tea.Model {
    static names() {
        return {
            commonHeaders: 'commonHeaders',
            xAcsDingtalkAccessToken: 'x-acs-dingtalk-access-token',
        };
    }
    static types() {
        return {
            commonHeaders: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            xAcsDingtalkAccessToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.HUploadPackageHeaders = HUploadPackageHeaders;
class HUploadPackageRequest extends $tea.Model {
    static names() {
        return {
            miniAppId: 'miniAppId',
            ossObjectKey: 'ossObjectKey',
        };
    }
    static types() {
        return {
            miniAppId: 'string',
            ossObjectKey: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.HUploadPackageRequest = HUploadPackageRequest;
class HUploadPackageResponseBody extends $tea.Model {
    static names() {
        return {
            taskId: 'taskId',
        };
    }
    static types() {
        return {
            taskId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.HUploadPackageResponseBody = HUploadPackageResponseBody;
class HUploadPackageResponse extends $tea.Model {
    static names() {
        return {
            headers: 'headers',
            statusCode: 'statusCode',
            body: 'body',
        };
    }
    static types() {
        return {
            headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            statusCode: 'number',
            body: HUploadPackageResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.HUploadPackageResponse = HUploadPackageResponse;
class HUploadPackageStatusHeaders extends $tea.Model {
    static names() {
        return {
            commonHeaders: 'commonHeaders',
            xAcsDingtalkAccessToken: 'x-acs-dingtalk-access-token',
        };
    }
    static types() {
        return {
            commonHeaders: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            xAcsDingtalkAccessToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.HUploadPackageStatusHeaders = HUploadPackageStatusHeaders;
class HUploadPackageStatusRequest extends $tea.Model {
    static names() {
        return {
            miniAppId: 'miniAppId',
            taskId: 'taskId',
        };
    }
    static types() {
        return {
            miniAppId: 'string',
            taskId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.HUploadPackageStatusRequest = HUploadPackageStatusRequest;
class HUploadPackageStatusResponseBody extends $tea.Model {
    static names() {
        return {
            buildTime: 'buildTime',
            finished: 'finished',
            packageSize: 'packageSize',
            status: 'status',
            taskId: 'taskId',
            version: 'version',
        };
    }
    static types() {
        return {
            buildTime: 'number',
            finished: 'boolean',
            packageSize: 'number',
            status: 'string',
            taskId: 'string',
            version: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.HUploadPackageStatusResponseBody = HUploadPackageStatusResponseBody;
class HUploadPackageStatusResponse extends $tea.Model {
    static names() {
        return {
            headers: 'headers',
            statusCode: 'statusCode',
            body: 'body',
        };
    }
    static types() {
        return {
            headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            statusCode: 'number',
            body: HUploadPackageStatusResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.HUploadPackageStatusResponse = HUploadPackageStatusResponse;
class OpenMicroAppPackageHeaders extends $tea.Model {
    static names() {
        return {
            commonHeaders: 'commonHeaders',
            xAcsDingtalkAccessToken: 'x-acs-dingtalk-access-token',
        };
    }
    static types() {
        return {
            commonHeaders: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            xAcsDingtalkAccessToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.OpenMicroAppPackageHeaders = OpenMicroAppPackageHeaders;
class OpenMicroAppPackageRequest extends $tea.Model {
    static names() {
        return {
            agentId: 'agentId',
        };
    }
    static types() {
        return {
            agentId: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.OpenMicroAppPackageRequest = OpenMicroAppPackageRequest;
class OpenMicroAppPackageResponseBody extends $tea.Model {
    static names() {
        return {
            miniAppId: 'miniAppId',
        };
    }
    static types() {
        return {
            miniAppId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.OpenMicroAppPackageResponseBody = OpenMicroAppPackageResponseBody;
class OpenMicroAppPackageResponse extends $tea.Model {
    static names() {
        return {
            headers: 'headers',
            statusCode: 'statusCode',
            body: 'body',
        };
    }
    static types() {
        return {
            headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            statusCode: 'number',
            body: OpenMicroAppPackageResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.OpenMicroAppPackageResponse = OpenMicroAppPackageResponse;
class ReleaseGrayDeployHeaders extends $tea.Model {
    static names() {
        return {
            commonHeaders: 'commonHeaders',
            xAcsDingtalkAccessToken: 'x-acs-dingtalk-access-token',
        };
    }
    static types() {
        return {
            commonHeaders: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            xAcsDingtalkAccessToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayDeployHeaders = ReleaseGrayDeployHeaders;
class ReleaseGrayDeployRequest extends $tea.Model {
    static names() {
        return {
            miniAppId: 'miniAppId',
            version: 'version',
        };
    }
    static types() {
        return {
            miniAppId: 'string',
            version: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayDeployRequest = ReleaseGrayDeployRequest;
class ReleaseGrayDeployResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: 'any',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayDeployResponseBody = ReleaseGrayDeployResponseBody;
class ReleaseGrayDeployResponse extends $tea.Model {
    static names() {
        return {
            headers: 'headers',
            statusCode: 'statusCode',
            body: 'body',
        };
    }
    static types() {
        return {
            headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            statusCode: 'number',
            body: ReleaseGrayDeployResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayDeployResponse = ReleaseGrayDeployResponse;
class ReleaseGrayExitHeaders extends $tea.Model {
    static names() {
        return {
            commonHeaders: 'commonHeaders',
            xAcsDingtalkAccessToken: 'x-acs-dingtalk-access-token',
        };
    }
    static types() {
        return {
            commonHeaders: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            xAcsDingtalkAccessToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayExitHeaders = ReleaseGrayExitHeaders;
class ReleaseGrayExitRequest extends $tea.Model {
    static names() {
        return {
            miniAppId: 'miniAppId',
            version: 'version',
        };
    }
    static types() {
        return {
            miniAppId: 'string',
            version: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayExitRequest = ReleaseGrayExitRequest;
class ReleaseGrayExitResponseBody extends $tea.Model {
    static names() {
        return {
            reuslt: 'reuslt',
        };
    }
    static types() {
        return {
            reuslt: 'any',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayExitResponseBody = ReleaseGrayExitResponseBody;
class ReleaseGrayExitResponse extends $tea.Model {
    static names() {
        return {
            headers: 'headers',
            statusCode: 'statusCode',
            body: 'body',
        };
    }
    static types() {
        return {
            headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            statusCode: 'number',
            body: ReleaseGrayExitResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayExitResponse = ReleaseGrayExitResponse;
class ReleaseGrayOrgGetHeaders extends $tea.Model {
    static names() {
        return {
            commonHeaders: 'commonHeaders',
            xAcsDingtalkAccessToken: 'x-acs-dingtalk-access-token',
        };
    }
    static types() {
        return {
            commonHeaders: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            xAcsDingtalkAccessToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayOrgGetHeaders = ReleaseGrayOrgGetHeaders;
class ReleaseGrayOrgGetRequest extends $tea.Model {
    static names() {
        return {
            miniAppId: 'miniAppId',
            version: 'version',
        };
    }
    static types() {
        return {
            miniAppId: 'string',
            version: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayOrgGetRequest = ReleaseGrayOrgGetRequest;
class ReleaseGrayOrgGetResponseBody extends $tea.Model {
    static names() {
        return {
            value: 'value',
        };
    }
    static types() {
        return {
            value: { 'type': 'array', 'itemType': 'string' },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayOrgGetResponseBody = ReleaseGrayOrgGetResponseBody;
class ReleaseGrayOrgGetResponse extends $tea.Model {
    static names() {
        return {
            headers: 'headers',
            statusCode: 'statusCode',
            body: 'body',
        };
    }
    static types() {
        return {
            headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            statusCode: 'number',
            body: ReleaseGrayOrgGetResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayOrgGetResponse = ReleaseGrayOrgGetResponse;
class ReleaseGrayOrgSetHeaders extends $tea.Model {
    static names() {
        return {
            commonHeaders: 'commonHeaders',
            xAcsDingtalkAccessToken: 'x-acs-dingtalk-access-token',
        };
    }
    static types() {
        return {
            commonHeaders: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            xAcsDingtalkAccessToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayOrgSetHeaders = ReleaseGrayOrgSetHeaders;
class ReleaseGrayOrgSetRequest extends $tea.Model {
    static names() {
        return {
            miniAppId: 'miniAppId',
            value: 'value',
            version: 'version',
        };
    }
    static types() {
        return {
            miniAppId: 'string',
            value: { 'type': 'array', 'itemType': 'string' },
            version: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayOrgSetRequest = ReleaseGrayOrgSetRequest;
class ReleaseGrayOrgSetResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: 'any',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayOrgSetResponseBody = ReleaseGrayOrgSetResponseBody;
class ReleaseGrayOrgSetResponse extends $tea.Model {
    static names() {
        return {
            headers: 'headers',
            statusCode: 'statusCode',
            body: 'body',
        };
    }
    static types() {
        return {
            headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            statusCode: 'number',
            body: ReleaseGrayOrgSetResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayOrgSetResponse = ReleaseGrayOrgSetResponse;
class ReleaseGrayPercentGetHeaders extends $tea.Model {
    static names() {
        return {
            commonHeaders: 'commonHeaders',
            xAcsDingtalkAccessToken: 'x-acs-dingtalk-access-token',
        };
    }
    static types() {
        return {
            commonHeaders: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            xAcsDingtalkAccessToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayPercentGetHeaders = ReleaseGrayPercentGetHeaders;
class ReleaseGrayPercentGetRequest extends $tea.Model {
    static names() {
        return {
            miniAppId: 'miniAppId',
            version: 'version',
        };
    }
    static types() {
        return {
            miniAppId: 'string',
            version: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayPercentGetRequest = ReleaseGrayPercentGetRequest;
class ReleaseGrayPercentGetResponseBody extends $tea.Model {
    static names() {
        return {
            value: 'value',
        };
    }
    static types() {
        return {
            value: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayPercentGetResponseBody = ReleaseGrayPercentGetResponseBody;
class ReleaseGrayPercentGetResponse extends $tea.Model {
    static names() {
        return {
            headers: 'headers',
            statusCode: 'statusCode',
            body: 'body',
        };
    }
    static types() {
        return {
            headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            statusCode: 'number',
            body: ReleaseGrayPercentGetResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayPercentGetResponse = ReleaseGrayPercentGetResponse;
class ReleaseGrayPercentSetHeaders extends $tea.Model {
    static names() {
        return {
            commonHeaders: 'commonHeaders',
            xAcsDingtalkAccessToken: 'x-acs-dingtalk-access-token',
        };
    }
    static types() {
        return {
            commonHeaders: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            xAcsDingtalkAccessToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayPercentSetHeaders = ReleaseGrayPercentSetHeaders;
class ReleaseGrayPercentSetRequest extends $tea.Model {
    static names() {
        return {
            miniAppId: 'miniAppId',
            value: 'value',
            version: 'version',
        };
    }
    static types() {
        return {
            miniAppId: 'string',
            value: 'number',
            version: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayPercentSetRequest = ReleaseGrayPercentSetRequest;
class ReleaseGrayPercentSetResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: 'any',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayPercentSetResponseBody = ReleaseGrayPercentSetResponseBody;
class ReleaseGrayPercentSetResponse extends $tea.Model {
    static names() {
        return {
            headers: 'headers',
            statusCode: 'statusCode',
            body: 'body',
        };
    }
    static types() {
        return {
            headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            statusCode: 'number',
            body: ReleaseGrayPercentSetResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayPercentSetResponse = ReleaseGrayPercentSetResponse;
class ReleaseGrayUserIdGetHeaders extends $tea.Model {
    static names() {
        return {
            commonHeaders: 'commonHeaders',
            xAcsDingtalkAccessToken: 'x-acs-dingtalk-access-token',
        };
    }
    static types() {
        return {
            commonHeaders: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            xAcsDingtalkAccessToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayUserIdGetHeaders = ReleaseGrayUserIdGetHeaders;
class ReleaseGrayUserIdGetRequest extends $tea.Model {
    static names() {
        return {
            miniAppId: 'miniAppId',
            version: 'version',
        };
    }
    static types() {
        return {
            miniAppId: 'string',
            version: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayUserIdGetRequest = ReleaseGrayUserIdGetRequest;
class ReleaseGrayUserIdGetResponseBody extends $tea.Model {
    static names() {
        return {
            value: 'value',
        };
    }
    static types() {
        return {
            value: { 'type': 'array', 'itemType': 'string' },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayUserIdGetResponseBody = ReleaseGrayUserIdGetResponseBody;
class ReleaseGrayUserIdGetResponse extends $tea.Model {
    static names() {
        return {
            headers: 'headers',
            statusCode: 'statusCode',
            body: 'body',
        };
    }
    static types() {
        return {
            headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            statusCode: 'number',
            body: ReleaseGrayUserIdGetResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ReleaseGrayUserIdGetResponse = ReleaseGrayUserIdGetResponse;
class HPackageListGetResponseBodyList extends $tea.Model {
    static names() {
        return {
            avaliable: 'avaliable',
            creator: 'creator',
            finished: 'finished',
            operationTime: 'operationTime',
            packageSize: 'packageSize',
            status: 'status',
            taskId: 'taskId',
            version: 'version',
        };
    }
    static types() {
        return {
            avaliable: 'number',
            creator: 'string',
            finished: 'boolean',
            operationTime: 'number',
            packageSize: 'number',
            status: 'string',
            taskId: 'string',
            version: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.HPackageListGetResponseBodyList = HPackageListGetResponseBodyList;
class Client extends openapi_client_1.default {
    constructor(config) {
        super(config);
        let gatewayClient = new gateway_dingtalk_1.default();
        this._spi = gatewayClient;
        this._endpointRule = "";
        if (tea_util_1.default.empty(this._endpoint)) {
            this._endpoint = "api.dingtalk.com";
        }
    }
    /**
     * 关闭企业自建应用H5离线包
     *
     * @param request - CloseHPackageRequest
     * @param headers - CloseHPackageHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns CloseHPackageResponse
     */
    async closeHPackageWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.miniAppId)) {
            body["miniAppId"] = request.miniAppId;
        }
        let realHeaders = {};
        if (!tea_util_1.default.isUnset(headers.commonHeaders)) {
            realHeaders = headers.commonHeaders;
        }
        if (!tea_util_1.default.isUnset(headers.xAcsDingtalkAccessToken)) {
            realHeaders["x-acs-dingtalk-access-token"] = tea_util_1.default.toJSONString(headers.xAcsDingtalkAccessToken);
        }
        let req = new $OpenApi.OpenApiRequest({
            headers: realHeaders,
            body: openapi_util_1.default.parseToMap(body),
        });
        let params = new $OpenApi.Params({
            action: "CloseHPackage",
            version: "package_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/package/h5/microApps/close`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new CloseHPackageResponse({}));
    }
    /**
     * 关闭企业自建应用H5离线包
     *
     * @param request - CloseHPackageRequest
     * @returns CloseHPackageResponse
     */
    async closeHPackage(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new CloseHPackageHeaders({});
        return await this.closeHPackageWithOptions(request, headers, runtime);
    }
    /**
     * 获取离线包上传凭证
     *
     * @param request - GetUploadTokenRequest
     * @param headers - GetUploadTokenHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GetUploadTokenResponse
     */
    async getUploadTokenWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.miniAppId)) {
            query["miniAppId"] = request.miniAppId;
        }
        let realHeaders = {};
        if (!tea_util_1.default.isUnset(headers.commonHeaders)) {
            realHeaders = headers.commonHeaders;
        }
        if (!tea_util_1.default.isUnset(headers.xAcsDingtalkAccessToken)) {
            realHeaders["x-acs-dingtalk-access-token"] = tea_util_1.default.toJSONString(headers.xAcsDingtalkAccessToken);
        }
        let req = new $OpenApi.OpenApiRequest({
            headers: realHeaders,
            query: openapi_util_1.default.query(query),
        });
        let params = new $OpenApi.Params({
            action: "GetUploadToken",
            version: "package_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/package/uploadTokens`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new GetUploadTokenResponse({}));
    }
    /**
     * 获取离线包上传凭证
     *
     * @param request - GetUploadTokenRequest
     * @returns GetUploadTokenResponse
     */
    async getUploadToken(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new GetUploadTokenHeaders({});
        return await this.getUploadTokenWithOptions(request, headers, runtime);
    }
    /**
     * 获取H5离线包版本列表
     *
     * @param request - HPackageListGetRequest
     * @param headers - HPackageListGetHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns HPackageListGetResponse
     */
    async hPackageListGetWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.miniAppId)) {
            query["miniAppId"] = request.miniAppId;
        }
        if (!tea_util_1.default.isUnset(request.pageNumber)) {
            query["pageNumber"] = request.pageNumber;
        }
        if (!tea_util_1.default.isUnset(request.pageSize)) {
            query["pageSize"] = request.pageSize;
        }
        let realHeaders = {};
        if (!tea_util_1.default.isUnset(headers.commonHeaders)) {
            realHeaders = headers.commonHeaders;
        }
        if (!tea_util_1.default.isUnset(headers.xAcsDingtalkAccessToken)) {
            realHeaders["x-acs-dingtalk-access-token"] = tea_util_1.default.toJSONString(headers.xAcsDingtalkAccessToken);
        }
        let req = new $OpenApi.OpenApiRequest({
            headers: realHeaders,
            query: openapi_util_1.default.query(query),
        });
        let params = new $OpenApi.Params({
            action: "HPackageListGet",
            version: "package_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/package/h5/versions`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new HPackageListGetResponse({}));
    }
    /**
     * 获取H5离线包版本列表
     *
     * @param request - HPackageListGetRequest
     * @returns HPackageListGetResponse
     */
    async hPackageListGet(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new HPackageListGetHeaders({});
        return await this.hPackageListGetWithOptions(request, headers, runtime);
    }
    /**
     * 发布离线包
     *
     * @param request - HPublishPackageRequest
     * @param headers - HPublishPackageHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns HPublishPackageResponse
     */
    async hPublishPackageWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.miniAppId)) {
            body["miniAppId"] = request.miniAppId;
        }
        if (!tea_util_1.default.isUnset(request.version)) {
            body["version"] = request.version;
        }
        let realHeaders = {};
        if (!tea_util_1.default.isUnset(headers.commonHeaders)) {
            realHeaders = headers.commonHeaders;
        }
        if (!tea_util_1.default.isUnset(headers.xAcsDingtalkAccessToken)) {
            realHeaders["x-acs-dingtalk-access-token"] = tea_util_1.default.toJSONString(headers.xAcsDingtalkAccessToken);
        }
        let req = new $OpenApi.OpenApiRequest({
            headers: realHeaders,
            body: openapi_util_1.default.parseToMap(body),
        });
        let params = new $OpenApi.Params({
            action: "HPublishPackage",
            version: "package_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/package/h5/publish`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new HPublishPackageResponse({}));
    }
    /**
     * 发布离线包
     *
     * @param request - HPublishPackageRequest
     * @returns HPublishPackageResponse
     */
    async hPublishPackage(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new HPublishPackageHeaders({});
        return await this.hPublishPackageWithOptions(request, headers, runtime);
    }
    /**
     * 上传H5离线包
     *
     * @param request - HUploadPackageRequest
     * @param headers - HUploadPackageHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns HUploadPackageResponse
     */
    async hUploadPackageWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.miniAppId)) {
            body["miniAppId"] = request.miniAppId;
        }
        if (!tea_util_1.default.isUnset(request.ossObjectKey)) {
            body["ossObjectKey"] = request.ossObjectKey;
        }
        let realHeaders = {};
        if (!tea_util_1.default.isUnset(headers.commonHeaders)) {
            realHeaders = headers.commonHeaders;
        }
        if (!tea_util_1.default.isUnset(headers.xAcsDingtalkAccessToken)) {
            realHeaders["x-acs-dingtalk-access-token"] = tea_util_1.default.toJSONString(headers.xAcsDingtalkAccessToken);
        }
        let req = new $OpenApi.OpenApiRequest({
            headers: realHeaders,
            body: openapi_util_1.default.parseToMap(body),
        });
        let params = new $OpenApi.Params({
            action: "HUploadPackage",
            version: "package_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/package/h5/asyncUpload`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new HUploadPackageResponse({}));
    }
    /**
     * 上传H5离线包
     *
     * @param request - HUploadPackageRequest
     * @returns HUploadPackageResponse
     */
    async hUploadPackage(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new HUploadPackageHeaders({});
        return await this.hUploadPackageWithOptions(request, headers, runtime);
    }
    /**
     * 上传H5离线包进度
     *
     * @param request - HUploadPackageStatusRequest
     * @param headers - HUploadPackageStatusHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns HUploadPackageStatusResponse
     */
    async hUploadPackageStatusWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.miniAppId)) {
            query["miniAppId"] = request.miniAppId;
        }
        if (!tea_util_1.default.isUnset(request.taskId)) {
            query["taskId"] = request.taskId;
        }
        let realHeaders = {};
        if (!tea_util_1.default.isUnset(headers.commonHeaders)) {
            realHeaders = headers.commonHeaders;
        }
        if (!tea_util_1.default.isUnset(headers.xAcsDingtalkAccessToken)) {
            realHeaders["x-acs-dingtalk-access-token"] = tea_util_1.default.toJSONString(headers.xAcsDingtalkAccessToken);
        }
        let req = new $OpenApi.OpenApiRequest({
            headers: realHeaders,
            query: openapi_util_1.default.query(query),
        });
        let params = new $OpenApi.Params({
            action: "HUploadPackageStatus",
            version: "package_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/package/h5/uploadStatus`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new HUploadPackageStatusResponse({}));
    }
    /**
     * 上传H5离线包进度
     *
     * @param request - HUploadPackageStatusRequest
     * @returns HUploadPackageStatusResponse
     */
    async hUploadPackageStatus(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new HUploadPackageStatusHeaders({});
        return await this.hUploadPackageStatusWithOptions(request, headers, runtime);
    }
    /**
     * 开启企业自建应用H5离线包
     *
     * @param request - OpenMicroAppPackageRequest
     * @param headers - OpenMicroAppPackageHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns OpenMicroAppPackageResponse
     */
    async openMicroAppPackageWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.agentId)) {
            body["agentId"] = request.agentId;
        }
        let realHeaders = {};
        if (!tea_util_1.default.isUnset(headers.commonHeaders)) {
            realHeaders = headers.commonHeaders;
        }
        if (!tea_util_1.default.isUnset(headers.xAcsDingtalkAccessToken)) {
            realHeaders["x-acs-dingtalk-access-token"] = tea_util_1.default.toJSONString(headers.xAcsDingtalkAccessToken);
        }
        let req = new $OpenApi.OpenApiRequest({
            headers: realHeaders,
            body: openapi_util_1.default.parseToMap(body),
        });
        let params = new $OpenApi.Params({
            action: "OpenMicroAppPackage",
            version: "package_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/package/h5/microApps/open`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new OpenMicroAppPackageResponse({}));
    }
    /**
     * 开启企业自建应用H5离线包
     *
     * @param request - OpenMicroAppPackageRequest
     * @returns OpenMicroAppPackageResponse
     */
    async openMicroAppPackage(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new OpenMicroAppPackageHeaders({});
        return await this.openMicroAppPackageWithOptions(request, headers, runtime);
    }
    /**
     * 发布离线包到灰度
     *
     * @param request - ReleaseGrayDeployRequest
     * @param headers - ReleaseGrayDeployHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns ReleaseGrayDeployResponse
     */
    async releaseGrayDeployWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.miniAppId)) {
            body["miniAppId"] = request.miniAppId;
        }
        if (!tea_util_1.default.isUnset(request.version)) {
            body["version"] = request.version;
        }
        let realHeaders = {};
        if (!tea_util_1.default.isUnset(headers.commonHeaders)) {
            realHeaders = headers.commonHeaders;
        }
        if (!tea_util_1.default.isUnset(headers.xAcsDingtalkAccessToken)) {
            realHeaders["x-acs-dingtalk-access-token"] = tea_util_1.default.toJSONString(headers.xAcsDingtalkAccessToken);
        }
        let req = new $OpenApi.OpenApiRequest({
            headers: realHeaders,
            body: openapi_util_1.default.parseToMap(body),
        });
        let params = new $OpenApi.Params({
            action: "ReleaseGrayDeploy",
            version: "package_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/package/greys/deploy`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new ReleaseGrayDeployResponse({}));
    }
    /**
     * 发布离线包到灰度
     *
     * @param request - ReleaseGrayDeployRequest
     * @returns ReleaseGrayDeployResponse
     */
    async releaseGrayDeploy(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new ReleaseGrayDeployHeaders({});
        return await this.releaseGrayDeployWithOptions(request, headers, runtime);
    }
    /**
     * 退出灰度
     *
     * @param request - ReleaseGrayExitRequest
     * @param headers - ReleaseGrayExitHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns ReleaseGrayExitResponse
     */
    async releaseGrayExitWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.miniAppId)) {
            body["miniAppId"] = request.miniAppId;
        }
        if (!tea_util_1.default.isUnset(request.version)) {
            body["version"] = request.version;
        }
        let realHeaders = {};
        if (!tea_util_1.default.isUnset(headers.commonHeaders)) {
            realHeaders = headers.commonHeaders;
        }
        if (!tea_util_1.default.isUnset(headers.xAcsDingtalkAccessToken)) {
            realHeaders["x-acs-dingtalk-access-token"] = tea_util_1.default.toJSONString(headers.xAcsDingtalkAccessToken);
        }
        let req = new $OpenApi.OpenApiRequest({
            headers: realHeaders,
            body: openapi_util_1.default.parseToMap(body),
        });
        let params = new $OpenApi.Params({
            action: "ReleaseGrayExit",
            version: "package_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/package/greys/exit`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new ReleaseGrayExitResponse({}));
    }
    /**
     * 退出灰度
     *
     * @param request - ReleaseGrayExitRequest
     * @returns ReleaseGrayExitResponse
     */
    async releaseGrayExit(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new ReleaseGrayExitHeaders({});
        return await this.releaseGrayExitWithOptions(request, headers, runtime);
    }
    /**
     * 获取企业灰度白名单
     *
     * @param request - ReleaseGrayOrgGetRequest
     * @param headers - ReleaseGrayOrgGetHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns ReleaseGrayOrgGetResponse
     */
    async releaseGrayOrgGetWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.miniAppId)) {
            query["miniAppId"] = request.miniAppId;
        }
        if (!tea_util_1.default.isUnset(request.version)) {
            query["version"] = request.version;
        }
        let realHeaders = {};
        if (!tea_util_1.default.isUnset(headers.commonHeaders)) {
            realHeaders = headers.commonHeaders;
        }
        if (!tea_util_1.default.isUnset(headers.xAcsDingtalkAccessToken)) {
            realHeaders["x-acs-dingtalk-access-token"] = tea_util_1.default.toJSONString(headers.xAcsDingtalkAccessToken);
        }
        let req = new $OpenApi.OpenApiRequest({
            headers: realHeaders,
            query: openapi_util_1.default.query(query),
        });
        let params = new $OpenApi.Params({
            action: "ReleaseGrayOrgGet",
            version: "package_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/package/greys/organizations`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new ReleaseGrayOrgGetResponse({}));
    }
    /**
     * 获取企业灰度白名单
     *
     * @param request - ReleaseGrayOrgGetRequest
     * @returns ReleaseGrayOrgGetResponse
     */
    async releaseGrayOrgGet(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new ReleaseGrayOrgGetHeaders({});
        return await this.releaseGrayOrgGetWithOptions(request, headers, runtime);
    }
    /**
     * 设置企业灰度白名单
     *
     * @param request - ReleaseGrayOrgSetRequest
     * @param headers - ReleaseGrayOrgSetHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns ReleaseGrayOrgSetResponse
     */
    async releaseGrayOrgSetWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.miniAppId)) {
            body["miniAppId"] = request.miniAppId;
        }
        if (!tea_util_1.default.isUnset(request.value)) {
            body["value"] = request.value;
        }
        if (!tea_util_1.default.isUnset(request.version)) {
            body["version"] = request.version;
        }
        let realHeaders = {};
        if (!tea_util_1.default.isUnset(headers.commonHeaders)) {
            realHeaders = headers.commonHeaders;
        }
        if (!tea_util_1.default.isUnset(headers.xAcsDingtalkAccessToken)) {
            realHeaders["x-acs-dingtalk-access-token"] = tea_util_1.default.toJSONString(headers.xAcsDingtalkAccessToken);
        }
        let req = new $OpenApi.OpenApiRequest({
            headers: realHeaders,
            body: openapi_util_1.default.parseToMap(body),
        });
        let params = new $OpenApi.Params({
            action: "ReleaseGrayOrgSet",
            version: "package_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/package/greys/organizations/release`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new ReleaseGrayOrgSetResponse({}));
    }
    /**
     * 设置企业灰度白名单
     *
     * @param request - ReleaseGrayOrgSetRequest
     * @returns ReleaseGrayOrgSetResponse
     */
    async releaseGrayOrgSet(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new ReleaseGrayOrgSetHeaders({});
        return await this.releaseGrayOrgSetWithOptions(request, headers, runtime);
    }
    /**
     * 获取灰度离线包百分比值
     *
     * @param request - ReleaseGrayPercentGetRequest
     * @param headers - ReleaseGrayPercentGetHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns ReleaseGrayPercentGetResponse
     */
    async releaseGrayPercentGetWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.miniAppId)) {
            query["miniAppId"] = request.miniAppId;
        }
        if (!tea_util_1.default.isUnset(request.version)) {
            query["version"] = request.version;
        }
        let realHeaders = {};
        if (!tea_util_1.default.isUnset(headers.commonHeaders)) {
            realHeaders = headers.commonHeaders;
        }
        if (!tea_util_1.default.isUnset(headers.xAcsDingtalkAccessToken)) {
            realHeaders["x-acs-dingtalk-access-token"] = tea_util_1.default.toJSONString(headers.xAcsDingtalkAccessToken);
        }
        let req = new $OpenApi.OpenApiRequest({
            headers: realHeaders,
            query: openapi_util_1.default.query(query),
        });
        let params = new $OpenApi.Params({
            action: "ReleaseGrayPercentGet",
            version: "package_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/package/greys/users/percents`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new ReleaseGrayPercentGetResponse({}));
    }
    /**
     * 获取灰度离线包百分比值
     *
     * @param request - ReleaseGrayPercentGetRequest
     * @returns ReleaseGrayPercentGetResponse
     */
    async releaseGrayPercentGet(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new ReleaseGrayPercentGetHeaders({});
        return await this.releaseGrayPercentGetWithOptions(request, headers, runtime);
    }
    /**
     * 设置灰度离线包百分比值
     *
     * @param request - ReleaseGrayPercentSetRequest
     * @param headers - ReleaseGrayPercentSetHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns ReleaseGrayPercentSetResponse
     */
    async releaseGrayPercentSetWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.miniAppId)) {
            body["miniAppId"] = request.miniAppId;
        }
        if (!tea_util_1.default.isUnset(request.value)) {
            body["value"] = request.value;
        }
        if (!tea_util_1.default.isUnset(request.version)) {
            body["version"] = request.version;
        }
        let realHeaders = {};
        if (!tea_util_1.default.isUnset(headers.commonHeaders)) {
            realHeaders = headers.commonHeaders;
        }
        if (!tea_util_1.default.isUnset(headers.xAcsDingtalkAccessToken)) {
            realHeaders["x-acs-dingtalk-access-token"] = tea_util_1.default.toJSONString(headers.xAcsDingtalkAccessToken);
        }
        let req = new $OpenApi.OpenApiRequest({
            headers: realHeaders,
            body: openapi_util_1.default.parseToMap(body),
        });
        let params = new $OpenApi.Params({
            action: "ReleaseGrayPercentSet",
            version: "package_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/package/greys/users/percents/release`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new ReleaseGrayPercentSetResponse({}));
    }
    /**
     * 设置灰度离线包百分比值
     *
     * @param request - ReleaseGrayPercentSetRequest
     * @returns ReleaseGrayPercentSetResponse
     */
    async releaseGrayPercentSet(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new ReleaseGrayPercentSetHeaders({});
        return await this.releaseGrayPercentSetWithOptions(request, headers, runtime);
    }
    /**
     * 获取用户灰度名单
     *
     * @param request - ReleaseGrayUserIdGetRequest
     * @param headers - ReleaseGrayUserIdGetHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns ReleaseGrayUserIdGetResponse
     */
    async releaseGrayUserIdGetWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.miniAppId)) {
            query["miniAppId"] = request.miniAppId;
        }
        if (!tea_util_1.default.isUnset(request.version)) {
            query["version"] = request.version;
        }
        let realHeaders = {};
        if (!tea_util_1.default.isUnset(headers.commonHeaders)) {
            realHeaders = headers.commonHeaders;
        }
        if (!tea_util_1.default.isUnset(headers.xAcsDingtalkAccessToken)) {
            realHeaders["x-acs-dingtalk-access-token"] = tea_util_1.default.toJSONString(headers.xAcsDingtalkAccessToken);
        }
        let req = new $OpenApi.OpenApiRequest({
            headers: realHeaders,
            query: openapi_util_1.default.query(query),
        });
        let params = new $OpenApi.Params({
            action: "ReleaseGrayUserIdGet",
            version: "package_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/package/greys/users`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new ReleaseGrayUserIdGetResponse({}));
    }
    /**
     * 获取用户灰度名单
     *
     * @param request - ReleaseGrayUserIdGetRequest
     * @returns ReleaseGrayUserIdGetResponse
     */
    async releaseGrayUserIdGet(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new ReleaseGrayUserIdGetHeaders({});
        return await this.releaseGrayUserIdGetWithOptions(request, headers, runtime);
    }
}
exports.default = Client;
//# sourceMappingURL=client.js.map