"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.QueryTaskExecutionStatusRequest = exports.QueryTaskExecutionStatusHeaders = exports.GetUserTaskListResponse = exports.GetUserTaskListResponseBody = exports.GetUserTaskListRequest = exports.GetUserTaskListHeaders = exports.GetTemplateListResponse = exports.GetTemplateListResponseBody = exports.GetTemplateListRequest = exports.GetTemplateListHeaders = exports.GetCategorySourceConfigListResponse = exports.GetCategorySourceConfigListResponseBody = exports.GetCategorySourceConfigListRequest = exports.GetCategorySourceConfigListHeaders = exports.DeleteTodoEETaskResponse = exports.DeleteTodoEETaskResponseBody = exports.DeleteTodoEETaskRequest = exports.DeleteTodoEETaskHeaders = exports.DeleteCategorySourceConfigResponse = exports.DeleteCategorySourceConfigResponseBody = exports.DeleteCategorySourceConfigRequest = exports.DeleteCategorySourceConfigHeaders = exports.CreateStandardTemplateResponse = exports.CreateStandardTemplateResponseBody = exports.CreateStandardTemplateRequest = exports.CreateStandardTemplateHeaders = exports.CreateEnterpriseTodoTaskResponse = exports.CreateEnterpriseTodoTaskResponseBody = exports.CreateEnterpriseTodoTaskRequest = exports.CreateEnterpriseTodoTaskHeaders = exports.AppUpdateUserTaskStatusResponse = exports.AppUpdateUserTaskStatusResponseBody = exports.AppUpdateUserTaskStatusRequest = exports.AppUpdateUserTaskStatusHeaders = exports.AppUpdateTaskResponse = exports.AppUpdateTaskResponseBody = exports.AppUpdateTaskRequest = exports.AppUpdateTaskHeaders = exports.AppGetUserTaskListResponse = exports.AppGetUserTaskListResponseBody = exports.AppGetUserTaskListRequest = exports.AppGetUserTaskListHeaders = exports.AppDeleteTodoEETaskResponse = exports.AppDeleteTodoEETaskResponseBody = exports.AppDeleteTodoEETaskRequest = exports.AppDeleteTodoEETaskHeaders = exports.AppCreateEnterpriseTodoTaskResponse = exports.AppCreateEnterpriseTodoTaskResponseBody = exports.AppCreateEnterpriseTodoTaskRequest = exports.AppCreateEnterpriseTodoTaskHeaders = void 0;
exports.UpdateUserTaskStatusRequestUserTaskStatuses = exports.UpdateStandardTemplateRequestService = exports.UpdateStandardTemplateRequestActions = exports.QueryTaskExecutionStatusResponseBodyData = exports.GetUserTaskListResponseBodyData = exports.GetTemplateListResponseBodyData = exports.GetTemplateListResponseBodyDataActions = exports.GetCategorySourceConfigListResponseBodyConfigs = exports.CreateStandardTemplateResponseBodyActions = exports.CreateStandardTemplateRequestService = exports.CreateStandardTemplateRequestActions = exports.CreateEnterpriseTodoTaskResponseBodyDetailUrl = exports.CreateEnterpriseTodoTaskRequestNotifyConfigs = exports.CreateEnterpriseTodoTaskRequestDetailUrl = exports.CreateEnterpriseTodoTaskRequestCustomFields = exports.AppUpdateUserTaskStatusRequestUserTaskStatuses = exports.AppGetUserTaskListResponseBodyData = exports.AppGetUserTaskListResponseBodyDataDetailUrl = exports.AppCreateEnterpriseTodoTaskResponseBodyDetailUrl = exports.AppCreateEnterpriseTodoTaskRequestNotifyConfigs = exports.AppCreateEnterpriseTodoTaskRequestDetailUrl = exports.AppCreateEnterpriseTodoTaskRequestCustomFields = exports.UpdateUserTaskStatusResponse = exports.UpdateUserTaskStatusResponseBody = exports.UpdateUserTaskStatusRequest = exports.UpdateUserTaskStatusHeaders = exports.UpdateTaskResponse = exports.UpdateTaskResponseBody = exports.UpdateTaskRequest = exports.UpdateTaskHeaders = exports.UpdateStandardTemplateResponse = exports.UpdateStandardTemplateResponseBody = exports.UpdateStandardTemplateRequest = exports.UpdateStandardTemplateHeaders = exports.UpdateCategorySourceConfigResponse = exports.UpdateCategorySourceConfigResponseBody = exports.UpdateCategorySourceConfigRequest = exports.UpdateCategorySourceConfigHeaders = exports.RegisterCategorySourceConfigResponse = exports.RegisterCategorySourceConfigResponseBody = exports.RegisterCategorySourceConfigRequest = exports.RegisterCategorySourceConfigHeaders = exports.QueryTaskExecutionStatusResponse = exports.QueryTaskExecutionStatusResponseBody = 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 AppCreateEnterpriseTodoTaskHeaders 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.AppCreateEnterpriseTodoTaskHeaders = AppCreateEnterpriseTodoTaskHeaders;
class AppCreateEnterpriseTodoTaskRequest extends $tea.Model {
    static names() {
        return {
            bizCategoryId: 'bizCategoryId',
            bizCreatedTime: 'bizCreatedTime',
            customFields: 'customFields',
            description: 'description',
            detailUrl: 'detailUrl',
            dueTime: 'dueTime',
            executorIds: 'executorIds',
            notifyConfigs: 'notifyConfigs',
            operatorId: 'operatorId',
            priority: 'priority',
            sourceId: 'sourceId',
            sourceTitle: 'sourceTitle',
            subject: 'subject',
            toolbarTemplateKey: 'toolbarTemplateKey',
            type: 'type',
        };
    }
    static types() {
        return {
            bizCategoryId: 'string',
            bizCreatedTime: 'number',
            customFields: { 'type': 'array', 'itemType': AppCreateEnterpriseTodoTaskRequestCustomFields },
            description: 'string',
            detailUrl: AppCreateEnterpriseTodoTaskRequestDetailUrl,
            dueTime: 'number',
            executorIds: { 'type': 'array', 'itemType': 'string' },
            notifyConfigs: AppCreateEnterpriseTodoTaskRequestNotifyConfigs,
            operatorId: 'string',
            priority: 'number',
            sourceId: 'string',
            sourceTitle: 'string',
            subject: 'string',
            toolbarTemplateKey: 'string',
            type: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppCreateEnterpriseTodoTaskRequest = AppCreateEnterpriseTodoTaskRequest;
class AppCreateEnterpriseTodoTaskResponseBody extends $tea.Model {
    static names() {
        return {
            bizCategoryId: 'bizCategoryId',
            createdTime: 'createdTime',
            creatorId: 'creatorId',
            description: 'description',
            detailUrl: 'detailUrl',
            done: 'done',
            dueTime: 'dueTime',
            executorIds: 'executorIds',
            modifiedTime: 'modifiedTime',
            priority: 'priority',
            sourceId: 'sourceId',
            subject: 'subject',
            taskId: 'taskId',
        };
    }
    static types() {
        return {
            bizCategoryId: 'string',
            createdTime: 'number',
            creatorId: 'string',
            description: 'string',
            detailUrl: AppCreateEnterpriseTodoTaskResponseBodyDetailUrl,
            done: 'boolean',
            dueTime: 'number',
            executorIds: { 'type': 'array', 'itemType': 'string' },
            modifiedTime: 'number',
            priority: 'number',
            sourceId: 'string',
            subject: 'string',
            taskId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppCreateEnterpriseTodoTaskResponseBody = AppCreateEnterpriseTodoTaskResponseBody;
class AppCreateEnterpriseTodoTaskResponse 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: AppCreateEnterpriseTodoTaskResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppCreateEnterpriseTodoTaskResponse = AppCreateEnterpriseTodoTaskResponse;
class AppDeleteTodoEETaskHeaders 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.AppDeleteTodoEETaskHeaders = AppDeleteTodoEETaskHeaders;
class AppDeleteTodoEETaskRequest extends $tea.Model {
    static names() {
        return {
            operatorId: 'operatorId',
            taskIds: 'taskIds',
        };
    }
    static types() {
        return {
            operatorId: 'string',
            taskIds: { 'type': 'array', 'itemType': 'string' },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppDeleteTodoEETaskRequest = AppDeleteTodoEETaskRequest;
class AppDeleteTodoEETaskResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
        };
    }
    static types() {
        return {
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppDeleteTodoEETaskResponseBody = AppDeleteTodoEETaskResponseBody;
class AppDeleteTodoEETaskResponse 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: AppDeleteTodoEETaskResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppDeleteTodoEETaskResponse = AppDeleteTodoEETaskResponse;
class AppGetUserTaskListHeaders 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.AppGetUserTaskListHeaders = AppGetUserTaskListHeaders;
class AppGetUserTaskListRequest extends $tea.Model {
    static names() {
        return {
            done: 'done',
            operatorId: 'operatorId',
            pageNumber: 'pageNumber',
            pageSize: 'pageSize',
            type: 'type',
        };
    }
    static types() {
        return {
            done: 'boolean',
            operatorId: 'string',
            pageNumber: 'number',
            pageSize: 'number',
            type: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppGetUserTaskListRequest = AppGetUserTaskListRequest;
class AppGetUserTaskListResponseBody extends $tea.Model {
    static names() {
        return {
            data: 'data',
            hasMore: 'hasMore',
            pageNumber: 'pageNumber',
            pageSize: 'pageSize',
            totalCount: 'totalCount',
        };
    }
    static types() {
        return {
            data: { 'type': 'array', 'itemType': AppGetUserTaskListResponseBodyData },
            hasMore: 'boolean',
            pageNumber: 'number',
            pageSize: 'number',
            totalCount: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppGetUserTaskListResponseBody = AppGetUserTaskListResponseBody;
class AppGetUserTaskListResponse 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: AppGetUserTaskListResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppGetUserTaskListResponse = AppGetUserTaskListResponse;
class AppUpdateTaskHeaders 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.AppUpdateTaskHeaders = AppUpdateTaskHeaders;
class AppUpdateTaskRequest extends $tea.Model {
    static names() {
        return {
            bizCreatedTime: 'bizCreatedTime',
            description: 'description',
            done: 'done',
            dueTime: 'dueTime',
            executorIds: 'executorIds',
            operatorId: 'operatorId',
            subject: 'subject',
            taskId: 'taskId',
            toolbarTemplateKey: 'toolbarTemplateKey',
        };
    }
    static types() {
        return {
            bizCreatedTime: 'number',
            description: 'string',
            done: 'boolean',
            dueTime: 'number',
            executorIds: { 'type': 'array', 'itemType': 'string' },
            operatorId: 'string',
            subject: 'string',
            taskId: 'number',
            toolbarTemplateKey: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppUpdateTaskRequest = AppUpdateTaskRequest;
class AppUpdateTaskResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
        };
    }
    static types() {
        return {
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppUpdateTaskResponseBody = AppUpdateTaskResponseBody;
class AppUpdateTaskResponse 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: AppUpdateTaskResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppUpdateTaskResponse = AppUpdateTaskResponse;
class AppUpdateUserTaskStatusHeaders 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.AppUpdateUserTaskStatusHeaders = AppUpdateUserTaskStatusHeaders;
class AppUpdateUserTaskStatusRequest extends $tea.Model {
    static names() {
        return {
            operatorId: 'operatorId',
            userTaskStatuses: 'userTaskStatuses',
        };
    }
    static types() {
        return {
            operatorId: 'string',
            userTaskStatuses: { 'type': 'array', 'itemType': AppUpdateUserTaskStatusRequestUserTaskStatuses },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppUpdateUserTaskStatusRequest = AppUpdateUserTaskStatusRequest;
class AppUpdateUserTaskStatusResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
        };
    }
    static types() {
        return {
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppUpdateUserTaskStatusResponseBody = AppUpdateUserTaskStatusResponseBody;
class AppUpdateUserTaskStatusResponse 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: AppUpdateUserTaskStatusResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppUpdateUserTaskStatusResponse = AppUpdateUserTaskStatusResponse;
class CreateEnterpriseTodoTaskHeaders 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.CreateEnterpriseTodoTaskHeaders = CreateEnterpriseTodoTaskHeaders;
class CreateEnterpriseTodoTaskRequest extends $tea.Model {
    static names() {
        return {
            bizCategoryId: 'bizCategoryId',
            customFields: 'customFields',
            description: 'description',
            detailUrl: 'detailUrl',
            dueTime: 'dueTime',
            executorIds: 'executorIds',
            notifyConfigs: 'notifyConfigs',
            operatorId: 'operatorId',
            priority: 'priority',
            sourceId: 'sourceId',
            sourceTitle: 'sourceTitle',
            subject: 'subject',
            trackerIds: 'trackerIds',
            type: 'type',
        };
    }
    static types() {
        return {
            bizCategoryId: 'string',
            customFields: { 'type': 'array', 'itemType': CreateEnterpriseTodoTaskRequestCustomFields },
            description: 'string',
            detailUrl: CreateEnterpriseTodoTaskRequestDetailUrl,
            dueTime: 'number',
            executorIds: { 'type': 'array', 'itemType': 'string' },
            notifyConfigs: CreateEnterpriseTodoTaskRequestNotifyConfigs,
            operatorId: 'string',
            priority: 'number',
            sourceId: 'string',
            sourceTitle: 'string',
            subject: 'string',
            trackerIds: { 'type': 'array', 'itemType': 'string' },
            type: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateEnterpriseTodoTaskRequest = CreateEnterpriseTodoTaskRequest;
class CreateEnterpriseTodoTaskResponseBody extends $tea.Model {
    static names() {
        return {
            bizCategoryId: 'bizCategoryId',
            createdTime: 'createdTime',
            creatorId: 'creatorId',
            description: 'description',
            detailUrl: 'detailUrl',
            done: 'done',
            dueTime: 'dueTime',
            executorIds: 'executorIds',
            modifiedTime: 'modifiedTime',
            sourceId: 'sourceId',
            subject: 'subject',
            taskId: 'taskId',
        };
    }
    static types() {
        return {
            bizCategoryId: 'string',
            createdTime: 'number',
            creatorId: 'string',
            description: 'string',
            detailUrl: CreateEnterpriseTodoTaskResponseBodyDetailUrl,
            done: 'boolean',
            dueTime: 'number',
            executorIds: { 'type': 'array', 'itemType': 'string' },
            modifiedTime: 'number',
            sourceId: 'string',
            subject: 'string',
            taskId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateEnterpriseTodoTaskResponseBody = CreateEnterpriseTodoTaskResponseBody;
class CreateEnterpriseTodoTaskResponse 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: CreateEnterpriseTodoTaskResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateEnterpriseTodoTaskResponse = CreateEnterpriseTodoTaskResponse;
class CreateStandardTemplateHeaders 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.CreateStandardTemplateHeaders = CreateStandardTemplateHeaders;
class CreateStandardTemplateRequest extends $tea.Model {
    static names() {
        return {
            actions: 'actions',
            description: 'description',
            name: 'name',
            operatorId: 'operatorId',
            service: 'service',
        };
    }
    static types() {
        return {
            actions: { 'type': 'array', 'itemType': CreateStandardTemplateRequestActions },
            description: 'string',
            name: 'string',
            operatorId: 'string',
            service: CreateStandardTemplateRequestService,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateStandardTemplateRequest = CreateStandardTemplateRequest;
class CreateStandardTemplateResponseBody extends $tea.Model {
    static names() {
        return {
            actions: 'actions',
            description: 'description',
            name: 'name',
            templateKey: 'templateKey',
        };
    }
    static types() {
        return {
            actions: { 'type': 'array', 'itemType': CreateStandardTemplateResponseBodyActions },
            description: 'string',
            name: 'string',
            templateKey: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateStandardTemplateResponseBody = CreateStandardTemplateResponseBody;
class CreateStandardTemplateResponse 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: CreateStandardTemplateResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateStandardTemplateResponse = CreateStandardTemplateResponse;
class DeleteCategorySourceConfigHeaders 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.DeleteCategorySourceConfigHeaders = DeleteCategorySourceConfigHeaders;
class DeleteCategorySourceConfigRequest extends $tea.Model {
    static names() {
        return {
            bizCategoryId: 'bizCategoryId',
        };
    }
    static types() {
        return {
            bizCategoryId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.DeleteCategorySourceConfigRequest = DeleteCategorySourceConfigRequest;
class DeleteCategorySourceConfigResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
        };
    }
    static types() {
        return {
            success: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.DeleteCategorySourceConfigResponseBody = DeleteCategorySourceConfigResponseBody;
class DeleteCategorySourceConfigResponse 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: DeleteCategorySourceConfigResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.DeleteCategorySourceConfigResponse = DeleteCategorySourceConfigResponse;
class DeleteTodoEETaskHeaders 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.DeleteTodoEETaskHeaders = DeleteTodoEETaskHeaders;
class DeleteTodoEETaskRequest extends $tea.Model {
    static names() {
        return {
            taskIds: 'taskIds',
        };
    }
    static types() {
        return {
            taskIds: { 'type': 'array', 'itemType': 'string' },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.DeleteTodoEETaskRequest = DeleteTodoEETaskRequest;
class DeleteTodoEETaskResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.DeleteTodoEETaskResponseBody = DeleteTodoEETaskResponseBody;
class DeleteTodoEETaskResponse 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: DeleteTodoEETaskResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.DeleteTodoEETaskResponse = DeleteTodoEETaskResponse;
class GetCategorySourceConfigListHeaders 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.GetCategorySourceConfigListHeaders = GetCategorySourceConfigListHeaders;
class GetCategorySourceConfigListRequest extends $tea.Model {
    static names() {
        return {
            nextToken: 'nextToken',
        };
    }
    static types() {
        return {
            nextToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetCategorySourceConfigListRequest = GetCategorySourceConfigListRequest;
class GetCategorySourceConfigListResponseBody extends $tea.Model {
    static names() {
        return {
            configs: 'configs',
            nextToken: 'nextToken',
            totalCount: 'totalCount',
        };
    }
    static types() {
        return {
            configs: { 'type': 'array', 'itemType': GetCategorySourceConfigListResponseBodyConfigs },
            nextToken: 'string',
            totalCount: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetCategorySourceConfigListResponseBody = GetCategorySourceConfigListResponseBody;
class GetCategorySourceConfigListResponse 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: GetCategorySourceConfigListResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetCategorySourceConfigListResponse = GetCategorySourceConfigListResponse;
class GetTemplateListHeaders 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.GetTemplateListHeaders = GetTemplateListHeaders;
class GetTemplateListRequest extends $tea.Model {
    static names() {
        return {
            pageNumber: 'pageNumber',
            pageSize: 'pageSize',
        };
    }
    static types() {
        return {
            pageNumber: 'number',
            pageSize: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetTemplateListRequest = GetTemplateListRequest;
class GetTemplateListResponseBody extends $tea.Model {
    static names() {
        return {
            data: 'data',
            pageNumber: 'pageNumber',
            pageSize: 'pageSize',
            totalCount: 'totalCount',
        };
    }
    static types() {
        return {
            data: { 'type': 'array', 'itemType': GetTemplateListResponseBodyData },
            pageNumber: 'number',
            pageSize: 'number',
            totalCount: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetTemplateListResponseBody = GetTemplateListResponseBody;
class GetTemplateListResponse 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: GetTemplateListResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetTemplateListResponse = GetTemplateListResponse;
class GetUserTaskListHeaders 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.GetUserTaskListHeaders = GetUserTaskListHeaders;
class GetUserTaskListRequest extends $tea.Model {
    static names() {
        return {
            done: 'done',
            pageNumber: 'pageNumber',
            pageSize: 'pageSize',
            type: 'type',
        };
    }
    static types() {
        return {
            done: 'boolean',
            pageNumber: 'number',
            pageSize: 'number',
            type: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetUserTaskListRequest = GetUserTaskListRequest;
class GetUserTaskListResponseBody extends $tea.Model {
    static names() {
        return {
            data: 'data',
            pageNumber: 'pageNumber',
            pageSize: 'pageSize',
            totalCount: 'totalCount',
        };
    }
    static types() {
        return {
            data: { 'type': 'array', 'itemType': GetUserTaskListResponseBodyData },
            pageNumber: 'number',
            pageSize: 'number',
            totalCount: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetUserTaskListResponseBody = GetUserTaskListResponseBody;
class GetUserTaskListResponse 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: GetUserTaskListResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetUserTaskListResponse = GetUserTaskListResponse;
class QueryTaskExecutionStatusHeaders 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.QueryTaskExecutionStatusHeaders = QueryTaskExecutionStatusHeaders;
class QueryTaskExecutionStatusRequest extends $tea.Model {
    static names() {
        return {
            pageNumber: 'pageNumber',
            pageSize: 'pageSize',
            taskId: 'taskId',
        };
    }
    static types() {
        return {
            pageNumber: 'number',
            pageSize: 'number',
            taskId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryTaskExecutionStatusRequest = QueryTaskExecutionStatusRequest;
class QueryTaskExecutionStatusResponseBody extends $tea.Model {
    static names() {
        return {
            data: 'data',
            hasMore: 'hasMore',
            pageNumber: 'pageNumber',
            pageSize: 'pageSize',
            totalCount: 'totalCount',
        };
    }
    static types() {
        return {
            data: { 'type': 'array', 'itemType': QueryTaskExecutionStatusResponseBodyData },
            hasMore: 'boolean',
            pageNumber: 'number',
            pageSize: 'number',
            totalCount: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryTaskExecutionStatusResponseBody = QueryTaskExecutionStatusResponseBody;
class QueryTaskExecutionStatusResponse 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: QueryTaskExecutionStatusResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryTaskExecutionStatusResponse = QueryTaskExecutionStatusResponse;
class RegisterCategorySourceConfigHeaders 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.RegisterCategorySourceConfigHeaders = RegisterCategorySourceConfigHeaders;
class RegisterCategorySourceConfigRequest extends $tea.Model {
    static names() {
        return {
            bizCategoryId: 'bizCategoryId',
            bizCategoryName: 'bizCategoryName',
            operatorId: 'operatorId',
        };
    }
    static types() {
        return {
            bizCategoryId: 'string',
            bizCategoryName: 'string',
            operatorId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.RegisterCategorySourceConfigRequest = RegisterCategorySourceConfigRequest;
class RegisterCategorySourceConfigResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
        };
    }
    static types() {
        return {
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.RegisterCategorySourceConfigResponseBody = RegisterCategorySourceConfigResponseBody;
class RegisterCategorySourceConfigResponse 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: RegisterCategorySourceConfigResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.RegisterCategorySourceConfigResponse = RegisterCategorySourceConfigResponse;
class UpdateCategorySourceConfigHeaders 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.UpdateCategorySourceConfigHeaders = UpdateCategorySourceConfigHeaders;
class UpdateCategorySourceConfigRequest extends $tea.Model {
    static names() {
        return {
            bizCategoryId: 'bizCategoryId',
            bizCategoryName: 'bizCategoryName',
            operatorId: 'operatorId',
        };
    }
    static types() {
        return {
            bizCategoryId: 'string',
            bizCategoryName: 'string',
            operatorId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateCategorySourceConfigRequest = UpdateCategorySourceConfigRequest;
class UpdateCategorySourceConfigResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
        };
    }
    static types() {
        return {
            success: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateCategorySourceConfigResponseBody = UpdateCategorySourceConfigResponseBody;
class UpdateCategorySourceConfigResponse 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: UpdateCategorySourceConfigResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateCategorySourceConfigResponse = UpdateCategorySourceConfigResponse;
class UpdateStandardTemplateHeaders 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.UpdateStandardTemplateHeaders = UpdateStandardTemplateHeaders;
class UpdateStandardTemplateRequest extends $tea.Model {
    static names() {
        return {
            actions: 'actions',
            operatorId: 'operatorId',
            service: 'service',
            templateKey: 'templateKey',
        };
    }
    static types() {
        return {
            actions: { 'type': 'array', 'itemType': UpdateStandardTemplateRequestActions },
            operatorId: 'string',
            service: UpdateStandardTemplateRequestService,
            templateKey: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateStandardTemplateRequest = UpdateStandardTemplateRequest;
class UpdateStandardTemplateResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
        };
    }
    static types() {
        return {
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateStandardTemplateResponseBody = UpdateStandardTemplateResponseBody;
class UpdateStandardTemplateResponse 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: UpdateStandardTemplateResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateStandardTemplateResponse = UpdateStandardTemplateResponse;
class UpdateTaskHeaders 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.UpdateTaskHeaders = UpdateTaskHeaders;
class UpdateTaskRequest extends $tea.Model {
    static names() {
        return {
            description: 'description',
            done: 'done',
            dueTime: 'dueTime',
            executorIds: 'executorIds',
            subject: 'subject',
            taskId: 'taskId',
        };
    }
    static types() {
        return {
            description: 'string',
            done: 'boolean',
            dueTime: 'number',
            executorIds: { 'type': 'array', 'itemType': 'string' },
            subject: 'string',
            taskId: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateTaskRequest = UpdateTaskRequest;
class UpdateTaskResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateTaskResponseBody = UpdateTaskResponseBody;
class UpdateTaskResponse 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: UpdateTaskResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateTaskResponse = UpdateTaskResponse;
class UpdateUserTaskStatusHeaders 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.UpdateUserTaskStatusHeaders = UpdateUserTaskStatusHeaders;
class UpdateUserTaskStatusRequest extends $tea.Model {
    static names() {
        return {
            operatorId: 'operatorId',
            userTaskStatuses: 'userTaskStatuses',
        };
    }
    static types() {
        return {
            operatorId: 'string',
            userTaskStatuses: { 'type': 'array', 'itemType': UpdateUserTaskStatusRequestUserTaskStatuses },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateUserTaskStatusRequest = UpdateUserTaskStatusRequest;
class UpdateUserTaskStatusResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
        };
    }
    static types() {
        return {
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateUserTaskStatusResponseBody = UpdateUserTaskStatusResponseBody;
class UpdateUserTaskStatusResponse 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: UpdateUserTaskStatusResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateUserTaskStatusResponse = UpdateUserTaskStatusResponse;
class AppCreateEnterpriseTodoTaskRequestCustomFields extends $tea.Model {
    static names() {
        return {
            fieldKey: 'fieldKey',
            fieldLink: 'fieldLink',
            fieldType: 'fieldType',
            fieldValue: 'fieldValue',
            icon: 'icon',
        };
    }
    static types() {
        return {
            fieldKey: 'string',
            fieldLink: 'string',
            fieldType: 'string',
            fieldValue: 'string',
            icon: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppCreateEnterpriseTodoTaskRequestCustomFields = AppCreateEnterpriseTodoTaskRequestCustomFields;
class AppCreateEnterpriseTodoTaskRequestDetailUrl extends $tea.Model {
    static names() {
        return {
            appUrl: 'appUrl',
            webUrl: 'webUrl',
        };
    }
    static types() {
        return {
            appUrl: 'string',
            webUrl: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppCreateEnterpriseTodoTaskRequestDetailUrl = AppCreateEnterpriseTodoTaskRequestDetailUrl;
class AppCreateEnterpriseTodoTaskRequestNotifyConfigs extends $tea.Model {
    static names() {
        return {
            assistance: 'assistance',
            dingNotify: 'dingNotify',
        };
    }
    static types() {
        return {
            assistance: 'string',
            dingNotify: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppCreateEnterpriseTodoTaskRequestNotifyConfigs = AppCreateEnterpriseTodoTaskRequestNotifyConfigs;
class AppCreateEnterpriseTodoTaskResponseBodyDetailUrl extends $tea.Model {
    static names() {
        return {
            appUrl: 'appUrl',
            webUrl: 'webUrl',
        };
    }
    static types() {
        return {
            appUrl: 'string',
            webUrl: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppCreateEnterpriseTodoTaskResponseBodyDetailUrl = AppCreateEnterpriseTodoTaskResponseBodyDetailUrl;
class AppGetUserTaskListResponseBodyDataDetailUrl extends $tea.Model {
    static names() {
        return {
            appUrl: 'appUrl',
            webUrl: 'webUrl',
        };
    }
    static types() {
        return {
            appUrl: 'string',
            webUrl: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppGetUserTaskListResponseBodyDataDetailUrl = AppGetUserTaskListResponseBodyDataDetailUrl;
class AppGetUserTaskListResponseBodyData extends $tea.Model {
    static names() {
        return {
            bizCategoryId: 'bizCategoryId',
            createdTime: 'createdTime',
            description: 'description',
            detailUrl: 'detailUrl',
            done: 'done',
            dueTime: 'dueTime',
            modifiedTime: 'modifiedTime',
            operatorId: 'operatorId',
            priority: 'priority',
            subject: 'subject',
            taskId: 'taskId',
        };
    }
    static types() {
        return {
            bizCategoryId: 'string',
            createdTime: 'number',
            description: 'string',
            detailUrl: AppGetUserTaskListResponseBodyDataDetailUrl,
            done: 'boolean',
            dueTime: 'number',
            modifiedTime: 'number',
            operatorId: 'string',
            priority: 'number',
            subject: 'string',
            taskId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppGetUserTaskListResponseBodyData = AppGetUserTaskListResponseBodyData;
class AppUpdateUserTaskStatusRequestUserTaskStatuses extends $tea.Model {
    static names() {
        return {
            done: 'done',
            taskId: 'taskId',
        };
    }
    static types() {
        return {
            done: 'boolean',
            taskId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AppUpdateUserTaskStatusRequestUserTaskStatuses = AppUpdateUserTaskStatusRequestUserTaskStatuses;
class CreateEnterpriseTodoTaskRequestCustomFields extends $tea.Model {
    static names() {
        return {
            fieldKey: 'fieldKey',
            fieldLink: 'fieldLink',
            fieldType: 'fieldType',
            fieldValue: 'fieldValue',
            icon: 'icon',
        };
    }
    static types() {
        return {
            fieldKey: 'string',
            fieldLink: 'string',
            fieldType: 'string',
            fieldValue: 'string',
            icon: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateEnterpriseTodoTaskRequestCustomFields = CreateEnterpriseTodoTaskRequestCustomFields;
class CreateEnterpriseTodoTaskRequestDetailUrl extends $tea.Model {
    static names() {
        return {
            appUrl: 'appUrl',
            webUrl: 'webUrl',
        };
    }
    static types() {
        return {
            appUrl: 'string',
            webUrl: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateEnterpriseTodoTaskRequestDetailUrl = CreateEnterpriseTodoTaskRequestDetailUrl;
class CreateEnterpriseTodoTaskRequestNotifyConfigs extends $tea.Model {
    static names() {
        return {
            dingNotify: 'dingNotify',
        };
    }
    static types() {
        return {
            dingNotify: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateEnterpriseTodoTaskRequestNotifyConfigs = CreateEnterpriseTodoTaskRequestNotifyConfigs;
class CreateEnterpriseTodoTaskResponseBodyDetailUrl extends $tea.Model {
    static names() {
        return {
            appUrl: 'appUrl',
            webUrl: 'webUrl',
        };
    }
    static types() {
        return {
            appUrl: 'string',
            webUrl: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateEnterpriseTodoTaskResponseBodyDetailUrl = CreateEnterpriseTodoTaskResponseBodyDetailUrl;
class CreateStandardTemplateRequestActions extends $tea.Model {
    static names() {
        return {
            actionGroup: 'actionGroup',
            name: 'name',
            needReason: 'needReason',
            needReasonRequired: 'needReasonRequired',
            order: 'order',
            styleType: 'styleType',
        };
    }
    static types() {
        return {
            actionGroup: 'string',
            name: 'string',
            needReason: 'boolean',
            needReasonRequired: 'boolean',
            order: 'number',
            styleType: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateStandardTemplateRequestActions = CreateStandardTemplateRequestActions;
class CreateStandardTemplateRequestService extends $tea.Model {
    static names() {
        return {
            callbackUrl: 'callbackUrl',
        };
    }
    static types() {
        return {
            callbackUrl: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateStandardTemplateRequestService = CreateStandardTemplateRequestService;
class CreateStandardTemplateResponseBodyActions extends $tea.Model {
    static names() {
        return {
            actionKey: 'actionKey',
            name: 'name',
            needReason: 'needReason',
            needReasonRequired: 'needReasonRequired',
            order: 'order',
            styleType: 'styleType',
        };
    }
    static types() {
        return {
            actionKey: 'string',
            name: 'string',
            needReason: 'boolean',
            needReasonRequired: 'boolean',
            order: 'number',
            styleType: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateStandardTemplateResponseBodyActions = CreateStandardTemplateResponseBodyActions;
class GetCategorySourceConfigListResponseBodyConfigs extends $tea.Model {
    static names() {
        return {
            bizCategoryId: 'bizCategoryId',
            bizCategoryName: 'bizCategoryName',
            configId: 'configId',
        };
    }
    static types() {
        return {
            bizCategoryId: 'string',
            bizCategoryName: 'string',
            configId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetCategorySourceConfigListResponseBodyConfigs = GetCategorySourceConfigListResponseBodyConfigs;
class GetTemplateListResponseBodyDataActions extends $tea.Model {
    static names() {
        return {
            actionKey: 'actionKey',
            description: 'description',
            name: 'name',
            needReason: 'needReason',
            needReasonRequired: 'needReasonRequired',
            order: 'order',
            styleType: 'styleType',
        };
    }
    static types() {
        return {
            actionKey: 'string',
            description: 'string',
            name: 'string',
            needReason: 'boolean',
            needReasonRequired: 'boolean',
            order: 'number',
            styleType: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetTemplateListResponseBodyDataActions = GetTemplateListResponseBodyDataActions;
class GetTemplateListResponseBodyData extends $tea.Model {
    static names() {
        return {
            actions: 'actions',
            createTime: 'createTime',
            creatorId: 'creatorId',
            description: 'description',
            modifiedTime: 'modifiedTime',
            modifierId: 'modifierId',
            name: 'name',
            templateKey: 'templateKey',
        };
    }
    static types() {
        return {
            actions: { 'type': 'array', 'itemType': GetTemplateListResponseBodyDataActions },
            createTime: 'number',
            creatorId: 'string',
            description: 'string',
            modifiedTime: 'number',
            modifierId: 'string',
            name: 'string',
            templateKey: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetTemplateListResponseBodyData = GetTemplateListResponseBodyData;
class GetUserTaskListResponseBodyData extends $tea.Model {
    static names() {
        return {
            createdTime: 'createdTime',
            description: 'description',
            done: 'done',
            dueTime: 'dueTime',
            subject: 'subject',
            taskId: 'taskId',
        };
    }
    static types() {
        return {
            createdTime: 'number',
            description: 'string',
            done: 'boolean',
            dueTime: 'number',
            subject: 'string',
            taskId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetUserTaskListResponseBodyData = GetUserTaskListResponseBodyData;
class QueryTaskExecutionStatusResponseBodyData extends $tea.Model {
    static names() {
        return {
            done: 'done',
            executorId: 'executorId',
            finishDate: 'finishDate',
        };
    }
    static types() {
        return {
            done: 'boolean',
            executorId: 'string',
            finishDate: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryTaskExecutionStatusResponseBodyData = QueryTaskExecutionStatusResponseBodyData;
class UpdateStandardTemplateRequestActions extends $tea.Model {
    static names() {
        return {
            actionGroup: 'actionGroup',
            name: 'name',
            needReason: 'needReason',
            needReasonRequired: 'needReasonRequired',
            order: 'order',
            styleType: 'styleType',
        };
    }
    static types() {
        return {
            actionGroup: 'string',
            name: 'string',
            needReason: 'boolean',
            needReasonRequired: 'boolean',
            order: 'number',
            styleType: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateStandardTemplateRequestActions = UpdateStandardTemplateRequestActions;
class UpdateStandardTemplateRequestService extends $tea.Model {
    static names() {
        return {
            callbackUrl: 'callbackUrl',
        };
    }
    static types() {
        return {
            callbackUrl: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateStandardTemplateRequestService = UpdateStandardTemplateRequestService;
class UpdateUserTaskStatusRequestUserTaskStatuses extends $tea.Model {
    static names() {
        return {
            done: 'done',
            taskId: 'taskId',
        };
    }
    static types() {
        return {
            done: 'boolean',
            taskId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateUserTaskStatusRequestUserTaskStatuses = UpdateUserTaskStatusRequestUserTaskStatuses;
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";
        }
    }
    /**
     * 创建专属待办
     *
     * @param request - AppCreateEnterpriseTodoTaskRequest
     * @param headers - AppCreateEnterpriseTodoTaskHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns AppCreateEnterpriseTodoTaskResponse
     */
    async appCreateEnterpriseTodoTaskWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.bizCategoryId)) {
            body["bizCategoryId"] = request.bizCategoryId;
        }
        if (!tea_util_1.default.isUnset(request.bizCreatedTime)) {
            body["bizCreatedTime"] = request.bizCreatedTime;
        }
        if (!tea_util_1.default.isUnset(request.customFields)) {
            body["customFields"] = request.customFields;
        }
        if (!tea_util_1.default.isUnset(request.description)) {
            body["description"] = request.description;
        }
        if (!tea_util_1.default.isUnset(request.detailUrl)) {
            body["detailUrl"] = request.detailUrl;
        }
        if (!tea_util_1.default.isUnset(request.dueTime)) {
            body["dueTime"] = request.dueTime;
        }
        if (!tea_util_1.default.isUnset(request.executorIds)) {
            body["executorIds"] = request.executorIds;
        }
        if (!tea_util_1.default.isUnset(request.notifyConfigs)) {
            body["notifyConfigs"] = request.notifyConfigs;
        }
        if (!tea_util_1.default.isUnset(request.operatorId)) {
            body["operatorId"] = request.operatorId;
        }
        if (!tea_util_1.default.isUnset(request.priority)) {
            body["priority"] = request.priority;
        }
        if (!tea_util_1.default.isUnset(request.sourceId)) {
            body["sourceId"] = request.sourceId;
        }
        if (!tea_util_1.default.isUnset(request.sourceTitle)) {
            body["sourceTitle"] = request.sourceTitle;
        }
        if (!tea_util_1.default.isUnset(request.subject)) {
            body["subject"] = request.subject;
        }
        if (!tea_util_1.default.isUnset(request.toolbarTemplateKey)) {
            body["toolbarTemplateKey"] = request.toolbarTemplateKey;
        }
        if (!tea_util_1.default.isUnset(request.type)) {
            body["type"] = request.type;
        }
        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: "AppCreateEnterpriseTodoTask",
            version: "todoEE_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/todoEE/apps/users/tasks`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new AppCreateEnterpriseTodoTaskResponse({}));
    }
    /**
     * 创建专属待办
     *
     * @param request - AppCreateEnterpriseTodoTaskRequest
     * @returns AppCreateEnterpriseTodoTaskResponse
     */
    async appCreateEnterpriseTodoTask(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new AppCreateEnterpriseTodoTaskHeaders({});
        return await this.appCreateEnterpriseTodoTaskWithOptions(request, headers, runtime);
    }
    /**
     * 删除专属待办
     *
     * @param request - AppDeleteTodoEETaskRequest
     * @param headers - AppDeleteTodoEETaskHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns AppDeleteTodoEETaskResponse
     */
    async appDeleteTodoEETaskWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.operatorId)) {
            body["operatorId"] = request.operatorId;
        }
        if (!tea_util_1.default.isUnset(request.taskIds)) {
            body["taskIds"] = request.taskIds;
        }
        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: "AppDeleteTodoEETask",
            version: "todoEE_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/todoEE/apps/users/tasks/remove`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new AppDeleteTodoEETaskResponse({}));
    }
    /**
     * 删除专属待办
     *
     * @param request - AppDeleteTodoEETaskRequest
     * @returns AppDeleteTodoEETaskResponse
     */
    async appDeleteTodoEETask(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new AppDeleteTodoEETaskHeaders({});
        return await this.appDeleteTodoEETaskWithOptions(request, headers, runtime);
    }
    /**
     * 查询用户待办列表
     *
     * @param request - AppGetUserTaskListRequest
     * @param headers - AppGetUserTaskListHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns AppGetUserTaskListResponse
     */
    async appGetUserTaskListWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.done)) {
            body["done"] = request.done;
        }
        if (!tea_util_1.default.isUnset(request.operatorId)) {
            body["operatorId"] = request.operatorId;
        }
        if (!tea_util_1.default.isUnset(request.pageNumber)) {
            body["pageNumber"] = request.pageNumber;
        }
        if (!tea_util_1.default.isUnset(request.pageSize)) {
            body["pageSize"] = request.pageSize;
        }
        if (!tea_util_1.default.isUnset(request.type)) {
            body["type"] = request.type;
        }
        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: "AppGetUserTaskList",
            version: "todoEE_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/todoEE/apps/users/tasks/list`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new AppGetUserTaskListResponse({}));
    }
    /**
     * 查询用户待办列表
     *
     * @param request - AppGetUserTaskListRequest
     * @returns AppGetUserTaskListResponse
     */
    async appGetUserTaskList(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new AppGetUserTaskListHeaders({});
        return await this.appGetUserTaskListWithOptions(request, headers, runtime);
    }
    /**
     * 更新专属待办信息
     *
     * @param request - AppUpdateTaskRequest
     * @param headers - AppUpdateTaskHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns AppUpdateTaskResponse
     */
    async appUpdateTaskWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.bizCreatedTime)) {
            body["bizCreatedTime"] = request.bizCreatedTime;
        }
        if (!tea_util_1.default.isUnset(request.description)) {
            body["description"] = request.description;
        }
        if (!tea_util_1.default.isUnset(request.done)) {
            body["done"] = request.done;
        }
        if (!tea_util_1.default.isUnset(request.dueTime)) {
            body["dueTime"] = request.dueTime;
        }
        if (!tea_util_1.default.isUnset(request.executorIds)) {
            body["executorIds"] = request.executorIds;
        }
        if (!tea_util_1.default.isUnset(request.operatorId)) {
            body["operatorId"] = request.operatorId;
        }
        if (!tea_util_1.default.isUnset(request.subject)) {
            body["subject"] = request.subject;
        }
        if (!tea_util_1.default.isUnset(request.taskId)) {
            body["taskId"] = request.taskId;
        }
        if (!tea_util_1.default.isUnset(request.toolbarTemplateKey)) {
            body["toolbarTemplateKey"] = request.toolbarTemplateKey;
        }
        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: "AppUpdateTask",
            version: "todoEE_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/todoEE/apps/users/tasks/infos`,
            method: "PUT",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new AppUpdateTaskResponse({}));
    }
    /**
     * 更新专属待办信息
     *
     * @param request - AppUpdateTaskRequest
     * @returns AppUpdateTaskResponse
     */
    async appUpdateTask(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new AppUpdateTaskHeaders({});
        return await this.appUpdateTaskWithOptions(request, headers, runtime);
    }
    /**
     * 更新用户的待办状态
     *
     * @param request - AppUpdateUserTaskStatusRequest
     * @param headers - AppUpdateUserTaskStatusHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns AppUpdateUserTaskStatusResponse
     */
    async appUpdateUserTaskStatusWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.operatorId)) {
            body["operatorId"] = request.operatorId;
        }
        if (!tea_util_1.default.isUnset(request.userTaskStatuses)) {
            body["userTaskStatuses"] = request.userTaskStatuses;
        }
        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: "AppUpdateUserTaskStatus",
            version: "todoEE_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/todoEE/apps/users/tasks/statuses`,
            method: "PUT",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new AppUpdateUserTaskStatusResponse({}));
    }
    /**
     * 更新用户的待办状态
     *
     * @param request - AppUpdateUserTaskStatusRequest
     * @returns AppUpdateUserTaskStatusResponse
     */
    async appUpdateUserTaskStatus(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new AppUpdateUserTaskStatusHeaders({});
        return await this.appUpdateUserTaskStatusWithOptions(request, headers, runtime);
    }
    /**
     * 创建企业待办
     *
     * @param request - CreateEnterpriseTodoTaskRequest
     * @param headers - CreateEnterpriseTodoTaskHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns CreateEnterpriseTodoTaskResponse
     */
    async createEnterpriseTodoTaskWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.bizCategoryId)) {
            body["bizCategoryId"] = request.bizCategoryId;
        }
        if (!tea_util_1.default.isUnset(request.customFields)) {
            body["customFields"] = request.customFields;
        }
        if (!tea_util_1.default.isUnset(request.description)) {
            body["description"] = request.description;
        }
        if (!tea_util_1.default.isUnset(request.detailUrl)) {
            body["detailUrl"] = request.detailUrl;
        }
        if (!tea_util_1.default.isUnset(request.dueTime)) {
            body["dueTime"] = request.dueTime;
        }
        if (!tea_util_1.default.isUnset(request.executorIds)) {
            body["executorIds"] = request.executorIds;
        }
        if (!tea_util_1.default.isUnset(request.notifyConfigs)) {
            body["notifyConfigs"] = request.notifyConfigs;
        }
        if (!tea_util_1.default.isUnset(request.operatorId)) {
            body["operatorId"] = request.operatorId;
        }
        if (!tea_util_1.default.isUnset(request.priority)) {
            body["priority"] = request.priority;
        }
        if (!tea_util_1.default.isUnset(request.sourceId)) {
            body["sourceId"] = request.sourceId;
        }
        if (!tea_util_1.default.isUnset(request.sourceTitle)) {
            body["sourceTitle"] = request.sourceTitle;
        }
        if (!tea_util_1.default.isUnset(request.subject)) {
            body["subject"] = request.subject;
        }
        if (!tea_util_1.default.isUnset(request.trackerIds)) {
            body["trackerIds"] = request.trackerIds;
        }
        if (!tea_util_1.default.isUnset(request.type)) {
            body["type"] = request.type;
        }
        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: "CreateEnterpriseTodoTask",
            version: "todoEE_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/todoEE/users/tasks`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new CreateEnterpriseTodoTaskResponse({}));
    }
    /**
     * 创建企业待办
     *
     * @param request - CreateEnterpriseTodoTaskRequest
     * @returns CreateEnterpriseTodoTaskResponse
     */
    async createEnterpriseTodoTask(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new CreateEnterpriseTodoTaskHeaders({});
        return await this.createEnterpriseTodoTaskWithOptions(request, headers, runtime);
    }
    /**
     * 创建专属待办模板实例
     *
     * @param request - CreateStandardTemplateRequest
     * @param headers - CreateStandardTemplateHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns CreateStandardTemplateResponse
     */
    async createStandardTemplateWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.actions)) {
            body["actions"] = request.actions;
        }
        if (!tea_util_1.default.isUnset(request.description)) {
            body["description"] = request.description;
        }
        if (!tea_util_1.default.isUnset(request.name)) {
            body["name"] = request.name;
        }
        if (!tea_util_1.default.isUnset(request.operatorId)) {
            body["operatorId"] = request.operatorId;
        }
        if (!tea_util_1.default.isUnset(request.service)) {
            body["service"] = request.service;
        }
        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: "CreateStandardTemplate",
            version: "todoEE_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/todoEE/standards/templates`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new CreateStandardTemplateResponse({}));
    }
    /**
     * 创建专属待办模板实例
     *
     * @param request - CreateStandardTemplateRequest
     * @returns CreateStandardTemplateResponse
     */
    async createStandardTemplate(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new CreateStandardTemplateHeaders({});
        return await this.createStandardTemplateWithOptions(request, headers, runtime);
    }
    /**
     * 删除应用类目信息
     *
     * @param request - DeleteCategorySourceConfigRequest
     * @param headers - DeleteCategorySourceConfigHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns DeleteCategorySourceConfigResponse
     */
    async deleteCategorySourceConfigWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.bizCategoryId)) {
            body["bizCategoryId"] = request.bizCategoryId;
        }
        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: "DeleteCategorySourceConfig",
            version: "todoEE_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/todoEE/apps/categories/sourceConfigs/remove`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new DeleteCategorySourceConfigResponse({}));
    }
    /**
     * 删除应用类目信息
     *
     * @param request - DeleteCategorySourceConfigRequest
     * @returns DeleteCategorySourceConfigResponse
     */
    async deleteCategorySourceConfig(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new DeleteCategorySourceConfigHeaders({});
        return await this.deleteCategorySourceConfigWithOptions(request, headers, runtime);
    }
    /**
     * 删除待办
     *
     * @param request - DeleteTodoEETaskRequest
     * @param headers - DeleteTodoEETaskHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns DeleteTodoEETaskResponse
     */
    async deleteTodoEETaskWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.taskIds)) {
            body["taskIds"] = request.taskIds;
        }
        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: "DeleteTodoEETask",
            version: "todoEE_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/todoEE/users/tasks/remove`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new DeleteTodoEETaskResponse({}));
    }
    /**
     * 删除待办
     *
     * @param request - DeleteTodoEETaskRequest
     * @returns DeleteTodoEETaskResponse
     */
    async deleteTodoEETask(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new DeleteTodoEETaskHeaders({});
        return await this.deleteTodoEETaskWithOptions(request, headers, runtime);
    }
    /**
     * 查询应用注册类目信息列表
     *
     * @param request - GetCategorySourceConfigListRequest
     * @param headers - GetCategorySourceConfigListHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GetCategorySourceConfigListResponse
     */
    async getCategorySourceConfigListWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.nextToken)) {
            query["nextToken"] = request.nextToken;
        }
        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: "GetCategorySourceConfigList",
            version: "todoEE_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/todoEE/apps/categories/sourceConfigs/lists/query`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new GetCategorySourceConfigListResponse({}));
    }
    /**
     * 查询应用注册类目信息列表
     *
     * @param request - GetCategorySourceConfigListRequest
     * @returns GetCategorySourceConfigListResponse
     */
    async getCategorySourceConfigList(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new GetCategorySourceConfigListHeaders({});
        return await this.getCategorySourceConfigListWithOptions(request, headers, runtime);
    }
    /**
     * 查询创建的Template列表
     *
     * @param request - GetTemplateListRequest
     * @param headers - GetTemplateListHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GetTemplateListResponse
     */
    async getTemplateListWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.pageNumber)) {
            body["pageNumber"] = request.pageNumber;
        }
        if (!tea_util_1.default.isUnset(request.pageSize)) {
            body["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,
            body: openapi_util_1.default.parseToMap(body),
        });
        let params = new $OpenApi.Params({
            action: "GetTemplateList",
            version: "todoEE_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/todoEE/templates/list`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new GetTemplateListResponse({}));
    }
    /**
     * 查询创建的Template列表
     *
     * @param request - GetTemplateListRequest
     * @returns GetTemplateListResponse
     */
    async getTemplateList(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new GetTemplateListHeaders({});
        return await this.getTemplateListWithOptions(request, headers, runtime);
    }
    /**
     * 查询用户待办列表
     *
     * @param request - GetUserTaskListRequest
     * @param headers - GetUserTaskListHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GetUserTaskListResponse
     */
    async getUserTaskListWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.done)) {
            body["done"] = request.done;
        }
        if (!tea_util_1.default.isUnset(request.pageNumber)) {
            body["pageNumber"] = request.pageNumber;
        }
        if (!tea_util_1.default.isUnset(request.pageSize)) {
            body["pageSize"] = request.pageSize;
        }
        if (!tea_util_1.default.isUnset(request.type)) {
            body["type"] = request.type;
        }
        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: "GetUserTaskList",
            version: "todoEE_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/todoEE/users/tasks/list`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new GetUserTaskListResponse({}));
    }
    /**
     * 查询用户待办列表
     *
     * @param request - GetUserTaskListRequest
     * @returns GetUserTaskListResponse
     */
    async getUserTaskList(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new GetUserTaskListHeaders({});
        return await this.getUserTaskListWithOptions(request, headers, runtime);
    }
    /**
     * 查询任务所有执行人的完成状态
     *
     * @param request - QueryTaskExecutionStatusRequest
     * @param headers - QueryTaskExecutionStatusHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns QueryTaskExecutionStatusResponse
     */
    async queryTaskExecutionStatusWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.pageNumber)) {
            query["pageNumber"] = request.pageNumber;
        }
        if (!tea_util_1.default.isUnset(request.pageSize)) {
            query["pageSize"] = request.pageSize;
        }
        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: "QueryTaskExecutionStatus",
            version: "todoEE_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/todoEE/apps/users/tasks/executionStatuses`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new QueryTaskExecutionStatusResponse({}));
    }
    /**
     * 查询任务所有执行人的完成状态
     *
     * @param request - QueryTaskExecutionStatusRequest
     * @returns QueryTaskExecutionStatusResponse
     */
    async queryTaskExecutionStatus(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new QueryTaskExecutionStatusHeaders({});
        return await this.queryTaskExecutionStatusWithOptions(request, headers, runtime);
    }
    /**
     * 注册应用类目信息
     *
     * @param request - RegisterCategorySourceConfigRequest
     * @param headers - RegisterCategorySourceConfigHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns RegisterCategorySourceConfigResponse
     */
    async registerCategorySourceConfigWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.bizCategoryId)) {
            body["bizCategoryId"] = request.bizCategoryId;
        }
        if (!tea_util_1.default.isUnset(request.bizCategoryName)) {
            body["bizCategoryName"] = request.bizCategoryName;
        }
        if (!tea_util_1.default.isUnset(request.operatorId)) {
            body["operatorId"] = request.operatorId;
        }
        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: "RegisterCategorySourceConfig",
            version: "todoEE_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/todoEE/apps/categories/sourceConfigs/register`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new RegisterCategorySourceConfigResponse({}));
    }
    /**
     * 注册应用类目信息
     *
     * @param request - RegisterCategorySourceConfigRequest
     * @returns RegisterCategorySourceConfigResponse
     */
    async registerCategorySourceConfig(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new RegisterCategorySourceConfigHeaders({});
        return await this.registerCategorySourceConfigWithOptions(request, headers, runtime);
    }
    /**
     * 修改应用类目注册信息
     *
     * @param request - UpdateCategorySourceConfigRequest
     * @param headers - UpdateCategorySourceConfigHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns UpdateCategorySourceConfigResponse
     */
    async updateCategorySourceConfigWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.bizCategoryId)) {
            body["bizCategoryId"] = request.bizCategoryId;
        }
        if (!tea_util_1.default.isUnset(request.bizCategoryName)) {
            body["bizCategoryName"] = request.bizCategoryName;
        }
        if (!tea_util_1.default.isUnset(request.operatorId)) {
            body["operatorId"] = request.operatorId;
        }
        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: "UpdateCategorySourceConfig",
            version: "todoEE_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/todoEE/apps/categories/sourceConfigs`,
            method: "PUT",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new UpdateCategorySourceConfigResponse({}));
    }
    /**
     * 修改应用类目注册信息
     *
     * @param request - UpdateCategorySourceConfigRequest
     * @returns UpdateCategorySourceConfigResponse
     */
    async updateCategorySourceConfig(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new UpdateCategorySourceConfigHeaders({});
        return await this.updateCategorySourceConfigWithOptions(request, headers, runtime);
    }
    /**
     * 更新标准模板
     *
     * @param request - UpdateStandardTemplateRequest
     * @param headers - UpdateStandardTemplateHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns UpdateStandardTemplateResponse
     */
    async updateStandardTemplateWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.actions)) {
            body["actions"] = request.actions;
        }
        if (!tea_util_1.default.isUnset(request.operatorId)) {
            body["operatorId"] = request.operatorId;
        }
        if (!tea_util_1.default.isUnset(request.service)) {
            body["service"] = request.service;
        }
        if (!tea_util_1.default.isUnset(request.templateKey)) {
            body["templateKey"] = request.templateKey;
        }
        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: "UpdateStandardTemplate",
            version: "todoEE_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/todoEE/standards/templates/infos`,
            method: "PUT",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new UpdateStandardTemplateResponse({}));
    }
    /**
     * 更新标准模板
     *
     * @param request - UpdateStandardTemplateRequest
     * @returns UpdateStandardTemplateResponse
     */
    async updateStandardTemplate(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new UpdateStandardTemplateHeaders({});
        return await this.updateStandardTemplateWithOptions(request, headers, runtime);
    }
    /**
     * 更新待办信息
     *
     * @param request - UpdateTaskRequest
     * @param headers - UpdateTaskHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns UpdateTaskResponse
     */
    async updateTaskWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.description)) {
            body["description"] = request.description;
        }
        if (!tea_util_1.default.isUnset(request.done)) {
            body["done"] = request.done;
        }
        if (!tea_util_1.default.isUnset(request.dueTime)) {
            body["dueTime"] = request.dueTime;
        }
        if (!tea_util_1.default.isUnset(request.executorIds)) {
            body["executorIds"] = request.executorIds;
        }
        if (!tea_util_1.default.isUnset(request.subject)) {
            body["subject"] = request.subject;
        }
        if (!tea_util_1.default.isUnset(request.taskId)) {
            body["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,
            body: openapi_util_1.default.parseToMap(body),
        });
        let params = new $OpenApi.Params({
            action: "UpdateTask",
            version: "todoEE_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/todoEE/users/tasks/infos`,
            method: "PUT",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new UpdateTaskResponse({}));
    }
    /**
     * 更新待办信息
     *
     * @param request - UpdateTaskRequest
     * @returns UpdateTaskResponse
     */
    async updateTask(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new UpdateTaskHeaders({});
        return await this.updateTaskWithOptions(request, headers, runtime);
    }
    /**
     * 更新用户的待办状态
     *
     * @param request - UpdateUserTaskStatusRequest
     * @param headers - UpdateUserTaskStatusHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns UpdateUserTaskStatusResponse
     */
    async updateUserTaskStatusWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.operatorId)) {
            body["operatorId"] = request.operatorId;
        }
        if (!tea_util_1.default.isUnset(request.userTaskStatuses)) {
            body["userTaskStatuses"] = request.userTaskStatuses;
        }
        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: "UpdateUserTaskStatus",
            version: "todoEE_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/todoEE/users/tasks/statuses`,
            method: "PUT",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new UpdateUserTaskStatusResponse({}));
    }
    /**
     * 更新用户的待办状态
     *
     * @param request - UpdateUserTaskStatusRequest
     * @returns UpdateUserTaskStatusResponse
     */
    async updateUserTaskStatus(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new UpdateUserTaskStatusHeaders({});
        return await this.updateUserTaskStatusWithOptions(request, headers, runtime);
    }
}
exports.default = Client;
//# sourceMappingURL=client.js.map