"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.DeleteDirResponse = exports.DeleteDirResponseBody = exports.DeleteDirRequest = exports.DeleteDirHeaders = exports.CreateIntegratedTaskResponse = exports.CreateIntegratedTaskResponseBody = exports.CreateIntegratedTaskRequest = exports.CreateIntegratedTaskHeaders = exports.CopyProcessResponse = exports.CopyProcessResponseBody = exports.CopyProcessRequest = exports.CopyProcessHeaders = exports.CleanProcessDataResponse = exports.CleanProcessDataResponseBody = exports.CleanProcessDataRequest = exports.CleanProcessDataHeaders = exports.CancelIntegratedTaskResponse = exports.CancelIntegratedTaskResponseBody = exports.CancelIntegratedTaskRequest = exports.CancelIntegratedTaskHeaders = exports.BatchUpdateProcessInstanceResponse = exports.BatchUpdateProcessInstanceResponseBody = exports.BatchUpdateProcessInstanceRequest = exports.BatchUpdateProcessInstanceHeaders = exports.BatchTasksRedirectResponse = exports.BatchTasksRedirectResponseBody = exports.BatchTasksRedirectRequest = exports.BatchTasksRedirectHeaders = exports.BatchExecuteProcessInstancesResponse = exports.BatchExecuteProcessInstancesResponseBody = exports.BatchExecuteProcessInstancesRequest = exports.BatchExecuteProcessInstancesHeaders = exports.ArchiveProcessInstanceResponse = exports.ArchiveProcessInstanceResponseBody = exports.ArchiveProcessInstanceRequest = exports.ArchiveProcessInstanceHeaders = exports.AddProcessInstanceCommentResponse = exports.AddProcessInstanceCommentResponseBody = exports.AddProcessInstanceCommentRequest = exports.AddProcessInstanceCommentHeaders = exports.AddApproveDentryAuthResponse = exports.AddApproveDentryAuthResponseBody = exports.AddApproveDentryAuthRequest = exports.AddApproveDentryAuthHeaders = exports.ResultValue = exports.SelectOption = exports.FormDataSource = exports.FormComponentProps = exports.FormComponent = exports.AvaliableTemplate = void 0;
exports.GetProcessInstanceWithExtraResponseBody = exports.GetProcessInstanceWithExtraRequest = exports.GetProcessInstanceWithExtraHeaders = exports.GetProcessInstanceResponse = exports.GetProcessInstanceResponseBody = exports.GetProcessInstanceRequest = exports.GetProcessInstanceHeaders = exports.GetProcessConfigResponse = exports.GetProcessConfigResponseBody = exports.GetProcessConfigRequest = exports.GetProcessConfigHeaders = exports.GetProcessCodeByNameResponse = exports.GetProcessCodeByNameResponseBody = exports.GetProcessCodeByNameRequest = exports.GetProcessCodeByNameHeaders = exports.GetManageProcessByStaffIdResponse = exports.GetManageProcessByStaffIdResponseBody = exports.GetManageProcessByStaffIdRequest = exports.GetManageProcessByStaffIdHeaders = exports.GetHandSignDownloadUrlResponse = exports.GetHandSignDownloadUrlResponseBody = exports.GetHandSignDownloadUrlRequest = exports.GetHandSignDownloadUrlHeaders = exports.GetFieldModifiedHistoryResponse = exports.GetFieldModifiedHistoryResponseBody = exports.GetFieldModifiedHistoryRequest = exports.GetFieldModifiedHistoryHeaders = exports.GetCrmProcCodesResponse = exports.GetCrmProcCodesResponseBody = exports.GetCrmProcCodesHeaders = exports.GetConditionFormComponentResponse = exports.GetConditionFormComponentResponseBody = exports.GetConditionFormComponentRequest = exports.GetConditionFormComponentHeaders = exports.GetAttachmentSpaceResponse = exports.GetAttachmentSpaceResponseBody = exports.GetAttachmentSpaceRequest = exports.GetAttachmentSpaceHeaders = exports.FormCreateResponse = exports.FormCreateResponseBody = exports.FormCreateRequest = exports.FormCreateHeaders = exports.ExecuteProcessInstanceResponse = exports.ExecuteProcessInstanceResponseBody = exports.ExecuteProcessInstanceRequest = exports.ExecuteProcessInstanceHeaders = exports.DeleteProcessResponse = exports.DeleteProcessResponseBody = exports.DeleteProcessRequest = exports.DeleteProcessHeaders = void 0;
exports.PremiumAppendTaskHeaders = exports.PremiumAddApproveDentryAuthResponse = exports.PremiumAddApproveDentryAuthResponseBody = exports.PremiumAddApproveDentryAuthRequest = exports.PremiumAddApproveDentryAuthHeaders = exports.PagesExportInstancesResponse = exports.PagesExportInstancesResponseBody = exports.PagesExportInstancesRequest = exports.PagesExportInstancesHeaders = exports.ListUserVisibleBpmsProcessesResponse = exports.ListUserVisibleBpmsProcessesResponseBody = exports.ListUserVisibleBpmsProcessesRequest = exports.ListUserVisibleBpmsProcessesHeaders = exports.ListTodoWorkRecordsResponse = exports.ListTodoWorkRecordsResponseBody = exports.ListTodoWorkRecordsRequest = exports.ListTodoWorkRecordsHeaders = exports.ListProcessInstanceIdsResponse = exports.ListProcessInstanceIdsResponseBody = exports.ListProcessInstanceIdsRequest = exports.ListProcessInstanceIdsHeaders = exports.InstallAppResponse = exports.InstallAppResponseBody = exports.InstallAppRequest = exports.InstallAppHeaders = exports.InsertOrUpdateDirResponse = exports.InsertOrUpdateDirResponseBody = exports.InsertOrUpdateDirRequest = exports.InsertOrUpdateDirHeaders = exports.GrantProcessInstanceForDownloadFileResponse = exports.GrantProcessInstanceForDownloadFileResponseBody = exports.GrantProcessInstanceForDownloadFileRequest = exports.GrantProcessInstanceForDownloadFileHeaders = exports.GrantCspaceAuthorizationResponse = exports.GrantCspaceAuthorizationRequest = exports.GrantCspaceAuthorizationHeaders = exports.GetUserTodoTaskSumResponse = exports.GetUserTodoTaskSumResponseBody = exports.GetUserTodoTaskSumRequest = exports.GetUserTodoTaskSumHeaders = exports.GetSpaceWithDownloadAuthResponse = exports.GetSpaceWithDownloadAuthResponseBody = exports.GetSpaceWithDownloadAuthRequest = exports.GetSpaceWithDownloadAuthHeaders = exports.GetSchemaAndProcessconfigBatchllyResponse = exports.GetSchemaAndProcessconfigBatchllyResponseBody = exports.GetSchemaAndProcessconfigBatchllyShrinkRequest = exports.GetSchemaAndProcessconfigBatchllyRequest = exports.GetSchemaAndProcessconfigBatchllyHeaders = exports.GetProcessInstanceWithExtraResponse = void 0;
exports.PremiumGetProcessInstancesResponseBody = exports.PremiumGetProcessInstancesRequest = exports.PremiumGetProcessInstancesHeaders = exports.PremiumGetNoticedInstancesResponse = exports.PremiumGetNoticedInstancesResponseBody = exports.PremiumGetNoticedInstancesRequest = exports.PremiumGetNoticedInstancesHeaders = exports.PremiumGetInstFieldSettingResponse = exports.PremiumGetInstFieldSettingResponseBody = exports.PremiumGetInstFieldSettingRequest = exports.PremiumGetInstFieldSettingHeaders = exports.PremiumGetFormSchemaResponse = exports.PremiumGetFormSchemaResponseBody = exports.PremiumGetFormSchemaRequest = exports.PremiumGetFormSchemaHeaders = exports.PremiumGetFormInstancesResponse = exports.PremiumGetFormInstancesResponseBody = exports.PremiumGetFormInstancesRequest = exports.PremiumGetFormInstancesHeaders = exports.PremiumGetFormInstanceResponse = exports.PremiumGetFormInstanceResponseBody = exports.PremiumGetFormInstanceRequest = exports.PremiumGetFormInstanceHeaders = exports.PremiumGetFieldModifiedHistoryResponse = exports.PremiumGetFieldModifiedHistoryResponseBody = exports.PremiumGetFieldModifiedHistoryRequest = exports.PremiumGetFieldModifiedHistoryHeaders = exports.PremiumGetDoneTasksResponse = exports.PremiumGetDoneTasksResponseBody = exports.PremiumGetDoneTasksRequest = exports.PremiumGetDoneTasksHeaders = exports.PremiumGetAttachmentSpaceResponse = exports.PremiumGetAttachmentSpaceResponseBody = exports.PremiumGetAttachmentSpaceRequest = exports.PremiumGetAttachmentSpaceHeaders = exports.PremiumDeleteFormInstanceResponse = exports.PremiumDeleteFormInstanceResponseBody = exports.PremiumDeleteFormInstanceRequest = exports.PremiumDeleteFormInstanceHeaders = exports.PremiumDelDirResponse = exports.PremiumDelDirResponseBody = exports.PremiumDelDirRequest = exports.PremiumDelDirHeaders = exports.PremiumBatchExecuteProcessInstancesResponse = exports.PremiumBatchExecuteProcessInstancesResponseBody = exports.PremiumBatchExecuteProcessInstancesRequest = exports.PremiumBatchExecuteProcessInstancesHeaders = exports.PremiumAppendTaskResponse = exports.PremiumAppendTaskResponseBody = exports.PremiumAppendTaskRequest = void 0;
exports.PremiumSaveIntegratedProcessInstanceHeaders = exports.PremiumSaveIntegratedProcessResponse = exports.PremiumSaveIntegratedProcessResponseBody = exports.PremiumSaveIntegratedProcessRequest = exports.PremiumSaveIntegratedProcessHeaders = exports.PremiumSaveFormInstanceResponse = exports.PremiumSaveFormInstanceResponseBody = exports.PremiumSaveFormInstanceRequest = exports.PremiumSaveFormInstanceHeaders = exports.PremiumSaveFormResponse = exports.PremiumSaveFormResponseBody = exports.PremiumSaveFormRequest = exports.PremiumSaveFormHeaders = exports.PremiumRevertTaskResponse = exports.PremiumRevertTaskResponseBody = exports.PremiumRevertTaskRequest = exports.PremiumRevertTaskHeaders = exports.PremiumRedirectTasksByManagerResponse = exports.PremiumRedirectTasksByManagerResponseBody = exports.PremiumRedirectTasksByManagerRequest = exports.PremiumRedirectTasksByManagerHeaders = exports.PremiumQueryTodoTasksByManagerResponse = exports.PremiumQueryTodoTasksByManagerResponseBody = exports.PremiumQueryTodoTasksByManagerRequest = exports.PremiumQueryTodoTasksByManagerHeaders = exports.PremiumQuerySchemaAndProcessByCodeListResponse = exports.PremiumQuerySchemaAndProcessByCodeListResponseBody = exports.PremiumQuerySchemaAndProcessByCodeListRequest = exports.PremiumQuerySchemaAndProcessByCodeListHeaders = exports.PremiumInsertOrUpdateDirResponse = exports.PremiumInsertOrUpdateDirResponseBody = exports.PremiumInsertOrUpdateDirRequest = exports.PremiumInsertOrUpdateDirHeaders = exports.PremiumGrantProcessInstanceForDownloadFileResponse = exports.PremiumGrantProcessInstanceForDownloadFileResponseBody = exports.PremiumGrantProcessInstanceForDownloadFileRequest = exports.PremiumGrantProcessInstanceForDownloadFileHeaders = exports.PremiumGetTodoTasksResponse = exports.PremiumGetTodoTasksResponseBody = exports.PremiumGetTodoTasksRequest = exports.PremiumGetTodoTasksHeaders = exports.PremiumGetSubmittedInstancesResponse = exports.PremiumGetSubmittedInstancesResponseBody = exports.PremiumGetSubmittedInstancesRequest = exports.PremiumGetSubmittedInstancesHeaders = exports.PremiumGetSpaceWithDownloadAuthResponse = exports.PremiumGetSpaceWithDownloadAuthResponseBody = exports.PremiumGetSpaceWithDownloadAuthRequest = exports.PremiumGetSpaceWithDownloadAuthHeaders = exports.PremiumGetProcessInstancesResponse = void 0;
exports.QuerySchemaByProcessCodeResponseBody = exports.QuerySchemaByProcessCodeRequest = exports.QuerySchemaByProcessCodeHeaders = exports.QuerySchemaAndProcessResponse = exports.QuerySchemaAndProcessResponseBody = exports.QuerySchemaAndProcessRequest = exports.QuerySchemaAndProcessHeaders = exports.QueryProcessByBizCategoryIdResponse = exports.QueryProcessByBizCategoryIdResponseBody = exports.QueryProcessByBizCategoryIdRequest = exports.QueryProcessByBizCategoryIdHeaders = exports.QueryIntegratedTodoTaskResponse = exports.QueryIntegratedTodoTaskResponseBody = exports.QueryIntegratedTodoTaskRequest = exports.QueryIntegratedTodoTaskHeaders = exports.QueryFormInstanceResponse = exports.QueryFormInstanceResponseBody = exports.QueryFormInstanceRequest = exports.QueryFormInstanceHeaders = exports.QueryFormByBizTypeResponse = exports.QueryFormByBizTypeResponseBody = exports.QueryFormByBizTypeRequest = exports.QueryFormByBizTypeHeaders = exports.QueryAllProcessInstancesResponse = exports.QueryAllProcessInstancesResponseBody = exports.QueryAllProcessInstancesRequest = exports.QueryAllProcessInstancesHeaders = exports.QueryAllFormInstancesResponse = exports.QueryAllFormInstancesResponseBody = exports.QueryAllFormInstancesRequest = exports.QueryAllFormInstancesHeaders = exports.ProcessForecastResponse = exports.ProcessForecastResponseBody = exports.ProcessForecastRequest = exports.ProcessForecastHeaders = exports.PremiumUpdateProcessInstanceVariablesResponse = exports.PremiumUpdateProcessInstanceVariablesResponseBody = exports.PremiumUpdateProcessInstanceVariablesRequest = exports.PremiumUpdateProcessInstanceVariablesHeaders = exports.PremiumUpdateFormInstanceResponse = exports.PremiumUpdateFormInstanceResponseBody = exports.PremiumUpdateFormInstanceRequest = exports.PremiumUpdateFormInstanceHeaders = exports.PremiumSaveIntegratedTaskResponse = exports.PremiumSaveIntegratedTaskResponseBody = exports.PremiumSaveIntegratedTaskRequest = exports.PremiumSaveIntegratedTaskHeaders = exports.PremiumSaveIntegratedProcessInstanceResponse = exports.PremiumSaveIntegratedProcessInstanceResponseBody = exports.PremiumSaveIntegratedProcessInstanceRequest = void 0;
exports.CreateIntegratedTaskRequestTasks = exports.CreateIntegratedTaskRequestFeatureConfig = exports.CreateIntegratedTaskRequestFeatureConfigFeatures = exports.CreateIntegratedTaskRequestFeatureConfigFeaturesCallback = exports.CopyProcessResponseBodyResult = exports.CopyProcessRequestSourceProcessVOList = exports.CopyProcessRequestCopyOptions = exports.BatchUpdateProcessInstanceRequestUpdateProcessInstanceRequests = exports.BatchUpdateProcessInstanceRequestUpdateProcessInstanceRequestsNotifiers = exports.BatchTasksRedirectResponseBodyResult = exports.BatchTasksRedirectResponseBodyResultRedirectResults = exports.BatchExecuteProcessInstancesRequestTaskInfoList = exports.AddProcessInstanceCommentRequestFile = exports.AddProcessInstanceCommentRequestFileAttachments = exports.AddApproveDentryAuthRequestFileInfos = exports.FormDataSourceTarget = exports.FormComponentPropsStatField = exports.UpdateProcessInstanceResponse = exports.UpdateProcessInstanceResponseBody = exports.UpdateProcessInstanceRequest = exports.UpdateProcessInstanceHeaders = exports.UpdateIntegratedTaskResponse = exports.UpdateIntegratedTaskResponseBody = exports.UpdateIntegratedTaskRequest = exports.UpdateIntegratedTaskHeaders = exports.TodoTasksResponse = exports.TodoTasksResponseBody = exports.TodoTasksRequest = exports.TodoTasksHeaders = exports.TerminateProcessInstanceResponse = exports.TerminateProcessInstanceResponseBody = exports.TerminateProcessInstanceRequest = exports.TerminateProcessInstanceHeaders = exports.StartProcessInstanceResponse = exports.StartProcessInstanceResponseBody = exports.StartProcessInstanceRequest = exports.StartProcessInstanceHeaders = exports.SaveProcessResponse = exports.SaveProcessResponseBody = exports.SaveProcessRequest = exports.SaveProcessHeaders = exports.SaveIntegratedInstanceResponse = exports.SaveIntegratedInstanceResponseBody = exports.SaveIntegratedInstanceRequest = exports.SaveIntegratedInstanceHeaders = exports.RedirectWorkflowTaskResponse = exports.RedirectWorkflowTaskResponseBody = exports.RedirectWorkflowTaskRequest = exports.RedirectWorkflowTaskHeaders = exports.QuerySchemaByProcessCodeResponse = void 0;
exports.PremiumGetAttachmentSpaceResponseBodyResult = exports.PremiumBatchExecuteProcessInstancesRequestTaskInfoList = exports.PremiumAddApproveDentryAuthRequestFileInfos = exports.PagesExportInstancesResponseBodyResult = exports.PagesExportInstancesResponseBodyResultList = exports.PagesExportInstancesResponseBodyResultListTasks = exports.PagesExportInstancesResponseBodyResultListOperationRecords = exports.PagesExportInstancesResponseBodyResultListOperationRecordsAttachments = exports.PagesExportInstancesResponseBodyResultListFormComponentValues = exports.ListUserVisibleBpmsProcessesResponseBodyResult = exports.ListUserVisibleBpmsProcessesResponseBodyResultProcessList = exports.ListTodoWorkRecordsResponseBodyResult = exports.ListTodoWorkRecordsResponseBodyResultList = exports.ListTodoWorkRecordsResponseBodyResultListForms = exports.ListProcessInstanceIdsResponseBodyResult = exports.InstallAppResponseBodyResult = exports.InstallAppRequestInstallOption = exports.InsertOrUpdateDirResponseBodyResult = exports.GrantProcessInstanceForDownloadFileResponseBodyResult = exports.GetSpaceWithDownloadAuthResponseBodyResult = exports.GetSchemaAndProcessconfigBatchllyResponseBodyResult = exports.GetProcessInstanceWithExtraResponseBodyResult = exports.GetProcessInstanceWithExtraResponseBodyResultTasks = exports.GetProcessInstanceWithExtraResponseBodyResultOperationRecords = exports.GetProcessInstanceWithExtraResponseBodyResultOperationRecordsAttachments = exports.GetProcessInstanceWithExtraResponseBodyResultFormComponentValues = exports.GetProcessInstanceResponseBodyResult = exports.GetProcessInstanceResponseBodyResultTasks = exports.GetProcessInstanceResponseBodyResultOperationRecords = exports.GetProcessInstanceResponseBodyResultOperationRecordsAttachments = exports.GetProcessInstanceResponseBodyResultFormComponentValues = exports.GetProcessConfigResponseBodyResult = exports.GetProcessConfigResponseBodyResultVisibility = exports.GetProcessConfigResponseBodyResultTitleGenRule = exports.GetProcessConfigResponseBodyResultSubstituteSubmitConf = exports.GetProcessConfigResponseBodyResultSubstituteSubmitConfSubmitterList = exports.GetProcessConfigResponseBodyResultHandSignConf = exports.GetProcessConfigResponseBodyResultCommentConf = exports.GetProcessCodeByNameResponseBodyResult = exports.GetManageProcessByStaffIdResponseBodyResult = exports.GetHandSignDownloadUrlResponseBodyResult = exports.GetFieldModifiedHistoryResponseBodyResult = exports.GetConditionFormComponentResponseBodyResult = exports.GetAttachmentSpaceResponseBodyResult = exports.FormCreateResponseBodyResult = exports.FormCreateRequestTemplateConfig = exports.ExecuteProcessInstanceRequestFile = exports.ExecuteProcessInstanceRequestFileAttachments = exports.DeleteProcessResponseBodyResult = exports.CreateIntegratedTaskResponseBodyResult = void 0;
exports.PremiumSaveIntegratedProcessInstanceRequestFeatureConfigFeatures = exports.PremiumSaveIntegratedProcessInstanceRequestFeatureConfigFeaturesCallback = exports.PremiumSaveIntegratedProcessResponseBodyResult = exports.PremiumSaveIntegratedProcessRequestTemplateConfig = exports.PremiumSaveIntegratedProcessRequestProcessFeatureConfig = exports.PremiumSaveIntegratedProcessRequestProcessFeatureConfigFeatures = exports.PremiumSaveIntegratedProcessRequestProcessFeatureConfigFeaturesCallback = exports.PremiumSaveFormInstanceRequestFormComponentValueList = exports.PremiumSaveFormInstanceRequestFormComponentValueListDetails = exports.PremiumSaveFormInstanceRequestFormComponentValueListDetailsDetails = exports.PremiumSaveFormResponseBodyResult = exports.PremiumRedirectTasksByManagerResponseBodyResult = exports.PremiumRedirectTasksByManagerResponseBodyResultRedirectResults = exports.PremiumQueryTodoTasksByManagerResponseBodyResult = exports.PremiumQueryTodoTasksByManagerResponseBodyResultList = exports.PremiumQuerySchemaAndProcessByCodeListResponseBodyResult = exports.PremiumInsertOrUpdateDirResponseBodyResult = exports.PremiumGrantProcessInstanceForDownloadFileResponseBodyResult = exports.PremiumGetTodoTasksResponseBodyResult = exports.PremiumGetTodoTasksResponseBodyResultList = exports.PremiumGetSubmittedInstancesResponseBodyResult = exports.PremiumGetSubmittedInstancesResponseBodyResultList = exports.PremiumGetSpaceWithDownloadAuthResponseBodyResult = exports.PremiumGetProcessInstancesResponseBodyResult = exports.PremiumGetProcessInstancesResponseBodyResultList = exports.PremiumGetProcessInstancesResponseBodyResultListTasks = exports.PremiumGetProcessInstancesResponseBodyResultListOperationRecords = exports.PremiumGetProcessInstancesResponseBodyResultListOperationRecordsAttachments = exports.PremiumGetProcessInstancesResponseBodyResultListFormComponentValues = exports.PremiumGetNoticedInstancesResponseBodyResult = exports.PremiumGetNoticedInstancesResponseBodyResultList = exports.PremiumGetInstFieldSettingResponseBodyResult = exports.PremiumGetFormSchemaResponseBodyResult = exports.PremiumGetFormSchemaResponseBodyResultSchemaContent = exports.PremiumGetFormSchemaResponseBodyResultSchemaContentItems = exports.PremiumGetFormSchemaResponseBodyResultSchemaContentItemsProps = exports.PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsStatField = exports.PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsPush = exports.PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsObjOptions = exports.PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsBehaviorLinkage = exports.PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsBehaviorLinkageTargets = exports.PremiumGetFormSchemaResponseBodyResultSchemaContentItemsChildren = exports.PremiumGetFormSchemaResponseBodyResultSchemaContentItemsChildrenProps = exports.PremiumGetFormInstancesResponseBodyResult = exports.PremiumGetFormInstancesResponseBodyResultValues = exports.PremiumGetFormInstancesResponseBodyResultValuesFormInstDataList = exports.PremiumGetFormInstanceResponseBodyFormInstDataList = exports.PremiumGetFieldModifiedHistoryResponseBodyResult = exports.PremiumGetDoneTasksResponseBodyResult = exports.PremiumGetDoneTasksResponseBodyResultList = void 0;
exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContent = exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContentItems = exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsProps = exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsStatField = exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsPush = exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsObjOptions = exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsBehaviorLinkage = exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsBehaviorLinkageTargets = exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsChildren = exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsChildrenProps = exports.QuerySchemaAndProcessResponseBodyResult = exports.QueryProcessByBizCategoryIdResponseBodyResult = exports.QueryIntegratedTodoTaskResponseBodyResult = exports.QueryIntegratedTodoTaskResponseBodyResultList = exports.QueryFormInstanceResponseBodyFormInstDataList = exports.QueryFormByBizTypeResponseBodyResult = exports.QueryAllProcessInstancesResponseBodyResult = exports.QueryAllProcessInstancesResponseBodyResultList = exports.QueryAllProcessInstancesResponseBodyResultListTasks = exports.QueryAllProcessInstancesResponseBodyResultListOperationRecords = exports.QueryAllProcessInstancesResponseBodyResultListOperationRecordsAttachments = exports.QueryAllProcessInstancesResponseBodyResultListFormComponentValues = exports.QueryAllFormInstancesResponseBodyResult = exports.QueryAllFormInstancesResponseBodyResultValues = exports.QueryAllFormInstancesResponseBodyResultValuesFormInstDataList = exports.ProcessForecastResponseBodyResult = exports.ProcessForecastResponseBodyResultWorkflowForecastNodes = exports.ProcessForecastResponseBodyResultWorkflowActivityRules = exports.ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActor = exports.ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActorActorSelectionRange = exports.ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActorActorSelectionRangeLabels = exports.ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActorActorSelectionRangeApprovals = exports.ProcessForecastResponseBodyResultWorkflowActivityRulesActivityActioners = exports.ProcessForecastRequestFormComponentValues = exports.ProcessForecastRequestFormComponentValuesDetails = exports.ProcessForecastRequestFormComponentValuesDetailsDetails = exports.PremiumUpdateProcessInstanceVariablesRequestVariables = exports.PremiumUpdateFormInstanceRequestFormComponentValueList = exports.PremiumUpdateFormInstanceRequestFormComponentValueListDetails = exports.PremiumUpdateFormInstanceRequestFormComponentValueListDetailsDetails = exports.PremiumSaveIntegratedTaskResponseBodyResult = exports.PremiumSaveIntegratedTaskRequestTasks = exports.PremiumSaveIntegratedTaskRequestTaskConfig = exports.PremiumSaveIntegratedTaskRequestFeatureConfig = exports.PremiumSaveIntegratedTaskRequestFeatureConfigFeatures = exports.PremiumSaveIntegratedTaskRequestFeatureConfigFeaturesCallback = exports.PremiumSaveIntegratedProcessInstanceResponseBodyResult = exports.PremiumSaveIntegratedProcessInstanceRequestNotifiers = exports.PremiumSaveIntegratedProcessInstanceRequestFormComponentValueList = exports.PremiumSaveIntegratedProcessInstanceRequestFeatureConfig = void 0;
exports.UpdateProcessInstanceRequestNotifiers = exports.UpdateIntegratedTaskRequestTasks = exports.TodoTasksResponseBodyResult = exports.TodoTasksResponseBodyResultList = exports.StartProcessInstanceRequestTargetSelectActioners = exports.StartProcessInstanceRequestFormComponentValues = exports.StartProcessInstanceRequestFormComponentValuesDetails = exports.StartProcessInstanceRequestFormComponentValuesDetailsDetails = exports.StartProcessInstanceRequestApprovers = exports.SaveProcessResponseBodyResult = exports.SaveProcessRequestTemplateConfig = exports.SaveProcessRequestProcessFeatureConfig = exports.SaveProcessRequestProcessFeatureConfigFeatures = exports.SaveProcessRequestProcessFeatureConfigFeaturesCallback = exports.SaveIntegratedInstanceResponseBodyResult = exports.SaveIntegratedInstanceRequestNotifiers = exports.SaveIntegratedInstanceRequestFormComponentValueList = exports.SaveIntegratedInstanceRequestFeatureConfig = exports.SaveIntegratedInstanceRequestFeatureConfigFeatures = exports.SaveIntegratedInstanceRequestFeatureConfigFeaturesCallback = exports.RedirectWorkflowTaskRequestFile = exports.RedirectWorkflowTaskRequestFileAttachments = exports.QuerySchemaByProcessCodeResponseBodyResult = 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 AvaliableTemplate extends $tea.Model {
    static names() {
        return {
            name: 'name',
            processCode: 'processCode',
        };
    }
    static types() {
        return {
            name: 'string',
            processCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AvaliableTemplate = AvaliableTemplate;
class FormComponent extends $tea.Model {
    static names() {
        return {
            children: 'children',
            componentType: 'componentType',
            props: 'props',
        };
    }
    static types() {
        return {
            children: { 'type': 'array', 'itemType': FormComponent },
            componentType: 'string',
            props: FormComponentProps,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.FormComponent = FormComponent;
class FormComponentProps extends $tea.Model {
    static names() {
        return {
            actionName: 'actionName',
            addressModel: 'addressModel',
            align: 'align',
            asyncCondition: 'asyncCondition',
            availableTemplates: 'availableTemplates',
            bizAlias: 'bizAlias',
            bizType: 'bizType',
            choice: 'choice',
            commonBizType: 'commonBizType',
            componentId: 'componentId',
            content: 'content',
            dataSource: 'dataSource',
            disabled: 'disabled',
            duration: 'duration',
            durationLabel: 'durationLabel',
            format: 'format',
            formula: 'formula',
            invisible: 'invisible',
            label: 'label',
            limit: 'limit',
            link: 'link',
            maxLength: 'maxLength',
            mode: 'mode',
            multiple: 'multiple',
            options: 'options',
            placeholder: 'placeholder',
            precision: 'precision',
            print: 'print',
            required: 'required',
            statField: 'statField',
            tableViewMode: 'tableViewMode',
            unit: 'unit',
            upper: 'upper',
            verticalPrint: 'verticalPrint',
        };
    }
    static types() {
        return {
            actionName: 'string',
            addressModel: 'string',
            align: 'string',
            asyncCondition: 'boolean',
            availableTemplates: { 'type': 'array', 'itemType': AvaliableTemplate },
            bizAlias: 'string',
            bizType: 'string',
            choice: 'string',
            commonBizType: 'string',
            componentId: 'string',
            content: 'string',
            dataSource: FormDataSource,
            disabled: 'boolean',
            duration: 'boolean',
            durationLabel: 'string',
            format: 'string',
            formula: 'string',
            invisible: 'boolean',
            label: 'string',
            limit: 'number',
            link: 'string',
            maxLength: 'number',
            mode: 'string',
            multiple: 'boolean',
            options: { 'type': 'array', 'itemType': SelectOption },
            placeholder: 'string',
            precision: 'number',
            print: 'string',
            required: 'boolean',
            statField: { 'type': 'array', 'itemType': FormComponentPropsStatField },
            tableViewMode: 'string',
            unit: 'string',
            upper: 'string',
            verticalPrint: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.FormComponentProps = FormComponentProps;
class FormDataSource extends $tea.Model {
    static names() {
        return {
            target: 'target',
            type: 'type',
        };
    }
    static types() {
        return {
            target: FormDataSourceTarget,
            type: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.FormDataSource = FormDataSource;
class SelectOption extends $tea.Model {
    static names() {
        return {
            key: 'key',
            value: 'value',
        };
    }
    static types() {
        return {
            key: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.SelectOption = SelectOption;
class ResultValue extends $tea.Model {
    static names() {
        return {
            result: 'result',
            message: 'message',
        };
    }
    static types() {
        return {
            result: 'boolean',
            message: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ResultValue = ResultValue;
class AddApproveDentryAuthHeaders 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.AddApproveDentryAuthHeaders = AddApproveDentryAuthHeaders;
class AddApproveDentryAuthRequest extends $tea.Model {
    static names() {
        return {
            fileInfos: 'fileInfos',
            userId: 'userId',
        };
    }
    static types() {
        return {
            fileInfos: { 'type': 'array', 'itemType': AddApproveDentryAuthRequestFileInfos },
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AddApproveDentryAuthRequest = AddApproveDentryAuthRequest;
class AddApproveDentryAuthResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: 'boolean',
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AddApproveDentryAuthResponseBody = AddApproveDentryAuthResponseBody;
class AddApproveDentryAuthResponse 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: AddApproveDentryAuthResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AddApproveDentryAuthResponse = AddApproveDentryAuthResponse;
class AddProcessInstanceCommentHeaders 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.AddProcessInstanceCommentHeaders = AddProcessInstanceCommentHeaders;
class AddProcessInstanceCommentRequest extends $tea.Model {
    static names() {
        return {
            commentUserId: 'commentUserId',
            file: 'file',
            processInstanceId: 'processInstanceId',
            text: 'text',
        };
    }
    static types() {
        return {
            commentUserId: 'string',
            file: AddProcessInstanceCommentRequestFile,
            processInstanceId: 'string',
            text: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AddProcessInstanceCommentRequest = AddProcessInstanceCommentRequest;
class AddProcessInstanceCommentResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: 'boolean',
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AddProcessInstanceCommentResponseBody = AddProcessInstanceCommentResponseBody;
class AddProcessInstanceCommentResponse 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: AddProcessInstanceCommentResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AddProcessInstanceCommentResponse = AddProcessInstanceCommentResponse;
class ArchiveProcessInstanceHeaders 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.ArchiveProcessInstanceHeaders = ArchiveProcessInstanceHeaders;
class ArchiveProcessInstanceRequest extends $tea.Model {
    static names() {
        return {
            opUserId: 'opUserId',
            processInstanceId: 'processInstanceId',
        };
    }
    static types() {
        return {
            opUserId: 'string',
            processInstanceId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ArchiveProcessInstanceRequest = ArchiveProcessInstanceRequest;
class ArchiveProcessInstanceResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: 'boolean',
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ArchiveProcessInstanceResponseBody = ArchiveProcessInstanceResponseBody;
class ArchiveProcessInstanceResponse 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: ArchiveProcessInstanceResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ArchiveProcessInstanceResponse = ArchiveProcessInstanceResponse;
class BatchExecuteProcessInstancesHeaders 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.BatchExecuteProcessInstancesHeaders = BatchExecuteProcessInstancesHeaders;
class BatchExecuteProcessInstancesRequest extends $tea.Model {
    static names() {
        return {
            actionerUserId: 'actionerUserId',
            remark: 'remark',
            result: 'result',
            taskInfoList: 'taskInfoList',
        };
    }
    static types() {
        return {
            actionerUserId: 'string',
            remark: 'string',
            result: 'string',
            taskInfoList: { 'type': 'array', 'itemType': BatchExecuteProcessInstancesRequestTaskInfoList },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.BatchExecuteProcessInstancesRequest = BatchExecuteProcessInstancesRequest;
class BatchExecuteProcessInstancesResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: { 'type': 'map', 'keyType': 'string', 'valueType': ResultValue },
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.BatchExecuteProcessInstancesResponseBody = BatchExecuteProcessInstancesResponseBody;
class BatchExecuteProcessInstancesResponse 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: BatchExecuteProcessInstancesResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.BatchExecuteProcessInstancesResponse = BatchExecuteProcessInstancesResponse;
class BatchTasksRedirectHeaders 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.BatchTasksRedirectHeaders = BatchTasksRedirectHeaders;
class BatchTasksRedirectRequest extends $tea.Model {
    static names() {
        return {
            handoverUserId: 'handoverUserId',
            managerUserId: 'managerUserId',
            taskIds: 'taskIds',
            transfereeUserId: 'transfereeUserId',
        };
    }
    static types() {
        return {
            handoverUserId: 'string',
            managerUserId: 'string',
            taskIds: { 'type': 'array', 'itemType': 'number' },
            transfereeUserId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.BatchTasksRedirectRequest = BatchTasksRedirectRequest;
class BatchTasksRedirectResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: BatchTasksRedirectResponseBodyResult,
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.BatchTasksRedirectResponseBody = BatchTasksRedirectResponseBody;
class BatchTasksRedirectResponse 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: BatchTasksRedirectResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.BatchTasksRedirectResponse = BatchTasksRedirectResponse;
class BatchUpdateProcessInstanceHeaders 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.BatchUpdateProcessInstanceHeaders = BatchUpdateProcessInstanceHeaders;
class BatchUpdateProcessInstanceRequest extends $tea.Model {
    static names() {
        return {
            updateProcessInstanceRequests: 'updateProcessInstanceRequests',
        };
    }
    static types() {
        return {
            updateProcessInstanceRequests: { 'type': 'array', 'itemType': BatchUpdateProcessInstanceRequestUpdateProcessInstanceRequests },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.BatchUpdateProcessInstanceRequest = BatchUpdateProcessInstanceRequest;
class BatchUpdateProcessInstanceResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
        };
    }
    static types() {
        return {
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.BatchUpdateProcessInstanceResponseBody = BatchUpdateProcessInstanceResponseBody;
class BatchUpdateProcessInstanceResponse 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: BatchUpdateProcessInstanceResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.BatchUpdateProcessInstanceResponse = BatchUpdateProcessInstanceResponse;
class CancelIntegratedTaskHeaders 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.CancelIntegratedTaskHeaders = CancelIntegratedTaskHeaders;
class CancelIntegratedTaskRequest extends $tea.Model {
    static names() {
        return {
            activityId: 'activityId',
            activityIds: 'activityIds',
            processInstanceId: 'processInstanceId',
        };
    }
    static types() {
        return {
            activityId: 'string',
            activityIds: { 'type': 'array', 'itemType': 'string' },
            processInstanceId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CancelIntegratedTaskRequest = CancelIntegratedTaskRequest;
class CancelIntegratedTaskResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
        };
    }
    static types() {
        return {
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CancelIntegratedTaskResponseBody = CancelIntegratedTaskResponseBody;
class CancelIntegratedTaskResponse 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: CancelIntegratedTaskResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CancelIntegratedTaskResponse = CancelIntegratedTaskResponse;
class CleanProcessDataHeaders 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.CleanProcessDataHeaders = CleanProcessDataHeaders;
class CleanProcessDataRequest extends $tea.Model {
    static names() {
        return {
            corpId: 'corpId',
            processCode: 'processCode',
        };
    }
    static types() {
        return {
            corpId: 'string',
            processCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CleanProcessDataRequest = CleanProcessDataRequest;
class CleanProcessDataResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
        };
    }
    static types() {
        return {
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CleanProcessDataResponseBody = CleanProcessDataResponseBody;
class CleanProcessDataResponse 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: CleanProcessDataResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CleanProcessDataResponse = CleanProcessDataResponse;
class CopyProcessHeaders 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.CopyProcessHeaders = CopyProcessHeaders;
class CopyProcessRequest extends $tea.Model {
    static names() {
        return {
            copyOptions: 'copyOptions',
            sourceCorpId: 'sourceCorpId',
            sourceProcessVOList: 'sourceProcessVOList',
        };
    }
    static types() {
        return {
            copyOptions: CopyProcessRequestCopyOptions,
            sourceCorpId: 'string',
            sourceProcessVOList: { 'type': 'array', 'itemType': CopyProcessRequestSourceProcessVOList },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CopyProcessRequest = CopyProcessRequest;
class CopyProcessResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: { 'type': 'array', 'itemType': CopyProcessResponseBodyResult },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CopyProcessResponseBody = CopyProcessResponseBody;
class CopyProcessResponse 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: CopyProcessResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CopyProcessResponse = CopyProcessResponse;
class CreateIntegratedTaskHeaders 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.CreateIntegratedTaskHeaders = CreateIntegratedTaskHeaders;
class CreateIntegratedTaskRequest extends $tea.Model {
    static names() {
        return {
            activityId: 'activityId',
            featureConfig: 'featureConfig',
            processInstanceId: 'processInstanceId',
            tasks: 'tasks',
        };
    }
    static types() {
        return {
            activityId: 'string',
            featureConfig: CreateIntegratedTaskRequestFeatureConfig,
            processInstanceId: 'string',
            tasks: { 'type': 'array', 'itemType': CreateIntegratedTaskRequestTasks },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateIntegratedTaskRequest = CreateIntegratedTaskRequest;
class CreateIntegratedTaskResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: { 'type': 'array', 'itemType': CreateIntegratedTaskResponseBodyResult },
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateIntegratedTaskResponseBody = CreateIntegratedTaskResponseBody;
class CreateIntegratedTaskResponse 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: CreateIntegratedTaskResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateIntegratedTaskResponse = CreateIntegratedTaskResponse;
class DeleteDirHeaders 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.DeleteDirHeaders = DeleteDirHeaders;
class DeleteDirRequest extends $tea.Model {
    static names() {
        return {
            dirId: 'dirId',
            operateUserId: 'operateUserId',
        };
    }
    static types() {
        return {
            dirId: 'string',
            operateUserId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.DeleteDirRequest = DeleteDirRequest;
class DeleteDirResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
        };
    }
    static types() {
        return {
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.DeleteDirResponseBody = DeleteDirResponseBody;
class DeleteDirResponse 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: DeleteDirResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.DeleteDirResponse = DeleteDirResponse;
class DeleteProcessHeaders 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.DeleteProcessHeaders = DeleteProcessHeaders;
class DeleteProcessRequest extends $tea.Model {
    static names() {
        return {
            cleanRunningTask: 'cleanRunningTask',
            processCode: 'processCode',
        };
    }
    static types() {
        return {
            cleanRunningTask: 'boolean',
            processCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.DeleteProcessRequest = DeleteProcessRequest;
class DeleteProcessResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: DeleteProcessResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.DeleteProcessResponseBody = DeleteProcessResponseBody;
class DeleteProcessResponse 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: DeleteProcessResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.DeleteProcessResponse = DeleteProcessResponse;
class ExecuteProcessInstanceHeaders 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.ExecuteProcessInstanceHeaders = ExecuteProcessInstanceHeaders;
class ExecuteProcessInstanceRequest extends $tea.Model {
    static names() {
        return {
            actionerUserId: 'actionerUserId',
            file: 'file',
            processInstanceId: 'processInstanceId',
            remark: 'remark',
            result: 'result',
            taskId: 'taskId',
        };
    }
    static types() {
        return {
            actionerUserId: 'string',
            file: ExecuteProcessInstanceRequestFile,
            processInstanceId: 'string',
            remark: 'string',
            result: 'string',
            taskId: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ExecuteProcessInstanceRequest = ExecuteProcessInstanceRequest;
class ExecuteProcessInstanceResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: 'boolean',
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ExecuteProcessInstanceResponseBody = ExecuteProcessInstanceResponseBody;
class ExecuteProcessInstanceResponse 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: ExecuteProcessInstanceResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ExecuteProcessInstanceResponse = ExecuteProcessInstanceResponse;
class FormCreateHeaders 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.FormCreateHeaders = FormCreateHeaders;
class FormCreateRequest extends $tea.Model {
    static names() {
        return {
            description: 'description',
            formComponents: 'formComponents',
            name: 'name',
            processCode: 'processCode',
            templateConfig: 'templateConfig',
        };
    }
    static types() {
        return {
            description: 'string',
            formComponents: { 'type': 'array', 'itemType': FormComponent },
            name: 'string',
            processCode: 'string',
            templateConfig: FormCreateRequestTemplateConfig,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.FormCreateRequest = FormCreateRequest;
class FormCreateResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: FormCreateResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.FormCreateResponseBody = FormCreateResponseBody;
class FormCreateResponse 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: FormCreateResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.FormCreateResponse = FormCreateResponse;
class GetAttachmentSpaceHeaders 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.GetAttachmentSpaceHeaders = GetAttachmentSpaceHeaders;
class GetAttachmentSpaceRequest extends $tea.Model {
    static names() {
        return {
            agentId: 'agentId',
            userId: 'userId',
        };
    }
    static types() {
        return {
            agentId: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetAttachmentSpaceRequest = GetAttachmentSpaceRequest;
class GetAttachmentSpaceResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: GetAttachmentSpaceResponseBodyResult,
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetAttachmentSpaceResponseBody = GetAttachmentSpaceResponseBody;
class GetAttachmentSpaceResponse 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: GetAttachmentSpaceResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetAttachmentSpaceResponse = GetAttachmentSpaceResponse;
class GetConditionFormComponentHeaders 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.GetConditionFormComponentHeaders = GetConditionFormComponentHeaders;
class GetConditionFormComponentRequest extends $tea.Model {
    static names() {
        return {
            agentId: 'agentId',
            processCode: 'processCode',
        };
    }
    static types() {
        return {
            agentId: 'number',
            processCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetConditionFormComponentRequest = GetConditionFormComponentRequest;
class GetConditionFormComponentResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: { 'type': 'array', 'itemType': GetConditionFormComponentResponseBodyResult },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetConditionFormComponentResponseBody = GetConditionFormComponentResponseBody;
class GetConditionFormComponentResponse 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: GetConditionFormComponentResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetConditionFormComponentResponse = GetConditionFormComponentResponse;
class GetCrmProcCodesHeaders 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.GetCrmProcCodesHeaders = GetCrmProcCodesHeaders;
class GetCrmProcCodesResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: { 'type': 'array', 'itemType': 'string' },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetCrmProcCodesResponseBody = GetCrmProcCodesResponseBody;
class GetCrmProcCodesResponse 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: GetCrmProcCodesResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetCrmProcCodesResponse = GetCrmProcCodesResponse;
class GetFieldModifiedHistoryHeaders 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.GetFieldModifiedHistoryHeaders = GetFieldModifiedHistoryHeaders;
class GetFieldModifiedHistoryRequest extends $tea.Model {
    static names() {
        return {
            fieldId: 'fieldId',
            processInstanceId: 'processInstanceId',
        };
    }
    static types() {
        return {
            fieldId: 'string',
            processInstanceId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetFieldModifiedHistoryRequest = GetFieldModifiedHistoryRequest;
class GetFieldModifiedHistoryResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: { 'type': 'array', 'itemType': GetFieldModifiedHistoryResponseBodyResult },
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetFieldModifiedHistoryResponseBody = GetFieldModifiedHistoryResponseBody;
class GetFieldModifiedHistoryResponse 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: GetFieldModifiedHistoryResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetFieldModifiedHistoryResponse = GetFieldModifiedHistoryResponse;
class GetHandSignDownloadUrlHeaders 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.GetHandSignDownloadUrlHeaders = GetHandSignDownloadUrlHeaders;
class GetHandSignDownloadUrlRequest extends $tea.Model {
    static names() {
        return {
            handSignToken: 'handSignToken',
            processInstanceId: 'processInstanceId',
        };
    }
    static types() {
        return {
            handSignToken: 'string',
            processInstanceId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetHandSignDownloadUrlRequest = GetHandSignDownloadUrlRequest;
class GetHandSignDownloadUrlResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: GetHandSignDownloadUrlResponseBodyResult,
            success: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetHandSignDownloadUrlResponseBody = GetHandSignDownloadUrlResponseBody;
class GetHandSignDownloadUrlResponse 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: GetHandSignDownloadUrlResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetHandSignDownloadUrlResponse = GetHandSignDownloadUrlResponse;
class GetManageProcessByStaffIdHeaders 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.GetManageProcessByStaffIdHeaders = GetManageProcessByStaffIdHeaders;
class GetManageProcessByStaffIdRequest extends $tea.Model {
    static names() {
        return {
            userId: 'userId',
        };
    }
    static types() {
        return {
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetManageProcessByStaffIdRequest = GetManageProcessByStaffIdRequest;
class GetManageProcessByStaffIdResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: { 'type': 'array', 'itemType': GetManageProcessByStaffIdResponseBodyResult },
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetManageProcessByStaffIdResponseBody = GetManageProcessByStaffIdResponseBody;
class GetManageProcessByStaffIdResponse 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: GetManageProcessByStaffIdResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetManageProcessByStaffIdResponse = GetManageProcessByStaffIdResponse;
class GetProcessCodeByNameHeaders 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.GetProcessCodeByNameHeaders = GetProcessCodeByNameHeaders;
class GetProcessCodeByNameRequest extends $tea.Model {
    static names() {
        return {
            name: 'name',
        };
    }
    static types() {
        return {
            name: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessCodeByNameRequest = GetProcessCodeByNameRequest;
class GetProcessCodeByNameResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: GetProcessCodeByNameResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessCodeByNameResponseBody = GetProcessCodeByNameResponseBody;
class GetProcessCodeByNameResponse 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: GetProcessCodeByNameResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessCodeByNameResponse = GetProcessCodeByNameResponse;
class GetProcessConfigHeaders 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.GetProcessConfigHeaders = GetProcessConfigHeaders;
class GetProcessConfigRequest extends $tea.Model {
    static names() {
        return {
            procCode: 'procCode',
        };
    }
    static types() {
        return {
            procCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessConfigRequest = GetProcessConfigRequest;
class GetProcessConfigResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: GetProcessConfigResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessConfigResponseBody = GetProcessConfigResponseBody;
class GetProcessConfigResponse 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: GetProcessConfigResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessConfigResponse = GetProcessConfigResponse;
class GetProcessInstanceHeaders 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.GetProcessInstanceHeaders = GetProcessInstanceHeaders;
class GetProcessInstanceRequest extends $tea.Model {
    static names() {
        return {
            processInstanceId: 'processInstanceId',
        };
    }
    static types() {
        return {
            processInstanceId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessInstanceRequest = GetProcessInstanceRequest;
class GetProcessInstanceResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: GetProcessInstanceResponseBodyResult,
            success: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessInstanceResponseBody = GetProcessInstanceResponseBody;
class GetProcessInstanceResponse 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: GetProcessInstanceResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessInstanceResponse = GetProcessInstanceResponse;
class GetProcessInstanceWithExtraHeaders 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.GetProcessInstanceWithExtraHeaders = GetProcessInstanceWithExtraHeaders;
class GetProcessInstanceWithExtraRequest extends $tea.Model {
    static names() {
        return {
            processInstanceId: 'processInstanceId',
        };
    }
    static types() {
        return {
            processInstanceId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessInstanceWithExtraRequest = GetProcessInstanceWithExtraRequest;
class GetProcessInstanceWithExtraResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: GetProcessInstanceWithExtraResponseBodyResult,
            success: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessInstanceWithExtraResponseBody = GetProcessInstanceWithExtraResponseBody;
class GetProcessInstanceWithExtraResponse 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: GetProcessInstanceWithExtraResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessInstanceWithExtraResponse = GetProcessInstanceWithExtraResponse;
class GetSchemaAndProcessconfigBatchllyHeaders 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.GetSchemaAndProcessconfigBatchllyHeaders = GetSchemaAndProcessconfigBatchllyHeaders;
class GetSchemaAndProcessconfigBatchllyRequest extends $tea.Model {
    static names() {
        return {
            processCodes: 'processCodes',
        };
    }
    static types() {
        return {
            processCodes: { 'type': 'array', 'itemType': 'string' },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetSchemaAndProcessconfigBatchllyRequest = GetSchemaAndProcessconfigBatchllyRequest;
class GetSchemaAndProcessconfigBatchllyShrinkRequest extends $tea.Model {
    static names() {
        return {
            processCodesShrink: 'processCodes',
        };
    }
    static types() {
        return {
            processCodesShrink: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetSchemaAndProcessconfigBatchllyShrinkRequest = GetSchemaAndProcessconfigBatchllyShrinkRequest;
class GetSchemaAndProcessconfigBatchllyResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: { 'type': 'array', 'itemType': GetSchemaAndProcessconfigBatchllyResponseBodyResult },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetSchemaAndProcessconfigBatchllyResponseBody = GetSchemaAndProcessconfigBatchllyResponseBody;
class GetSchemaAndProcessconfigBatchllyResponse 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: GetSchemaAndProcessconfigBatchllyResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetSchemaAndProcessconfigBatchllyResponse = GetSchemaAndProcessconfigBatchllyResponse;
class GetSpaceWithDownloadAuthHeaders 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.GetSpaceWithDownloadAuthHeaders = GetSpaceWithDownloadAuthHeaders;
class GetSpaceWithDownloadAuthRequest extends $tea.Model {
    static names() {
        return {
            agentId: 'agentId',
            fileId: 'fileId',
            fileIdList: 'fileIdList',
            processInstanceId: 'processInstanceId',
            userId: 'userId',
            withCommentAttatchment: 'withCommentAttatchment',
        };
    }
    static types() {
        return {
            agentId: 'number',
            fileId: 'string',
            fileIdList: { 'type': 'array', 'itemType': 'string' },
            processInstanceId: 'string',
            userId: 'string',
            withCommentAttatchment: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetSpaceWithDownloadAuthRequest = GetSpaceWithDownloadAuthRequest;
class GetSpaceWithDownloadAuthResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: GetSpaceWithDownloadAuthResponseBodyResult,
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetSpaceWithDownloadAuthResponseBody = GetSpaceWithDownloadAuthResponseBody;
class GetSpaceWithDownloadAuthResponse 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: GetSpaceWithDownloadAuthResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetSpaceWithDownloadAuthResponse = GetSpaceWithDownloadAuthResponse;
class GetUserTodoTaskSumHeaders 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.GetUserTodoTaskSumHeaders = GetUserTodoTaskSumHeaders;
class GetUserTodoTaskSumRequest extends $tea.Model {
    static names() {
        return {
            userId: 'userId',
        };
    }
    static types() {
        return {
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetUserTodoTaskSumRequest = GetUserTodoTaskSumRequest;
class GetUserTodoTaskSumResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetUserTodoTaskSumResponseBody = GetUserTodoTaskSumResponseBody;
class GetUserTodoTaskSumResponse 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: GetUserTodoTaskSumResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetUserTodoTaskSumResponse = GetUserTodoTaskSumResponse;
class GrantCspaceAuthorizationHeaders 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.GrantCspaceAuthorizationHeaders = GrantCspaceAuthorizationHeaders;
class GrantCspaceAuthorizationRequest extends $tea.Model {
    static names() {
        return {
            durationSeconds: 'durationSeconds',
            spaceId: 'spaceId',
            type: 'type',
            userId: 'userId',
        };
    }
    static types() {
        return {
            durationSeconds: 'number',
            spaceId: 'string',
            type: 'string',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GrantCspaceAuthorizationRequest = GrantCspaceAuthorizationRequest;
class GrantCspaceAuthorizationResponse extends $tea.Model {
    static names() {
        return {
            headers: 'headers',
            statusCode: 'statusCode',
        };
    }
    static types() {
        return {
            headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
            statusCode: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GrantCspaceAuthorizationResponse = GrantCspaceAuthorizationResponse;
class GrantProcessInstanceForDownloadFileHeaders 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.GrantProcessInstanceForDownloadFileHeaders = GrantProcessInstanceForDownloadFileHeaders;
class GrantProcessInstanceForDownloadFileRequest extends $tea.Model {
    static names() {
        return {
            fileId: 'fileId',
            processInstanceId: 'processInstanceId',
            withCommentAttatchment: 'withCommentAttatchment',
        };
    }
    static types() {
        return {
            fileId: 'string',
            processInstanceId: 'string',
            withCommentAttatchment: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GrantProcessInstanceForDownloadFileRequest = GrantProcessInstanceForDownloadFileRequest;
class GrantProcessInstanceForDownloadFileResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: GrantProcessInstanceForDownloadFileResponseBodyResult,
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GrantProcessInstanceForDownloadFileResponseBody = GrantProcessInstanceForDownloadFileResponseBody;
class GrantProcessInstanceForDownloadFileResponse 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: GrantProcessInstanceForDownloadFileResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GrantProcessInstanceForDownloadFileResponse = GrantProcessInstanceForDownloadFileResponse;
class InsertOrUpdateDirHeaders 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.InsertOrUpdateDirHeaders = InsertOrUpdateDirHeaders;
class InsertOrUpdateDirRequest extends $tea.Model {
    static names() {
        return {
            bizGroup: 'bizGroup',
            description: 'description',
            name: 'name',
            name18n: 'name18n',
            operateUserId: 'operateUserId',
        };
    }
    static types() {
        return {
            bizGroup: 'string',
            description: 'string',
            name: 'string',
            name18n: 'string',
            operateUserId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.InsertOrUpdateDirRequest = InsertOrUpdateDirRequest;
class InsertOrUpdateDirResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: InsertOrUpdateDirResponseBodyResult,
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.InsertOrUpdateDirResponseBody = InsertOrUpdateDirResponseBody;
class InsertOrUpdateDirResponse 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: InsertOrUpdateDirResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.InsertOrUpdateDirResponse = InsertOrUpdateDirResponse;
class InstallAppHeaders 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.InstallAppHeaders = InstallAppHeaders;
class InstallAppRequest extends $tea.Model {
    static names() {
        return {
            bizGroup: 'bizGroup',
            installOption: 'installOption',
            sourceDirName: 'sourceDirName',
        };
    }
    static types() {
        return {
            bizGroup: 'string',
            installOption: InstallAppRequestInstallOption,
            sourceDirName: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.InstallAppRequest = InstallAppRequest;
class InstallAppResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: { 'type': 'array', 'itemType': InstallAppResponseBodyResult },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.InstallAppResponseBody = InstallAppResponseBody;
class InstallAppResponse 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: InstallAppResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.InstallAppResponse = InstallAppResponse;
class ListProcessInstanceIdsHeaders 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.ListProcessInstanceIdsHeaders = ListProcessInstanceIdsHeaders;
class ListProcessInstanceIdsRequest extends $tea.Model {
    static names() {
        return {
            endTime: 'endTime',
            maxResults: 'maxResults',
            nextToken: 'nextToken',
            processCode: 'processCode',
            startTime: 'startTime',
            statuses: 'statuses',
            userIds: 'userIds',
        };
    }
    static types() {
        return {
            endTime: 'number',
            maxResults: 'number',
            nextToken: 'number',
            processCode: 'string',
            startTime: 'number',
            statuses: { 'type': 'array', 'itemType': 'string' },
            userIds: { 'type': 'array', 'itemType': 'string' },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ListProcessInstanceIdsRequest = ListProcessInstanceIdsRequest;
class ListProcessInstanceIdsResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: ListProcessInstanceIdsResponseBodyResult,
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ListProcessInstanceIdsResponseBody = ListProcessInstanceIdsResponseBody;
class ListProcessInstanceIdsResponse 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: ListProcessInstanceIdsResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ListProcessInstanceIdsResponse = ListProcessInstanceIdsResponse;
class ListTodoWorkRecordsHeaders 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.ListTodoWorkRecordsHeaders = ListTodoWorkRecordsHeaders;
class ListTodoWorkRecordsRequest extends $tea.Model {
    static names() {
        return {
            maxResults: 'maxResults',
            nextToken: 'nextToken',
            status: 'status',
            userId: 'userId',
        };
    }
    static types() {
        return {
            maxResults: 'number',
            nextToken: 'number',
            status: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ListTodoWorkRecordsRequest = ListTodoWorkRecordsRequest;
class ListTodoWorkRecordsResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: ListTodoWorkRecordsResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ListTodoWorkRecordsResponseBody = ListTodoWorkRecordsResponseBody;
class ListTodoWorkRecordsResponse 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: ListTodoWorkRecordsResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ListTodoWorkRecordsResponse = ListTodoWorkRecordsResponse;
class ListUserVisibleBpmsProcessesHeaders 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.ListUserVisibleBpmsProcessesHeaders = ListUserVisibleBpmsProcessesHeaders;
class ListUserVisibleBpmsProcessesRequest extends $tea.Model {
    static names() {
        return {
            maxResults: 'maxResults',
            nextToken: 'nextToken',
            userId: 'userId',
        };
    }
    static types() {
        return {
            maxResults: 'number',
            nextToken: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ListUserVisibleBpmsProcessesRequest = ListUserVisibleBpmsProcessesRequest;
class ListUserVisibleBpmsProcessesResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: ListUserVisibleBpmsProcessesResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ListUserVisibleBpmsProcessesResponseBody = ListUserVisibleBpmsProcessesResponseBody;
class ListUserVisibleBpmsProcessesResponse 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: ListUserVisibleBpmsProcessesResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ListUserVisibleBpmsProcessesResponse = ListUserVisibleBpmsProcessesResponse;
class PagesExportInstancesHeaders 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.PagesExportInstancesHeaders = PagesExportInstancesHeaders;
class PagesExportInstancesRequest extends $tea.Model {
    static names() {
        return {
            endTimeInMills: 'endTimeInMills',
            maxResults: 'maxResults',
            nextToken: 'nextToken',
            orderBy: 'orderBy',
            processCode: 'processCode',
            startTimeInMills: 'startTimeInMills',
            status: 'status',
        };
    }
    static types() {
        return {
            endTimeInMills: 'number',
            maxResults: 'number',
            nextToken: 'string',
            orderBy: 'string',
            processCode: 'string',
            startTimeInMills: 'number',
            status: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PagesExportInstancesRequest = PagesExportInstancesRequest;
class PagesExportInstancesResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: PagesExportInstancesResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PagesExportInstancesResponseBody = PagesExportInstancesResponseBody;
class PagesExportInstancesResponse 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: PagesExportInstancesResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PagesExportInstancesResponse = PagesExportInstancesResponse;
class PremiumAddApproveDentryAuthHeaders 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.PremiumAddApproveDentryAuthHeaders = PremiumAddApproveDentryAuthHeaders;
class PremiumAddApproveDentryAuthRequest extends $tea.Model {
    static names() {
        return {
            fileInfos: 'fileInfos',
            userId: 'userId',
        };
    }
    static types() {
        return {
            fileInfos: { 'type': 'array', 'itemType': PremiumAddApproveDentryAuthRequestFileInfos },
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumAddApproveDentryAuthRequest = PremiumAddApproveDentryAuthRequest;
class PremiumAddApproveDentryAuthResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: 'boolean',
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumAddApproveDentryAuthResponseBody = PremiumAddApproveDentryAuthResponseBody;
class PremiumAddApproveDentryAuthResponse 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: PremiumAddApproveDentryAuthResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumAddApproveDentryAuthResponse = PremiumAddApproveDentryAuthResponse;
class PremiumAppendTaskHeaders 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.PremiumAppendTaskHeaders = PremiumAppendTaskHeaders;
class PremiumAppendTaskRequest extends $tea.Model {
    static names() {
        return {
            activateType: 'activateType',
            agreeAll: 'agreeAll',
            appenderUserIds: 'appenderUserIds',
            operateUserId: 'operateUserId',
            processInstanceId: 'processInstanceId',
            remark: 'remark',
            taskId: 'taskId',
            type: 'type',
        };
    }
    static types() {
        return {
            activateType: 'string',
            agreeAll: 'boolean',
            appenderUserIds: { 'type': 'array', 'itemType': 'string' },
            operateUserId: 'string',
            processInstanceId: 'string',
            remark: 'string',
            taskId: 'number',
            type: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumAppendTaskRequest = PremiumAppendTaskRequest;
class PremiumAppendTaskResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumAppendTaskResponseBody = PremiumAppendTaskResponseBody;
class PremiumAppendTaskResponse 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: PremiumAppendTaskResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumAppendTaskResponse = PremiumAppendTaskResponse;
class PremiumBatchExecuteProcessInstancesHeaders 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.PremiumBatchExecuteProcessInstancesHeaders = PremiumBatchExecuteProcessInstancesHeaders;
class PremiumBatchExecuteProcessInstancesRequest extends $tea.Model {
    static names() {
        return {
            actionerUserId: 'actionerUserId',
            remark: 'remark',
            result: 'result',
            taskInfoList: 'taskInfoList',
        };
    }
    static types() {
        return {
            actionerUserId: 'string',
            remark: 'string',
            result: 'string',
            taskInfoList: { 'type': 'array', 'itemType': PremiumBatchExecuteProcessInstancesRequestTaskInfoList },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumBatchExecuteProcessInstancesRequest = PremiumBatchExecuteProcessInstancesRequest;
class PremiumBatchExecuteProcessInstancesResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: { 'type': 'map', 'keyType': 'string', 'valueType': ResultValue },
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumBatchExecuteProcessInstancesResponseBody = PremiumBatchExecuteProcessInstancesResponseBody;
class PremiumBatchExecuteProcessInstancesResponse 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: PremiumBatchExecuteProcessInstancesResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumBatchExecuteProcessInstancesResponse = PremiumBatchExecuteProcessInstancesResponse;
class PremiumDelDirHeaders 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.PremiumDelDirHeaders = PremiumDelDirHeaders;
class PremiumDelDirRequest extends $tea.Model {
    static names() {
        return {
            dirId: 'dirId',
            operateUserId: 'operateUserId',
        };
    }
    static types() {
        return {
            dirId: 'string',
            operateUserId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumDelDirRequest = PremiumDelDirRequest;
class PremiumDelDirResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
        };
    }
    static types() {
        return {
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumDelDirResponseBody = PremiumDelDirResponseBody;
class PremiumDelDirResponse 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: PremiumDelDirResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumDelDirResponse = PremiumDelDirResponse;
class PremiumDeleteFormInstanceHeaders 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.PremiumDeleteFormInstanceHeaders = PremiumDeleteFormInstanceHeaders;
class PremiumDeleteFormInstanceRequest extends $tea.Model {
    static names() {
        return {
            formInstanceIds: 'formInstanceIds',
            processCode: 'processCode',
            userId: 'userId',
        };
    }
    static types() {
        return {
            formInstanceIds: { 'type': 'array', 'itemType': 'string' },
            processCode: 'string',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumDeleteFormInstanceRequest = PremiumDeleteFormInstanceRequest;
class PremiumDeleteFormInstanceResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
        };
    }
    static types() {
        return {
            success: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumDeleteFormInstanceResponseBody = PremiumDeleteFormInstanceResponseBody;
class PremiumDeleteFormInstanceResponse 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: PremiumDeleteFormInstanceResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumDeleteFormInstanceResponse = PremiumDeleteFormInstanceResponse;
class PremiumGetAttachmentSpaceHeaders 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.PremiumGetAttachmentSpaceHeaders = PremiumGetAttachmentSpaceHeaders;
class PremiumGetAttachmentSpaceRequest extends $tea.Model {
    static names() {
        return {
            agentId: 'agentId',
            userId: 'userId',
        };
    }
    static types() {
        return {
            agentId: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetAttachmentSpaceRequest = PremiumGetAttachmentSpaceRequest;
class PremiumGetAttachmentSpaceResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: PremiumGetAttachmentSpaceResponseBodyResult,
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetAttachmentSpaceResponseBody = PremiumGetAttachmentSpaceResponseBody;
class PremiumGetAttachmentSpaceResponse 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: PremiumGetAttachmentSpaceResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetAttachmentSpaceResponse = PremiumGetAttachmentSpaceResponse;
class PremiumGetDoneTasksHeaders 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.PremiumGetDoneTasksHeaders = PremiumGetDoneTasksHeaders;
class PremiumGetDoneTasksRequest extends $tea.Model {
    static names() {
        return {
            pageNumber: 'pageNumber',
            pageSize: 'pageSize',
            userId: 'userId',
        };
    }
    static types() {
        return {
            pageNumber: 'number',
            pageSize: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetDoneTasksRequest = PremiumGetDoneTasksRequest;
class PremiumGetDoneTasksResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: PremiumGetDoneTasksResponseBodyResult,
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetDoneTasksResponseBody = PremiumGetDoneTasksResponseBody;
class PremiumGetDoneTasksResponse 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: PremiumGetDoneTasksResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetDoneTasksResponse = PremiumGetDoneTasksResponse;
class PremiumGetFieldModifiedHistoryHeaders 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.PremiumGetFieldModifiedHistoryHeaders = PremiumGetFieldModifiedHistoryHeaders;
class PremiumGetFieldModifiedHistoryRequest extends $tea.Model {
    static names() {
        return {
            fieldId: 'fieldId',
            processInstanceId: 'processInstanceId',
        };
    }
    static types() {
        return {
            fieldId: 'string',
            processInstanceId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFieldModifiedHistoryRequest = PremiumGetFieldModifiedHistoryRequest;
class PremiumGetFieldModifiedHistoryResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: { 'type': 'array', 'itemType': PremiumGetFieldModifiedHistoryResponseBodyResult },
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFieldModifiedHistoryResponseBody = PremiumGetFieldModifiedHistoryResponseBody;
class PremiumGetFieldModifiedHistoryResponse 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: PremiumGetFieldModifiedHistoryResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFieldModifiedHistoryResponse = PremiumGetFieldModifiedHistoryResponse;
class PremiumGetFormInstanceHeaders 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.PremiumGetFormInstanceHeaders = PremiumGetFormInstanceHeaders;
class PremiumGetFormInstanceRequest extends $tea.Model {
    static names() {
        return {
            appUuid: 'appUuid',
            formCode: 'formCode',
            formInstanceId: 'formInstanceId',
        };
    }
    static types() {
        return {
            appUuid: 'string',
            formCode: 'string',
            formInstanceId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormInstanceRequest = PremiumGetFormInstanceRequest;
class PremiumGetFormInstanceResponseBody extends $tea.Model {
    static names() {
        return {
            appUuid: 'appUuid',
            attributes: 'attributes',
            createTimestamp: 'createTimestamp',
            creator: 'creator',
            formCode: 'formCode',
            formInstDataList: 'formInstDataList',
            formInstanceId: 'formInstanceId',
            modifier: 'modifier',
            modifyTimestamp: 'modifyTimestamp',
            outBizCode: 'outBizCode',
            outInstanceId: 'outInstanceId',
            title: 'title',
        };
    }
    static types() {
        return {
            appUuid: 'string',
            attributes: { 'type': 'map', 'keyType': 'string', 'valueType': 'any' },
            createTimestamp: 'number',
            creator: 'string',
            formCode: 'string',
            formInstDataList: { 'type': 'array', 'itemType': PremiumGetFormInstanceResponseBodyFormInstDataList },
            formInstanceId: 'string',
            modifier: 'string',
            modifyTimestamp: 'number',
            outBizCode: 'string',
            outInstanceId: 'string',
            title: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormInstanceResponseBody = PremiumGetFormInstanceResponseBody;
class PremiumGetFormInstanceResponse 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: PremiumGetFormInstanceResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormInstanceResponse = PremiumGetFormInstanceResponse;
class PremiumGetFormInstancesHeaders 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.PremiumGetFormInstancesHeaders = PremiumGetFormInstancesHeaders;
class PremiumGetFormInstancesRequest extends $tea.Model {
    static names() {
        return {
            appUuid: 'appUuid',
            formCode: 'formCode',
            maxResults: 'maxResults',
            nextToken: 'nextToken',
        };
    }
    static types() {
        return {
            appUuid: 'string',
            formCode: 'string',
            maxResults: 'number',
            nextToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormInstancesRequest = PremiumGetFormInstancesRequest;
class PremiumGetFormInstancesResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: PremiumGetFormInstancesResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormInstancesResponseBody = PremiumGetFormInstancesResponseBody;
class PremiumGetFormInstancesResponse 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: PremiumGetFormInstancesResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormInstancesResponse = PremiumGetFormInstancesResponse;
class PremiumGetFormSchemaHeaders 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.PremiumGetFormSchemaHeaders = PremiumGetFormSchemaHeaders;
class PremiumGetFormSchemaRequest extends $tea.Model {
    static names() {
        return {
            appUuid: 'appUuid',
            processCode: 'processCode',
        };
    }
    static types() {
        return {
            appUuid: 'string',
            processCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormSchemaRequest = PremiumGetFormSchemaRequest;
class PremiumGetFormSchemaResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: PremiumGetFormSchemaResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormSchemaResponseBody = PremiumGetFormSchemaResponseBody;
class PremiumGetFormSchemaResponse 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: PremiumGetFormSchemaResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormSchemaResponse = PremiumGetFormSchemaResponse;
class PremiumGetInstFieldSettingHeaders 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.PremiumGetInstFieldSettingHeaders = PremiumGetInstFieldSettingHeaders;
class PremiumGetInstFieldSettingRequest extends $tea.Model {
    static names() {
        return {
            processInstanceId: 'processInstanceId',
            userId: 'userId',
        };
    }
    static types() {
        return {
            processInstanceId: 'string',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetInstFieldSettingRequest = PremiumGetInstFieldSettingRequest;
class PremiumGetInstFieldSettingResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: { 'type': 'array', 'itemType': PremiumGetInstFieldSettingResponseBodyResult },
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetInstFieldSettingResponseBody = PremiumGetInstFieldSettingResponseBody;
class PremiumGetInstFieldSettingResponse 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: PremiumGetInstFieldSettingResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetInstFieldSettingResponse = PremiumGetInstFieldSettingResponse;
class PremiumGetNoticedInstancesHeaders 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.PremiumGetNoticedInstancesHeaders = PremiumGetNoticedInstancesHeaders;
class PremiumGetNoticedInstancesRequest extends $tea.Model {
    static names() {
        return {
            pageNumber: 'pageNumber',
            pageSize: 'pageSize',
            userId: 'userId',
        };
    }
    static types() {
        return {
            pageNumber: 'number',
            pageSize: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetNoticedInstancesRequest = PremiumGetNoticedInstancesRequest;
class PremiumGetNoticedInstancesResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: PremiumGetNoticedInstancesResponseBodyResult,
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetNoticedInstancesResponseBody = PremiumGetNoticedInstancesResponseBody;
class PremiumGetNoticedInstancesResponse 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: PremiumGetNoticedInstancesResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetNoticedInstancesResponse = PremiumGetNoticedInstancesResponse;
class PremiumGetProcessInstancesHeaders 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.PremiumGetProcessInstancesHeaders = PremiumGetProcessInstancesHeaders;
class PremiumGetProcessInstancesRequest extends $tea.Model {
    static names() {
        return {
            appUuid: 'appUuid',
            endTimeInMills: 'endTimeInMills',
            maxResults: 'maxResults',
            nextToken: 'nextToken',
            processCode: 'processCode',
            startTimeInMills: 'startTimeInMills',
        };
    }
    static types() {
        return {
            appUuid: 'string',
            endTimeInMills: 'number',
            maxResults: 'number',
            nextToken: 'string',
            processCode: 'string',
            startTimeInMills: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetProcessInstancesRequest = PremiumGetProcessInstancesRequest;
class PremiumGetProcessInstancesResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: PremiumGetProcessInstancesResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetProcessInstancesResponseBody = PremiumGetProcessInstancesResponseBody;
class PremiumGetProcessInstancesResponse 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: PremiumGetProcessInstancesResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetProcessInstancesResponse = PremiumGetProcessInstancesResponse;
class PremiumGetSpaceWithDownloadAuthHeaders 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.PremiumGetSpaceWithDownloadAuthHeaders = PremiumGetSpaceWithDownloadAuthHeaders;
class PremiumGetSpaceWithDownloadAuthRequest extends $tea.Model {
    static names() {
        return {
            agentId: 'agentId',
            fileId: 'fileId',
            fileIdList: 'fileIdList',
            processInstanceId: 'processInstanceId',
            userId: 'userId',
            withCommentAttatchment: 'withCommentAttatchment',
        };
    }
    static types() {
        return {
            agentId: 'number',
            fileId: 'string',
            fileIdList: { 'type': 'array', 'itemType': 'string' },
            processInstanceId: 'string',
            userId: 'string',
            withCommentAttatchment: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetSpaceWithDownloadAuthRequest = PremiumGetSpaceWithDownloadAuthRequest;
class PremiumGetSpaceWithDownloadAuthResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: PremiumGetSpaceWithDownloadAuthResponseBodyResult,
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetSpaceWithDownloadAuthResponseBody = PremiumGetSpaceWithDownloadAuthResponseBody;
class PremiumGetSpaceWithDownloadAuthResponse 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: PremiumGetSpaceWithDownloadAuthResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetSpaceWithDownloadAuthResponse = PremiumGetSpaceWithDownloadAuthResponse;
class PremiumGetSubmittedInstancesHeaders 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.PremiumGetSubmittedInstancesHeaders = PremiumGetSubmittedInstancesHeaders;
class PremiumGetSubmittedInstancesRequest extends $tea.Model {
    static names() {
        return {
            pageNumber: 'pageNumber',
            pageSize: 'pageSize',
            userId: 'userId',
        };
    }
    static types() {
        return {
            pageNumber: 'number',
            pageSize: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetSubmittedInstancesRequest = PremiumGetSubmittedInstancesRequest;
class PremiumGetSubmittedInstancesResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: PremiumGetSubmittedInstancesResponseBodyResult,
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetSubmittedInstancesResponseBody = PremiumGetSubmittedInstancesResponseBody;
class PremiumGetSubmittedInstancesResponse 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: PremiumGetSubmittedInstancesResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetSubmittedInstancesResponse = PremiumGetSubmittedInstancesResponse;
class PremiumGetTodoTasksHeaders 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.PremiumGetTodoTasksHeaders = PremiumGetTodoTasksHeaders;
class PremiumGetTodoTasksRequest extends $tea.Model {
    static names() {
        return {
            createBefore: 'createBefore',
            pageNumber: 'pageNumber',
            pageSize: 'pageSize',
            userId: 'userId',
        };
    }
    static types() {
        return {
            createBefore: 'string',
            pageNumber: 'number',
            pageSize: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetTodoTasksRequest = PremiumGetTodoTasksRequest;
class PremiumGetTodoTasksResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: PremiumGetTodoTasksResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetTodoTasksResponseBody = PremiumGetTodoTasksResponseBody;
class PremiumGetTodoTasksResponse 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: PremiumGetTodoTasksResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetTodoTasksResponse = PremiumGetTodoTasksResponse;
class PremiumGrantProcessInstanceForDownloadFileHeaders 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.PremiumGrantProcessInstanceForDownloadFileHeaders = PremiumGrantProcessInstanceForDownloadFileHeaders;
class PremiumGrantProcessInstanceForDownloadFileRequest extends $tea.Model {
    static names() {
        return {
            fileId: 'fileId',
            processInstanceId: 'processInstanceId',
            withCommentAttatchment: 'withCommentAttatchment',
        };
    }
    static types() {
        return {
            fileId: 'string',
            processInstanceId: 'string',
            withCommentAttatchment: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGrantProcessInstanceForDownloadFileRequest = PremiumGrantProcessInstanceForDownloadFileRequest;
class PremiumGrantProcessInstanceForDownloadFileResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: PremiumGrantProcessInstanceForDownloadFileResponseBodyResult,
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGrantProcessInstanceForDownloadFileResponseBody = PremiumGrantProcessInstanceForDownloadFileResponseBody;
class PremiumGrantProcessInstanceForDownloadFileResponse 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: PremiumGrantProcessInstanceForDownloadFileResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGrantProcessInstanceForDownloadFileResponse = PremiumGrantProcessInstanceForDownloadFileResponse;
class PremiumInsertOrUpdateDirHeaders 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.PremiumInsertOrUpdateDirHeaders = PremiumInsertOrUpdateDirHeaders;
class PremiumInsertOrUpdateDirRequest extends $tea.Model {
    static names() {
        return {
            bizGroup: 'bizGroup',
            description: 'description',
            name: 'name',
            name18n: 'name18n',
            operateUserId: 'operateUserId',
        };
    }
    static types() {
        return {
            bizGroup: 'string',
            description: 'string',
            name: 'string',
            name18n: 'string',
            operateUserId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumInsertOrUpdateDirRequest = PremiumInsertOrUpdateDirRequest;
class PremiumInsertOrUpdateDirResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: PremiumInsertOrUpdateDirResponseBodyResult,
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumInsertOrUpdateDirResponseBody = PremiumInsertOrUpdateDirResponseBody;
class PremiumInsertOrUpdateDirResponse 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: PremiumInsertOrUpdateDirResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumInsertOrUpdateDirResponse = PremiumInsertOrUpdateDirResponse;
class PremiumQuerySchemaAndProcessByCodeListHeaders 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.PremiumQuerySchemaAndProcessByCodeListHeaders = PremiumQuerySchemaAndProcessByCodeListHeaders;
class PremiumQuerySchemaAndProcessByCodeListRequest extends $tea.Model {
    static names() {
        return {
            processCodes: 'processCodes',
        };
    }
    static types() {
        return {
            processCodes: { 'type': 'array', 'itemType': 'string' },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumQuerySchemaAndProcessByCodeListRequest = PremiumQuerySchemaAndProcessByCodeListRequest;
class PremiumQuerySchemaAndProcessByCodeListResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: { 'type': 'array', 'itemType': PremiumQuerySchemaAndProcessByCodeListResponseBodyResult },
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumQuerySchemaAndProcessByCodeListResponseBody = PremiumQuerySchemaAndProcessByCodeListResponseBody;
class PremiumQuerySchemaAndProcessByCodeListResponse 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: PremiumQuerySchemaAndProcessByCodeListResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumQuerySchemaAndProcessByCodeListResponse = PremiumQuerySchemaAndProcessByCodeListResponse;
class PremiumQueryTodoTasksByManagerHeaders 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.PremiumQueryTodoTasksByManagerHeaders = PremiumQueryTodoTasksByManagerHeaders;
class PremiumQueryTodoTasksByManagerRequest extends $tea.Model {
    static names() {
        return {
            actionerUserId: 'actionerUserId',
            managerUserId: 'managerUserId',
            maxResults: 'maxResults',
            nextToken: 'nextToken',
        };
    }
    static types() {
        return {
            actionerUserId: 'string',
            managerUserId: 'string',
            maxResults: 'number',
            nextToken: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumQueryTodoTasksByManagerRequest = PremiumQueryTodoTasksByManagerRequest;
class PremiumQueryTodoTasksByManagerResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: PremiumQueryTodoTasksByManagerResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumQueryTodoTasksByManagerResponseBody = PremiumQueryTodoTasksByManagerResponseBody;
class PremiumQueryTodoTasksByManagerResponse 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: PremiumQueryTodoTasksByManagerResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumQueryTodoTasksByManagerResponse = PremiumQueryTodoTasksByManagerResponse;
class PremiumRedirectTasksByManagerHeaders 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.PremiumRedirectTasksByManagerHeaders = PremiumRedirectTasksByManagerHeaders;
class PremiumRedirectTasksByManagerRequest extends $tea.Model {
    static names() {
        return {
            handoverUserId: 'handoverUserId',
            managerUserId: 'managerUserId',
            taskIds: 'taskIds',
            transfereeUserId: 'transfereeUserId',
        };
    }
    static types() {
        return {
            handoverUserId: 'string',
            managerUserId: 'string',
            taskIds: { 'type': 'array', 'itemType': 'number' },
            transfereeUserId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumRedirectTasksByManagerRequest = PremiumRedirectTasksByManagerRequest;
class PremiumRedirectTasksByManagerResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: PremiumRedirectTasksByManagerResponseBodyResult,
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumRedirectTasksByManagerResponseBody = PremiumRedirectTasksByManagerResponseBody;
class PremiumRedirectTasksByManagerResponse 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: PremiumRedirectTasksByManagerResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumRedirectTasksByManagerResponse = PremiumRedirectTasksByManagerResponse;
class PremiumRevertTaskHeaders 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.PremiumRevertTaskHeaders = PremiumRevertTaskHeaders;
class PremiumRevertTaskRequest extends $tea.Model {
    static names() {
        return {
            operateUserId: 'operateUserId',
            processInstanceId: 'processInstanceId',
            remark: 'remark',
            revertAction: 'revertAction',
            targetActivityId: 'targetActivityId',
            taskId: 'taskId',
        };
    }
    static types() {
        return {
            operateUserId: 'string',
            processInstanceId: 'string',
            remark: 'string',
            revertAction: 'string',
            targetActivityId: 'string',
            taskId: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumRevertTaskRequest = PremiumRevertTaskRequest;
class PremiumRevertTaskResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumRevertTaskResponseBody = PremiumRevertTaskResponseBody;
class PremiumRevertTaskResponse 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: PremiumRevertTaskResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumRevertTaskResponse = PremiumRevertTaskResponse;
class PremiumSaveFormHeaders 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.PremiumSaveFormHeaders = PremiumSaveFormHeaders;
class PremiumSaveFormRequest extends $tea.Model {
    static names() {
        return {
            description: 'description',
            formComponents: 'formComponents',
            name: 'name',
            processCode: 'processCode',
            userId: 'userId',
        };
    }
    static types() {
        return {
            description: 'string',
            formComponents: { 'type': 'array', 'itemType': FormComponent },
            name: 'string',
            processCode: 'string',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveFormRequest = PremiumSaveFormRequest;
class PremiumSaveFormResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: PremiumSaveFormResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveFormResponseBody = PremiumSaveFormResponseBody;
class PremiumSaveFormResponse 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: PremiumSaveFormResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveFormResponse = PremiumSaveFormResponse;
class PremiumSaveFormInstanceHeaders 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.PremiumSaveFormInstanceHeaders = PremiumSaveFormInstanceHeaders;
class PremiumSaveFormInstanceRequest extends $tea.Model {
    static names() {
        return {
            formComponentValueList: 'formComponentValueList',
            originatorUserId: 'originatorUserId',
            processCode: 'processCode',
        };
    }
    static types() {
        return {
            formComponentValueList: { 'type': 'array', 'itemType': PremiumSaveFormInstanceRequestFormComponentValueList },
            originatorUserId: 'string',
            processCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveFormInstanceRequest = PremiumSaveFormInstanceRequest;
class PremiumSaveFormInstanceResponseBody extends $tea.Model {
    static names() {
        return {
            instanceId: 'instanceId',
        };
    }
    static types() {
        return {
            instanceId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveFormInstanceResponseBody = PremiumSaveFormInstanceResponseBody;
class PremiumSaveFormInstanceResponse 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: PremiumSaveFormInstanceResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveFormInstanceResponse = PremiumSaveFormInstanceResponse;
class PremiumSaveIntegratedProcessHeaders 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.PremiumSaveIntegratedProcessHeaders = PremiumSaveIntegratedProcessHeaders;
class PremiumSaveIntegratedProcessRequest extends $tea.Model {
    static names() {
        return {
            description: 'description',
            formComponents: 'formComponents',
            name: 'name',
            processCode: 'processCode',
            processFeatureConfig: 'processFeatureConfig',
            templateConfig: 'templateConfig',
        };
    }
    static types() {
        return {
            description: 'string',
            formComponents: { 'type': 'array', 'itemType': FormComponent },
            name: 'string',
            processCode: 'string',
            processFeatureConfig: PremiumSaveIntegratedProcessRequestProcessFeatureConfig,
            templateConfig: PremiumSaveIntegratedProcessRequestTemplateConfig,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedProcessRequest = PremiumSaveIntegratedProcessRequest;
class PremiumSaveIntegratedProcessResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: PremiumSaveIntegratedProcessResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedProcessResponseBody = PremiumSaveIntegratedProcessResponseBody;
class PremiumSaveIntegratedProcessResponse 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: PremiumSaveIntegratedProcessResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedProcessResponse = PremiumSaveIntegratedProcessResponse;
class PremiumSaveIntegratedProcessInstanceHeaders 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.PremiumSaveIntegratedProcessInstanceHeaders = PremiumSaveIntegratedProcessInstanceHeaders;
class PremiumSaveIntegratedProcessInstanceRequest extends $tea.Model {
    static names() {
        return {
            bizData: 'bizData',
            featureConfig: 'featureConfig',
            formComponentValueList: 'formComponentValueList',
            notifiers: 'notifiers',
            originatorUserId: 'originatorUserId',
            processCode: 'processCode',
            title: 'title',
            url: 'url',
        };
    }
    static types() {
        return {
            bizData: 'string',
            featureConfig: PremiumSaveIntegratedProcessInstanceRequestFeatureConfig,
            formComponentValueList: { 'type': 'array', 'itemType': PremiumSaveIntegratedProcessInstanceRequestFormComponentValueList },
            notifiers: { 'type': 'array', 'itemType': PremiumSaveIntegratedProcessInstanceRequestNotifiers },
            originatorUserId: 'string',
            processCode: 'string',
            title: 'string',
            url: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedProcessInstanceRequest = PremiumSaveIntegratedProcessInstanceRequest;
class PremiumSaveIntegratedProcessInstanceResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: PremiumSaveIntegratedProcessInstanceResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedProcessInstanceResponseBody = PremiumSaveIntegratedProcessInstanceResponseBody;
class PremiumSaveIntegratedProcessInstanceResponse 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: PremiumSaveIntegratedProcessInstanceResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedProcessInstanceResponse = PremiumSaveIntegratedProcessInstanceResponse;
class PremiumSaveIntegratedTaskHeaders 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.PremiumSaveIntegratedTaskHeaders = PremiumSaveIntegratedTaskHeaders;
class PremiumSaveIntegratedTaskRequest extends $tea.Model {
    static names() {
        return {
            activityId: 'activityId',
            featureConfig: 'featureConfig',
            processInstanceId: 'processInstanceId',
            taskConfig: 'taskConfig',
            tasks: 'tasks',
        };
    }
    static types() {
        return {
            activityId: 'string',
            featureConfig: PremiumSaveIntegratedTaskRequestFeatureConfig,
            processInstanceId: 'string',
            taskConfig: PremiumSaveIntegratedTaskRequestTaskConfig,
            tasks: { 'type': 'array', 'itemType': PremiumSaveIntegratedTaskRequestTasks },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedTaskRequest = PremiumSaveIntegratedTaskRequest;
class PremiumSaveIntegratedTaskResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: { 'type': 'array', 'itemType': PremiumSaveIntegratedTaskResponseBodyResult },
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedTaskResponseBody = PremiumSaveIntegratedTaskResponseBody;
class PremiumSaveIntegratedTaskResponse 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: PremiumSaveIntegratedTaskResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedTaskResponse = PremiumSaveIntegratedTaskResponse;
class PremiumUpdateFormInstanceHeaders 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.PremiumUpdateFormInstanceHeaders = PremiumUpdateFormInstanceHeaders;
class PremiumUpdateFormInstanceRequest extends $tea.Model {
    static names() {
        return {
            formComponentValueList: 'formComponentValueList',
            formInstanceIds: 'formInstanceIds',
            originatorUserId: 'originatorUserId',
            processCode: 'processCode',
        };
    }
    static types() {
        return {
            formComponentValueList: { 'type': 'array', 'itemType': PremiumUpdateFormInstanceRequestFormComponentValueList },
            formInstanceIds: { 'type': 'array', 'itemType': 'string' },
            originatorUserId: 'string',
            processCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumUpdateFormInstanceRequest = PremiumUpdateFormInstanceRequest;
class PremiumUpdateFormInstanceResponseBody extends $tea.Model {
    static names() {
        return {
            instanceId: 'instanceId',
        };
    }
    static types() {
        return {
            instanceId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumUpdateFormInstanceResponseBody = PremiumUpdateFormInstanceResponseBody;
class PremiumUpdateFormInstanceResponse 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: PremiumUpdateFormInstanceResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumUpdateFormInstanceResponse = PremiumUpdateFormInstanceResponse;
class PremiumUpdateProcessInstanceVariablesHeaders 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.PremiumUpdateProcessInstanceVariablesHeaders = PremiumUpdateProcessInstanceVariablesHeaders;
class PremiumUpdateProcessInstanceVariablesRequest extends $tea.Model {
    static names() {
        return {
            opUserId: 'opUserId',
            processCode: 'processCode',
            processInstanceId: 'processInstanceId',
            remark: 'remark',
            variables: 'variables',
        };
    }
    static types() {
        return {
            opUserId: 'string',
            processCode: 'string',
            processInstanceId: 'string',
            remark: 'string',
            variables: { 'type': 'array', 'itemType': PremiumUpdateProcessInstanceVariablesRequestVariables },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumUpdateProcessInstanceVariablesRequest = PremiumUpdateProcessInstanceVariablesRequest;
class PremiumUpdateProcessInstanceVariablesResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumUpdateProcessInstanceVariablesResponseBody = PremiumUpdateProcessInstanceVariablesResponseBody;
class PremiumUpdateProcessInstanceVariablesResponse 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: PremiumUpdateProcessInstanceVariablesResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumUpdateProcessInstanceVariablesResponse = PremiumUpdateProcessInstanceVariablesResponse;
class ProcessForecastHeaders 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.ProcessForecastHeaders = ProcessForecastHeaders;
class ProcessForecastRequest extends $tea.Model {
    static names() {
        return {
            deptId: 'deptId',
            formComponentValues: 'formComponentValues',
            processCode: 'processCode',
            userId: 'userId',
        };
    }
    static types() {
        return {
            deptId: 'number',
            formComponentValues: { 'type': 'array', 'itemType': ProcessForecastRequestFormComponentValues },
            processCode: 'string',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ProcessForecastRequest = ProcessForecastRequest;
class ProcessForecastResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: ProcessForecastResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ProcessForecastResponseBody = ProcessForecastResponseBody;
class ProcessForecastResponse 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: ProcessForecastResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ProcessForecastResponse = ProcessForecastResponse;
class QueryAllFormInstancesHeaders 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.QueryAllFormInstancesHeaders = QueryAllFormInstancesHeaders;
class QueryAllFormInstancesRequest extends $tea.Model {
    static names() {
        return {
            appUuid: 'appUuid',
            formCode: 'formCode',
            maxResults: 'maxResults',
            nextToken: 'nextToken',
        };
    }
    static types() {
        return {
            appUuid: 'string',
            formCode: 'string',
            maxResults: 'number',
            nextToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryAllFormInstancesRequest = QueryAllFormInstancesRequest;
class QueryAllFormInstancesResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: QueryAllFormInstancesResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryAllFormInstancesResponseBody = QueryAllFormInstancesResponseBody;
class QueryAllFormInstancesResponse 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: QueryAllFormInstancesResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryAllFormInstancesResponse = QueryAllFormInstancesResponse;
class QueryAllProcessInstancesHeaders 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.QueryAllProcessInstancesHeaders = QueryAllProcessInstancesHeaders;
class QueryAllProcessInstancesRequest extends $tea.Model {
    static names() {
        return {
            appUuid: 'appUuid',
            endTimeInMills: 'endTimeInMills',
            maxResults: 'maxResults',
            nextToken: 'nextToken',
            processCode: 'processCode',
            startTimeInMills: 'startTimeInMills',
        };
    }
    static types() {
        return {
            appUuid: 'string',
            endTimeInMills: 'number',
            maxResults: 'number',
            nextToken: 'string',
            processCode: 'string',
            startTimeInMills: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryAllProcessInstancesRequest = QueryAllProcessInstancesRequest;
class QueryAllProcessInstancesResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: QueryAllProcessInstancesResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryAllProcessInstancesResponseBody = QueryAllProcessInstancesResponseBody;
class QueryAllProcessInstancesResponse 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: QueryAllProcessInstancesResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryAllProcessInstancesResponse = QueryAllProcessInstancesResponse;
class QueryFormByBizTypeHeaders 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.QueryFormByBizTypeHeaders = QueryFormByBizTypeHeaders;
class QueryFormByBizTypeRequest extends $tea.Model {
    static names() {
        return {
            appUuid: 'appUuid',
            bizTypes: 'bizTypes',
        };
    }
    static types() {
        return {
            appUuid: 'string',
            bizTypes: { 'type': 'array', 'itemType': 'string' },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryFormByBizTypeRequest = QueryFormByBizTypeRequest;
class QueryFormByBizTypeResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: { 'type': 'array', 'itemType': QueryFormByBizTypeResponseBodyResult },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryFormByBizTypeResponseBody = QueryFormByBizTypeResponseBody;
class QueryFormByBizTypeResponse 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: QueryFormByBizTypeResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryFormByBizTypeResponse = QueryFormByBizTypeResponse;
class QueryFormInstanceHeaders 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.QueryFormInstanceHeaders = QueryFormInstanceHeaders;
class QueryFormInstanceRequest extends $tea.Model {
    static names() {
        return {
            appUuid: 'appUuid',
            formCode: 'formCode',
            formInstanceId: 'formInstanceId',
        };
    }
    static types() {
        return {
            appUuid: 'string',
            formCode: 'string',
            formInstanceId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryFormInstanceRequest = QueryFormInstanceRequest;
class QueryFormInstanceResponseBody extends $tea.Model {
    static names() {
        return {
            appUuid: 'appUuid',
            attributes: 'attributes',
            createTimestamp: 'createTimestamp',
            creator: 'creator',
            formCode: 'formCode',
            formInstDataList: 'formInstDataList',
            formInstanceId: 'formInstanceId',
            modifier: 'modifier',
            modifyTimestamp: 'modifyTimestamp',
            outBizCode: 'outBizCode',
            outInstanceId: 'outInstanceId',
            title: 'title',
        };
    }
    static types() {
        return {
            appUuid: 'string',
            attributes: { 'type': 'map', 'keyType': 'string', 'valueType': 'any' },
            createTimestamp: 'number',
            creator: 'string',
            formCode: 'string',
            formInstDataList: { 'type': 'array', 'itemType': QueryFormInstanceResponseBodyFormInstDataList },
            formInstanceId: 'string',
            modifier: 'string',
            modifyTimestamp: 'number',
            outBizCode: 'string',
            outInstanceId: 'string',
            title: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryFormInstanceResponseBody = QueryFormInstanceResponseBody;
class QueryFormInstanceResponse 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: QueryFormInstanceResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryFormInstanceResponse = QueryFormInstanceResponse;
class QueryIntegratedTodoTaskHeaders 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.QueryIntegratedTodoTaskHeaders = QueryIntegratedTodoTaskHeaders;
class QueryIntegratedTodoTaskRequest extends $tea.Model {
    static names() {
        return {
            createBefore: 'createBefore',
            pageNumber: 'pageNumber',
            pageSize: 'pageSize',
            userId: 'userId',
        };
    }
    static types() {
        return {
            createBefore: 'number',
            pageNumber: 'number',
            pageSize: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryIntegratedTodoTaskRequest = QueryIntegratedTodoTaskRequest;
class QueryIntegratedTodoTaskResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: QueryIntegratedTodoTaskResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryIntegratedTodoTaskResponseBody = QueryIntegratedTodoTaskResponseBody;
class QueryIntegratedTodoTaskResponse 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: QueryIntegratedTodoTaskResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryIntegratedTodoTaskResponse = QueryIntegratedTodoTaskResponse;
class QueryProcessByBizCategoryIdHeaders 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.QueryProcessByBizCategoryIdHeaders = QueryProcessByBizCategoryIdHeaders;
class QueryProcessByBizCategoryIdRequest extends $tea.Model {
    static names() {
        return {
            bizType: 'bizType',
            userId: 'userId',
        };
    }
    static types() {
        return {
            bizType: 'string',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryProcessByBizCategoryIdRequest = QueryProcessByBizCategoryIdRequest;
class QueryProcessByBizCategoryIdResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: { 'type': 'array', 'itemType': QueryProcessByBizCategoryIdResponseBodyResult },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryProcessByBizCategoryIdResponseBody = QueryProcessByBizCategoryIdResponseBody;
class QueryProcessByBizCategoryIdResponse 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: QueryProcessByBizCategoryIdResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryProcessByBizCategoryIdResponse = QueryProcessByBizCategoryIdResponse;
class QuerySchemaAndProcessHeaders 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.QuerySchemaAndProcessHeaders = QuerySchemaAndProcessHeaders;
class QuerySchemaAndProcessRequest extends $tea.Model {
    static names() {
        return {
            appUuid: 'appUuid',
            processCode: 'processCode',
        };
    }
    static types() {
        return {
            appUuid: 'string',
            processCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QuerySchemaAndProcessRequest = QuerySchemaAndProcessRequest;
class QuerySchemaAndProcessResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: QuerySchemaAndProcessResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QuerySchemaAndProcessResponseBody = QuerySchemaAndProcessResponseBody;
class QuerySchemaAndProcessResponse 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: QuerySchemaAndProcessResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QuerySchemaAndProcessResponse = QuerySchemaAndProcessResponse;
class QuerySchemaByProcessCodeHeaders 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.QuerySchemaByProcessCodeHeaders = QuerySchemaByProcessCodeHeaders;
class QuerySchemaByProcessCodeRequest extends $tea.Model {
    static names() {
        return {
            appUuid: 'appUuid',
            processCode: 'processCode',
        };
    }
    static types() {
        return {
            appUuid: 'string',
            processCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QuerySchemaByProcessCodeRequest = QuerySchemaByProcessCodeRequest;
class QuerySchemaByProcessCodeResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: QuerySchemaByProcessCodeResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QuerySchemaByProcessCodeResponseBody = QuerySchemaByProcessCodeResponseBody;
class QuerySchemaByProcessCodeResponse 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: QuerySchemaByProcessCodeResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QuerySchemaByProcessCodeResponse = QuerySchemaByProcessCodeResponse;
class RedirectWorkflowTaskHeaders 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.RedirectWorkflowTaskHeaders = RedirectWorkflowTaskHeaders;
class RedirectWorkflowTaskRequest extends $tea.Model {
    static names() {
        return {
            actionName: 'actionName',
            file: 'file',
            operateUserId: 'operateUserId',
            remark: 'remark',
            taskId: 'taskId',
            toUserId: 'toUserId',
        };
    }
    static types() {
        return {
            actionName: 'string',
            file: RedirectWorkflowTaskRequestFile,
            operateUserId: 'string',
            remark: 'string',
            taskId: 'number',
            toUserId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.RedirectWorkflowTaskRequest = RedirectWorkflowTaskRequest;
class RedirectWorkflowTaskResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.RedirectWorkflowTaskResponseBody = RedirectWorkflowTaskResponseBody;
class RedirectWorkflowTaskResponse 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: RedirectWorkflowTaskResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.RedirectWorkflowTaskResponse = RedirectWorkflowTaskResponse;
class SaveIntegratedInstanceHeaders 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.SaveIntegratedInstanceHeaders = SaveIntegratedInstanceHeaders;
class SaveIntegratedInstanceRequest extends $tea.Model {
    static names() {
        return {
            bizData: 'bizData',
            featureConfig: 'featureConfig',
            formComponentValueList: 'formComponentValueList',
            notifiers: 'notifiers',
            originatorUserId: 'originatorUserId',
            processCode: 'processCode',
            title: 'title',
            url: 'url',
        };
    }
    static types() {
        return {
            bizData: 'string',
            featureConfig: SaveIntegratedInstanceRequestFeatureConfig,
            formComponentValueList: { 'type': 'array', 'itemType': SaveIntegratedInstanceRequestFormComponentValueList },
            notifiers: { 'type': 'array', 'itemType': SaveIntegratedInstanceRequestNotifiers },
            originatorUserId: 'string',
            processCode: 'string',
            title: 'string',
            url: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.SaveIntegratedInstanceRequest = SaveIntegratedInstanceRequest;
class SaveIntegratedInstanceResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: SaveIntegratedInstanceResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.SaveIntegratedInstanceResponseBody = SaveIntegratedInstanceResponseBody;
class SaveIntegratedInstanceResponse 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: SaveIntegratedInstanceResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.SaveIntegratedInstanceResponse = SaveIntegratedInstanceResponse;
class SaveProcessHeaders 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.SaveProcessHeaders = SaveProcessHeaders;
class SaveProcessRequest extends $tea.Model {
    static names() {
        return {
            description: 'description',
            formComponents: 'formComponents',
            name: 'name',
            processCode: 'processCode',
            processFeatureConfig: 'processFeatureConfig',
            templateConfig: 'templateConfig',
        };
    }
    static types() {
        return {
            description: 'string',
            formComponents: { 'type': 'array', 'itemType': FormComponent },
            name: 'string',
            processCode: 'string',
            processFeatureConfig: SaveProcessRequestProcessFeatureConfig,
            templateConfig: SaveProcessRequestTemplateConfig,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.SaveProcessRequest = SaveProcessRequest;
class SaveProcessResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: SaveProcessResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.SaveProcessResponseBody = SaveProcessResponseBody;
class SaveProcessResponse 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: SaveProcessResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.SaveProcessResponse = SaveProcessResponse;
class StartProcessInstanceHeaders 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.StartProcessInstanceHeaders = StartProcessInstanceHeaders;
class StartProcessInstanceRequest extends $tea.Model {
    static names() {
        return {
            approvers: 'approvers',
            bizDetailPageUrl: 'bizDetailPageUrl',
            ccList: 'ccList',
            ccPosition: 'ccPosition',
            deptId: 'deptId',
            formComponentValues: 'formComponentValues',
            microappAgentId: 'microappAgentId',
            originatorUserId: 'originatorUserId',
            processCode: 'processCode',
            targetSelectActioners: 'targetSelectActioners',
        };
    }
    static types() {
        return {
            approvers: { 'type': 'array', 'itemType': StartProcessInstanceRequestApprovers },
            bizDetailPageUrl: 'string',
            ccList: { 'type': 'array', 'itemType': 'string' },
            ccPosition: 'string',
            deptId: 'number',
            formComponentValues: { 'type': 'array', 'itemType': StartProcessInstanceRequestFormComponentValues },
            microappAgentId: 'number',
            originatorUserId: 'string',
            processCode: 'string',
            targetSelectActioners: { 'type': 'array', 'itemType': StartProcessInstanceRequestTargetSelectActioners },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.StartProcessInstanceRequest = StartProcessInstanceRequest;
class StartProcessInstanceResponseBody extends $tea.Model {
    static names() {
        return {
            instanceId: 'instanceId',
        };
    }
    static types() {
        return {
            instanceId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.StartProcessInstanceResponseBody = StartProcessInstanceResponseBody;
class StartProcessInstanceResponse 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: StartProcessInstanceResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.StartProcessInstanceResponse = StartProcessInstanceResponse;
class TerminateProcessInstanceHeaders 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.TerminateProcessInstanceHeaders = TerminateProcessInstanceHeaders;
class TerminateProcessInstanceRequest extends $tea.Model {
    static names() {
        return {
            isSystem: 'isSystem',
            operatingUserId: 'operatingUserId',
            processInstanceId: 'processInstanceId',
            remark: 'remark',
        };
    }
    static types() {
        return {
            isSystem: 'boolean',
            operatingUserId: 'string',
            processInstanceId: 'string',
            remark: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.TerminateProcessInstanceRequest = TerminateProcessInstanceRequest;
class TerminateProcessInstanceResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
            success: 'success',
        };
    }
    static types() {
        return {
            result: 'boolean',
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.TerminateProcessInstanceResponseBody = TerminateProcessInstanceResponseBody;
class TerminateProcessInstanceResponse 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: TerminateProcessInstanceResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.TerminateProcessInstanceResponse = TerminateProcessInstanceResponse;
class TodoTasksHeaders 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.TodoTasksHeaders = TodoTasksHeaders;
class TodoTasksRequest extends $tea.Model {
    static names() {
        return {
            actionerUserId: 'actionerUserId',
            managerUserId: 'managerUserId',
            maxResults: 'maxResults',
            nextToken: 'nextToken',
        };
    }
    static types() {
        return {
            actionerUserId: 'string',
            managerUserId: 'string',
            maxResults: 'number',
            nextToken: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.TodoTasksRequest = TodoTasksRequest;
class TodoTasksResponseBody extends $tea.Model {
    static names() {
        return {
            result: 'result',
        };
    }
    static types() {
        return {
            result: TodoTasksResponseBodyResult,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.TodoTasksResponseBody = TodoTasksResponseBody;
class TodoTasksResponse 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: TodoTasksResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.TodoTasksResponse = TodoTasksResponse;
class UpdateIntegratedTaskHeaders 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.UpdateIntegratedTaskHeaders = UpdateIntegratedTaskHeaders;
class UpdateIntegratedTaskRequest extends $tea.Model {
    static names() {
        return {
            processInstanceId: 'processInstanceId',
            tasks: 'tasks',
        };
    }
    static types() {
        return {
            processInstanceId: 'string',
            tasks: { 'type': 'array', 'itemType': UpdateIntegratedTaskRequestTasks },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateIntegratedTaskRequest = UpdateIntegratedTaskRequest;
class UpdateIntegratedTaskResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
        };
    }
    static types() {
        return {
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateIntegratedTaskResponseBody = UpdateIntegratedTaskResponseBody;
class UpdateIntegratedTaskResponse 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: UpdateIntegratedTaskResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateIntegratedTaskResponse = UpdateIntegratedTaskResponse;
class UpdateProcessInstanceHeaders 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.UpdateProcessInstanceHeaders = UpdateProcessInstanceHeaders;
class UpdateProcessInstanceRequest extends $tea.Model {
    static names() {
        return {
            notifiers: 'notifiers',
            processInstanceId: 'processInstanceId',
            result: 'result',
            status: 'status',
        };
    }
    static types() {
        return {
            notifiers: { 'type': 'array', 'itemType': UpdateProcessInstanceRequestNotifiers },
            processInstanceId: 'string',
            result: 'string',
            status: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateProcessInstanceRequest = UpdateProcessInstanceRequest;
class UpdateProcessInstanceResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
        };
    }
    static types() {
        return {
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateProcessInstanceResponseBody = UpdateProcessInstanceResponseBody;
class UpdateProcessInstanceResponse 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: UpdateProcessInstanceResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateProcessInstanceResponse = UpdateProcessInstanceResponse;
class FormComponentPropsStatField extends $tea.Model {
    static names() {
        return {
            componentId: 'componentId',
            label: 'label',
            upper: 'upper',
        };
    }
    static types() {
        return {
            componentId: 'string',
            label: 'string',
            upper: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.FormComponentPropsStatField = FormComponentPropsStatField;
class FormDataSourceTarget extends $tea.Model {
    static names() {
        return {
            appType: 'appType',
            appUuid: 'appUuid',
            bizType: 'bizType',
            formCode: 'formCode',
        };
    }
    static types() {
        return {
            appType: 'number',
            appUuid: 'string',
            bizType: 'string',
            formCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.FormDataSourceTarget = FormDataSourceTarget;
class AddApproveDentryAuthRequestFileInfos extends $tea.Model {
    static names() {
        return {
            fileId: 'fileId',
            spaceId: 'spaceId',
        };
    }
    static types() {
        return {
            fileId: 'string',
            spaceId: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AddApproveDentryAuthRequestFileInfos = AddApproveDentryAuthRequestFileInfos;
class AddProcessInstanceCommentRequestFileAttachments extends $tea.Model {
    static names() {
        return {
            fileId: 'fileId',
            fileName: 'fileName',
            fileSize: 'fileSize',
            fileType: 'fileType',
            spaceId: 'spaceId',
        };
    }
    static types() {
        return {
            fileId: 'string',
            fileName: 'string',
            fileSize: 'string',
            fileType: 'string',
            spaceId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AddProcessInstanceCommentRequestFileAttachments = AddProcessInstanceCommentRequestFileAttachments;
class AddProcessInstanceCommentRequestFile extends $tea.Model {
    static names() {
        return {
            attachments: 'attachments',
            photos: 'photos',
        };
    }
    static types() {
        return {
            attachments: { 'type': 'array', 'itemType': AddProcessInstanceCommentRequestFileAttachments },
            photos: { 'type': 'array', 'itemType': 'string' },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.AddProcessInstanceCommentRequestFile = AddProcessInstanceCommentRequestFile;
class BatchExecuteProcessInstancesRequestTaskInfoList extends $tea.Model {
    static names() {
        return {
            processInstanceId: 'processInstanceId',
            taskId: 'taskId',
        };
    }
    static types() {
        return {
            processInstanceId: 'string',
            taskId: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.BatchExecuteProcessInstancesRequestTaskInfoList = BatchExecuteProcessInstancesRequestTaskInfoList;
class BatchTasksRedirectResponseBodyResultRedirectResults extends $tea.Model {
    static names() {
        return {
            errorMsg: 'errorMsg',
            success: 'success',
            taskId: 'taskId',
        };
    }
    static types() {
        return {
            errorMsg: 'string',
            success: 'boolean',
            taskId: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.BatchTasksRedirectResponseBodyResultRedirectResults = BatchTasksRedirectResponseBodyResultRedirectResults;
class BatchTasksRedirectResponseBodyResult extends $tea.Model {
    static names() {
        return {
            failCount: 'failCount',
            redirectResults: 'redirectResults',
            totalCount: 'totalCount',
        };
    }
    static types() {
        return {
            failCount: 'number',
            redirectResults: { 'type': 'array', 'itemType': BatchTasksRedirectResponseBodyResultRedirectResults },
            totalCount: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.BatchTasksRedirectResponseBodyResult = BatchTasksRedirectResponseBodyResult;
class BatchUpdateProcessInstanceRequestUpdateProcessInstanceRequestsNotifiers extends $tea.Model {
    static names() {
        return {
            userId: 'userId',
        };
    }
    static types() {
        return {
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.BatchUpdateProcessInstanceRequestUpdateProcessInstanceRequestsNotifiers = BatchUpdateProcessInstanceRequestUpdateProcessInstanceRequestsNotifiers;
class BatchUpdateProcessInstanceRequestUpdateProcessInstanceRequests extends $tea.Model {
    static names() {
        return {
            notifiers: 'notifiers',
            processInstanceId: 'processInstanceId',
            result: 'result',
            status: 'status',
        };
    }
    static types() {
        return {
            notifiers: { 'type': 'array', 'itemType': BatchUpdateProcessInstanceRequestUpdateProcessInstanceRequestsNotifiers },
            processInstanceId: 'string',
            result: 'string',
            status: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.BatchUpdateProcessInstanceRequestUpdateProcessInstanceRequests = BatchUpdateProcessInstanceRequestUpdateProcessInstanceRequests;
class CopyProcessRequestCopyOptions extends $tea.Model {
    static names() {
        return {
            copyType: 'copyType',
        };
    }
    static types() {
        return {
            copyType: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CopyProcessRequestCopyOptions = CopyProcessRequestCopyOptions;
class CopyProcessRequestSourceProcessVOList extends $tea.Model {
    static names() {
        return {
            bizType: 'bizType',
            name: 'name',
            processCode: 'processCode',
        };
    }
    static types() {
        return {
            bizType: 'string',
            name: 'string',
            processCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CopyProcessRequestSourceProcessVOList = CopyProcessRequestSourceProcessVOList;
class CopyProcessResponseBodyResult extends $tea.Model {
    static names() {
        return {
            bizType: 'bizType',
            name: 'name',
            processCode: 'processCode',
        };
    }
    static types() {
        return {
            bizType: 'string',
            name: 'string',
            processCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CopyProcessResponseBodyResult = CopyProcessResponseBodyResult;
class CreateIntegratedTaskRequestFeatureConfigFeaturesCallback extends $tea.Model {
    static names() {
        return {
            apiKey: 'apiKey',
            appUuid: 'appUuid',
            version: 'version',
        };
    }
    static types() {
        return {
            apiKey: 'string',
            appUuid: 'string',
            version: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateIntegratedTaskRequestFeatureConfigFeaturesCallback = CreateIntegratedTaskRequestFeatureConfigFeaturesCallback;
class CreateIntegratedTaskRequestFeatureConfigFeatures extends $tea.Model {
    static names() {
        return {
            callback: 'callback',
            config: 'config',
            mobileUrl: 'mobileUrl',
            name: 'name',
            pcUrl: 'pcUrl',
            runType: 'runType',
        };
    }
    static types() {
        return {
            callback: CreateIntegratedTaskRequestFeatureConfigFeaturesCallback,
            config: 'string',
            mobileUrl: 'string',
            name: 'string',
            pcUrl: 'string',
            runType: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateIntegratedTaskRequestFeatureConfigFeatures = CreateIntegratedTaskRequestFeatureConfigFeatures;
class CreateIntegratedTaskRequestFeatureConfig extends $tea.Model {
    static names() {
        return {
            features: 'features',
        };
    }
    static types() {
        return {
            features: { 'type': 'array', 'itemType': CreateIntegratedTaskRequestFeatureConfigFeatures },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateIntegratedTaskRequestFeatureConfig = CreateIntegratedTaskRequestFeatureConfig;
class CreateIntegratedTaskRequestTasks extends $tea.Model {
    static names() {
        return {
            customData: 'customData',
            dueTimestamp: 'dueTimestamp',
            url: 'url',
            userId: 'userId',
        };
    }
    static types() {
        return {
            customData: 'string',
            dueTimestamp: 'number',
            url: 'string',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateIntegratedTaskRequestTasks = CreateIntegratedTaskRequestTasks;
class CreateIntegratedTaskResponseBodyResult extends $tea.Model {
    static names() {
        return {
            taskId: 'taskId',
            userId: 'userId',
        };
    }
    static types() {
        return {
            taskId: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateIntegratedTaskResponseBodyResult = CreateIntegratedTaskResponseBodyResult;
class DeleteProcessResponseBodyResult extends $tea.Model {
    static names() {
        return {
            processCode: 'processCode',
        };
    }
    static types() {
        return {
            processCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.DeleteProcessResponseBodyResult = DeleteProcessResponseBodyResult;
class ExecuteProcessInstanceRequestFileAttachments extends $tea.Model {
    static names() {
        return {
            fileId: 'fileId',
            fileName: 'fileName',
            fileSize: 'fileSize',
            fileType: 'fileType',
            spaceId: 'spaceId',
        };
    }
    static types() {
        return {
            fileId: 'string',
            fileName: 'string',
            fileSize: 'string',
            fileType: 'string',
            spaceId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ExecuteProcessInstanceRequestFileAttachments = ExecuteProcessInstanceRequestFileAttachments;
class ExecuteProcessInstanceRequestFile extends $tea.Model {
    static names() {
        return {
            attachments: 'attachments',
            photos: 'photos',
        };
    }
    static types() {
        return {
            attachments: { 'type': 'array', 'itemType': ExecuteProcessInstanceRequestFileAttachments },
            photos: { 'type': 'array', 'itemType': 'string' },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ExecuteProcessInstanceRequestFile = ExecuteProcessInstanceRequestFile;
class FormCreateRequestTemplateConfig extends $tea.Model {
    static names() {
        return {
            dirId: 'dirId',
            disableDeleteProcess: 'disableDeleteProcess',
            disableFormEdit: 'disableFormEdit',
            disableHomepage: 'disableHomepage',
            disableResubmit: 'disableResubmit',
            disableStopProcessButton: 'disableStopProcessButton',
            hidden: 'hidden',
            originDirId: 'originDirId',
        };
    }
    static types() {
        return {
            dirId: 'string',
            disableDeleteProcess: 'boolean',
            disableFormEdit: 'boolean',
            disableHomepage: 'boolean',
            disableResubmit: 'boolean',
            disableStopProcessButton: 'boolean',
            hidden: 'boolean',
            originDirId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.FormCreateRequestTemplateConfig = FormCreateRequestTemplateConfig;
class FormCreateResponseBodyResult extends $tea.Model {
    static names() {
        return {
            processCode: 'processCode',
        };
    }
    static types() {
        return {
            processCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.FormCreateResponseBodyResult = FormCreateResponseBodyResult;
class GetAttachmentSpaceResponseBodyResult extends $tea.Model {
    static names() {
        return {
            spaceId: 'spaceId',
        };
    }
    static types() {
        return {
            spaceId: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetAttachmentSpaceResponseBodyResult = GetAttachmentSpaceResponseBodyResult;
class GetConditionFormComponentResponseBodyResult extends $tea.Model {
    static names() {
        return {
            id: 'id',
            label: 'label',
        };
    }
    static types() {
        return {
            id: 'string',
            label: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetConditionFormComponentResponseBodyResult = GetConditionFormComponentResponseBodyResult;
class GetFieldModifiedHistoryResponseBodyResult extends $tea.Model {
    static names() {
        return {
            createTime: 'createTime',
            fieldId: 'fieldId',
            name: 'name',
            userId: 'userId',
            value: 'value',
        };
    }
    static types() {
        return {
            createTime: 'string',
            fieldId: 'string',
            name: 'string',
            userId: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetFieldModifiedHistoryResponseBodyResult = GetFieldModifiedHistoryResponseBodyResult;
class GetHandSignDownloadUrlResponseBodyResult extends $tea.Model {
    static names() {
        return {
            downloadUrl: 'downloadUrl',
            expireIn: 'expireIn',
        };
    }
    static types() {
        return {
            downloadUrl: 'string',
            expireIn: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetHandSignDownloadUrlResponseBodyResult = GetHandSignDownloadUrlResponseBodyResult;
class GetManageProcessByStaffIdResponseBodyResult extends $tea.Model {
    static names() {
        return {
            attendanceType: 'attendanceType',
            flowTitle: 'flowTitle',
            gmtModified: 'gmtModified',
            iconName: 'iconName',
            iconUrl: 'iconUrl',
            newProcess: 'newProcess',
            processCode: 'processCode',
        };
    }
    static types() {
        return {
            attendanceType: 'number',
            flowTitle: 'string',
            gmtModified: 'string',
            iconName: 'string',
            iconUrl: 'string',
            newProcess: 'boolean',
            processCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetManageProcessByStaffIdResponseBodyResult = GetManageProcessByStaffIdResponseBodyResult;
class GetProcessCodeByNameResponseBodyResult extends $tea.Model {
    static names() {
        return {
            gmtModified: 'gmtModified',
            processCode: 'processCode',
        };
    }
    static types() {
        return {
            gmtModified: 'string',
            processCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessCodeByNameResponseBodyResult = GetProcessCodeByNameResponseBodyResult;
class GetProcessConfigResponseBodyResultCommentConf extends $tea.Model {
    static names() {
        return {
            commentDescription: 'commentDescription',
            commentHiddenForProposer: 'commentHiddenForProposer',
            commentRequired: 'commentRequired',
        };
    }
    static types() {
        return {
            commentDescription: 'string',
            commentHiddenForProposer: 'boolean',
            commentRequired: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessConfigResponseBodyResultCommentConf = GetProcessConfigResponseBodyResultCommentConf;
class GetProcessConfigResponseBodyResultHandSignConf extends $tea.Model {
    static names() {
        return {
            handSignEnable: 'handSignEnable',
            resignEnable: 'resignEnable',
        };
    }
    static types() {
        return {
            handSignEnable: 'boolean',
            resignEnable: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessConfigResponseBodyResultHandSignConf = GetProcessConfigResponseBodyResultHandSignConf;
class GetProcessConfigResponseBodyResultSubstituteSubmitConfSubmitterList extends $tea.Model {
    static names() {
        return {
            name: 'name',
            type: 'type',
            value: 'value',
        };
    }
    static types() {
        return {
            name: 'string',
            type: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessConfigResponseBodyResultSubstituteSubmitConfSubmitterList = GetProcessConfigResponseBodyResultSubstituteSubmitConfSubmitterList;
class GetProcessConfigResponseBodyResultSubstituteSubmitConf extends $tea.Model {
    static names() {
        return {
            enable: 'enable',
            submitterList: 'submitterList',
        };
    }
    static types() {
        return {
            enable: 'boolean',
            submitterList: { 'type': 'array', 'itemType': GetProcessConfigResponseBodyResultSubstituteSubmitConfSubmitterList },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessConfigResponseBodyResultSubstituteSubmitConf = GetProcessConfigResponseBodyResultSubstituteSubmitConf;
class GetProcessConfigResponseBodyResultTitleGenRule extends $tea.Model {
    static names() {
        return {
            express: 'express',
            type: 'type',
        };
    }
    static types() {
        return {
            express: 'string',
            type: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessConfigResponseBodyResultTitleGenRule = GetProcessConfigResponseBodyResultTitleGenRule;
class GetProcessConfigResponseBodyResultVisibility extends $tea.Model {
    static names() {
        return {
            type: 'type',
            value: 'value',
        };
    }
    static types() {
        return {
            type: 'number',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessConfigResponseBodyResultVisibility = GetProcessConfigResponseBodyResultVisibility;
class GetProcessConfigResponseBodyResult extends $tea.Model {
    static names() {
        return {
            abstractGenRule: 'abstractGenRule',
            activityAuth: 'activityAuth',
            allowRevoke: 'allowRevoke',
            appendEnable: 'appendEnable',
            autoExecuteOriginatorTasks: 'autoExecuteOriginatorTasks',
            bizCategoryId: 'bizCategoryId',
            bizType: 'bizType',
            commentConf: 'commentConf',
            duplicateRemoval: 'duplicateRemoval',
            formSchema: 'formSchema',
            handSignConf: 'handSignConf',
            managers: 'managers',
            name: 'name',
            processAppType: 'processAppType',
            processConfig: 'processConfig',
            staticProc: 'staticProc',
            substituteSubmitConf: 'substituteSubmitConf',
            titleGenRule: 'titleGenRule',
            visibility: 'visibility',
        };
    }
    static types() {
        return {
            abstractGenRule: { 'type': 'array', 'itemType': 'string' },
            activityAuth: 'string',
            allowRevoke: 'boolean',
            appendEnable: 'boolean',
            autoExecuteOriginatorTasks: 'boolean',
            bizCategoryId: 'string',
            bizType: 'string',
            commentConf: GetProcessConfigResponseBodyResultCommentConf,
            duplicateRemoval: 'string',
            formSchema: 'string',
            handSignConf: GetProcessConfigResponseBodyResultHandSignConf,
            managers: { 'type': 'array', 'itemType': 'string' },
            name: 'string',
            processAppType: 'boolean',
            processConfig: 'string',
            staticProc: 'boolean',
            substituteSubmitConf: GetProcessConfigResponseBodyResultSubstituteSubmitConf,
            titleGenRule: GetProcessConfigResponseBodyResultTitleGenRule,
            visibility: { 'type': 'array', 'itemType': GetProcessConfigResponseBodyResultVisibility },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessConfigResponseBodyResult = GetProcessConfigResponseBodyResult;
class GetProcessInstanceResponseBodyResultFormComponentValues extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            componentType: 'componentType',
            extValue: 'extValue',
            id: 'id',
            name: 'name',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            componentType: 'string',
            extValue: 'string',
            id: 'string',
            name: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessInstanceResponseBodyResultFormComponentValues = GetProcessInstanceResponseBodyResultFormComponentValues;
class GetProcessInstanceResponseBodyResultOperationRecordsAttachments extends $tea.Model {
    static names() {
        return {
            fileId: 'fileId',
            fileName: 'fileName',
            fileSize: 'fileSize',
            fileType: 'fileType',
            spaceId: 'spaceId',
        };
    }
    static types() {
        return {
            fileId: 'string',
            fileName: 'string',
            fileSize: 'string',
            fileType: 'string',
            spaceId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessInstanceResponseBodyResultOperationRecordsAttachments = GetProcessInstanceResponseBodyResultOperationRecordsAttachments;
class GetProcessInstanceResponseBodyResultOperationRecords extends $tea.Model {
    static names() {
        return {
            activityId: 'activityId',
            attachments: 'attachments',
            ccUserIds: 'ccUserIds',
            date: 'date',
            images: 'images',
            remark: 'remark',
            result: 'result',
            showName: 'showName',
            type: 'type',
            userId: 'userId',
        };
    }
    static types() {
        return {
            activityId: 'string',
            attachments: { 'type': 'array', 'itemType': GetProcessInstanceResponseBodyResultOperationRecordsAttachments },
            ccUserIds: { 'type': 'array', 'itemType': 'string' },
            date: 'string',
            images: { 'type': 'array', 'itemType': 'string' },
            remark: 'string',
            result: 'string',
            showName: 'string',
            type: 'string',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessInstanceResponseBodyResultOperationRecords = GetProcessInstanceResponseBodyResultOperationRecords;
class GetProcessInstanceResponseBodyResultTasks extends $tea.Model {
    static names() {
        return {
            activityId: 'activityId',
            createTime: 'createTime',
            finishTime: 'finishTime',
            mobileUrl: 'mobileUrl',
            pcUrl: 'pcUrl',
            processInstanceId: 'processInstanceId',
            result: 'result',
            status: 'status',
            taskId: 'taskId',
            userId: 'userId',
        };
    }
    static types() {
        return {
            activityId: 'string',
            createTime: 'string',
            finishTime: 'string',
            mobileUrl: 'string',
            pcUrl: 'string',
            processInstanceId: 'string',
            result: 'string',
            status: 'string',
            taskId: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessInstanceResponseBodyResultTasks = GetProcessInstanceResponseBodyResultTasks;
class GetProcessInstanceResponseBodyResult extends $tea.Model {
    static names() {
        return {
            approverUserIds: 'approverUserIds',
            attachedProcessInstanceIds: 'attachedProcessInstanceIds',
            bizAction: 'bizAction',
            bizData: 'bizData',
            businessId: 'businessId',
            ccUserIds: 'ccUserIds',
            createTime: 'createTime',
            finishTime: 'finishTime',
            formComponentValues: 'formComponentValues',
            mainProcessInstanceId: 'mainProcessInstanceId',
            operationRecords: 'operationRecords',
            originatorDeptId: 'originatorDeptId',
            originatorDeptName: 'originatorDeptName',
            originatorUserId: 'originatorUserId',
            result: 'result',
            status: 'status',
            tasks: 'tasks',
            title: 'title',
        };
    }
    static types() {
        return {
            approverUserIds: { 'type': 'array', 'itemType': 'string' },
            attachedProcessInstanceIds: { 'type': 'array', 'itemType': 'string' },
            bizAction: 'string',
            bizData: 'string',
            businessId: 'string',
            ccUserIds: { 'type': 'array', 'itemType': 'string' },
            createTime: 'string',
            finishTime: 'string',
            formComponentValues: { 'type': 'array', 'itemType': GetProcessInstanceResponseBodyResultFormComponentValues },
            mainProcessInstanceId: 'string',
            operationRecords: { 'type': 'array', 'itemType': GetProcessInstanceResponseBodyResultOperationRecords },
            originatorDeptId: 'string',
            originatorDeptName: 'string',
            originatorUserId: 'string',
            result: 'string',
            status: 'string',
            tasks: { 'type': 'array', 'itemType': GetProcessInstanceResponseBodyResultTasks },
            title: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessInstanceResponseBodyResult = GetProcessInstanceResponseBodyResult;
class GetProcessInstanceWithExtraResponseBodyResultFormComponentValues extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            componentType: 'componentType',
            extValue: 'extValue',
            id: 'id',
            name: 'name',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            componentType: 'string',
            extValue: 'string',
            id: 'string',
            name: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessInstanceWithExtraResponseBodyResultFormComponentValues = GetProcessInstanceWithExtraResponseBodyResultFormComponentValues;
class GetProcessInstanceWithExtraResponseBodyResultOperationRecordsAttachments extends $tea.Model {
    static names() {
        return {
            fileId: 'fileId',
            fileName: 'fileName',
            fileSize: 'fileSize',
            fileType: 'fileType',
            spaceId: 'spaceId',
        };
    }
    static types() {
        return {
            fileId: 'string',
            fileName: 'string',
            fileSize: 'string',
            fileType: 'string',
            spaceId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessInstanceWithExtraResponseBodyResultOperationRecordsAttachments = GetProcessInstanceWithExtraResponseBodyResultOperationRecordsAttachments;
class GetProcessInstanceWithExtraResponseBodyResultOperationRecords extends $tea.Model {
    static names() {
        return {
            activityId: 'activityId',
            attachments: 'attachments',
            ccUserIds: 'ccUserIds',
            date: 'date',
            handSignToken: 'handSignToken',
            images: 'images',
            remark: 'remark',
            result: 'result',
            showName: 'showName',
            type: 'type',
            userId: 'userId',
        };
    }
    static types() {
        return {
            activityId: 'string',
            attachments: { 'type': 'array', 'itemType': GetProcessInstanceWithExtraResponseBodyResultOperationRecordsAttachments },
            ccUserIds: { 'type': 'array', 'itemType': 'string' },
            date: 'string',
            handSignToken: 'string',
            images: { 'type': 'array', 'itemType': 'string' },
            remark: 'string',
            result: 'string',
            showName: 'string',
            type: 'string',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessInstanceWithExtraResponseBodyResultOperationRecords = GetProcessInstanceWithExtraResponseBodyResultOperationRecords;
class GetProcessInstanceWithExtraResponseBodyResultTasks extends $tea.Model {
    static names() {
        return {
            activityId: 'activityId',
            createTime: 'createTime',
            finishTime: 'finishTime',
            mobileUrl: 'mobileUrl',
            pcUrl: 'pcUrl',
            processInstanceId: 'processInstanceId',
            result: 'result',
            status: 'status',
            taskId: 'taskId',
            userId: 'userId',
        };
    }
    static types() {
        return {
            activityId: 'string',
            createTime: 'string',
            finishTime: 'string',
            mobileUrl: 'string',
            pcUrl: 'string',
            processInstanceId: 'string',
            result: 'string',
            status: 'string',
            taskId: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessInstanceWithExtraResponseBodyResultTasks = GetProcessInstanceWithExtraResponseBodyResultTasks;
class GetProcessInstanceWithExtraResponseBodyResult extends $tea.Model {
    static names() {
        return {
            approverUserIds: 'approverUserIds',
            attachedProcessInstanceIds: 'attachedProcessInstanceIds',
            bizAction: 'bizAction',
            bizData: 'bizData',
            businessId: 'businessId',
            ccUserIds: 'ccUserIds',
            createTime: 'createTime',
            finishTime: 'finishTime',
            formComponentValues: 'formComponentValues',
            mainProcessInstanceId: 'mainProcessInstanceId',
            operationRecords: 'operationRecords',
            originatorDeptId: 'originatorDeptId',
            originatorDeptName: 'originatorDeptName',
            originatorUserId: 'originatorUserId',
            result: 'result',
            status: 'status',
            tasks: 'tasks',
            title: 'title',
        };
    }
    static types() {
        return {
            approverUserIds: { 'type': 'array', 'itemType': 'string' },
            attachedProcessInstanceIds: { 'type': 'array', 'itemType': 'string' },
            bizAction: 'string',
            bizData: 'string',
            businessId: 'string',
            ccUserIds: { 'type': 'array', 'itemType': 'string' },
            createTime: 'string',
            finishTime: 'string',
            formComponentValues: { 'type': 'array', 'itemType': GetProcessInstanceWithExtraResponseBodyResultFormComponentValues },
            mainProcessInstanceId: 'string',
            operationRecords: { 'type': 'array', 'itemType': GetProcessInstanceWithExtraResponseBodyResultOperationRecords },
            originatorDeptId: 'string',
            originatorDeptName: 'string',
            originatorUserId: 'string',
            result: 'string',
            status: 'string',
            tasks: { 'type': 'array', 'itemType': GetProcessInstanceWithExtraResponseBodyResultTasks },
            title: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetProcessInstanceWithExtraResponseBodyResult = GetProcessInstanceWithExtraResponseBodyResult;
class GetSchemaAndProcessconfigBatchllyResponseBodyResult extends $tea.Model {
    static names() {
        return {
            appUuid: 'appUuid',
            bizCategoryId: 'bizCategoryId',
            createTime: 'createTime',
            creatorUserId: 'creatorUserId',
            formUuid: 'formUuid',
            managerList: 'managerList',
            memo: 'memo',
            name: 'name',
            processCode: 'processCode',
            processConfig: 'processConfig',
            processId: 'processId',
            properties: 'properties',
            schemaContent: 'schemaContent',
            visibleScope: 'visibleScope',
        };
    }
    static types() {
        return {
            appUuid: 'string',
            bizCategoryId: 'string',
            createTime: 'string',
            creatorUserId: 'string',
            formUuid: 'string',
            managerList: 'string',
            memo: 'string',
            name: 'string',
            processCode: 'string',
            processConfig: 'string',
            processId: 'number',
            properties: 'string',
            schemaContent: 'string',
            visibleScope: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetSchemaAndProcessconfigBatchllyResponseBodyResult = GetSchemaAndProcessconfigBatchllyResponseBodyResult;
class GetSpaceWithDownloadAuthResponseBodyResult extends $tea.Model {
    static names() {
        return {
            spaceId: 'spaceId',
        };
    }
    static types() {
        return {
            spaceId: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GetSpaceWithDownloadAuthResponseBodyResult = GetSpaceWithDownloadAuthResponseBodyResult;
class GrantProcessInstanceForDownloadFileResponseBodyResult extends $tea.Model {
    static names() {
        return {
            downloadUri: 'downloadUri',
            fileId: 'fileId',
            spaceId: 'spaceId',
        };
    }
    static types() {
        return {
            downloadUri: 'string',
            fileId: 'string',
            spaceId: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.GrantProcessInstanceForDownloadFileResponseBodyResult = GrantProcessInstanceForDownloadFileResponseBodyResult;
class InsertOrUpdateDirResponseBodyResult extends $tea.Model {
    static names() {
        return {
            bizGroup: 'bizGroup',
            dirId: 'dirId',
        };
    }
    static types() {
        return {
            bizGroup: 'string',
            dirId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.InsertOrUpdateDirResponseBodyResult = InsertOrUpdateDirResponseBodyResult;
class InstallAppRequestInstallOption extends $tea.Model {
    static names() {
        return {
            isSync: 'isSync',
        };
    }
    static types() {
        return {
            isSync: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.InstallAppRequestInstallOption = InstallAppRequestInstallOption;
class InstallAppResponseBodyResult extends $tea.Model {
    static names() {
        return {
            bizType: 'bizType',
            name: 'name',
            processCode: 'processCode',
        };
    }
    static types() {
        return {
            bizType: 'string',
            name: 'string',
            processCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.InstallAppResponseBodyResult = InstallAppResponseBodyResult;
class ListProcessInstanceIdsResponseBodyResult extends $tea.Model {
    static names() {
        return {
            list: 'list',
            nextToken: 'nextToken',
        };
    }
    static types() {
        return {
            list: { 'type': 'array', 'itemType': 'string' },
            nextToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ListProcessInstanceIdsResponseBodyResult = ListProcessInstanceIdsResponseBodyResult;
class ListTodoWorkRecordsResponseBodyResultListForms extends $tea.Model {
    static names() {
        return {
            content: 'content',
            title: 'title',
        };
    }
    static types() {
        return {
            content: 'string',
            title: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ListTodoWorkRecordsResponseBodyResultListForms = ListTodoWorkRecordsResponseBodyResultListForms;
class ListTodoWorkRecordsResponseBodyResultList extends $tea.Model {
    static names() {
        return {
            forms: 'forms',
            instanceId: 'instanceId',
            taskId: 'taskId',
            title: 'title',
            url: 'url',
        };
    }
    static types() {
        return {
            forms: { 'type': 'array', 'itemType': ListTodoWorkRecordsResponseBodyResultListForms },
            instanceId: 'string',
            taskId: 'number',
            title: 'string',
            url: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ListTodoWorkRecordsResponseBodyResultList = ListTodoWorkRecordsResponseBodyResultList;
class ListTodoWorkRecordsResponseBodyResult extends $tea.Model {
    static names() {
        return {
            list: 'list',
            nextToken: 'nextToken',
        };
    }
    static types() {
        return {
            list: { 'type': 'array', 'itemType': ListTodoWorkRecordsResponseBodyResultList },
            nextToken: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ListTodoWorkRecordsResponseBodyResult = ListTodoWorkRecordsResponseBodyResult;
class ListUserVisibleBpmsProcessesResponseBodyResultProcessList extends $tea.Model {
    static names() {
        return {
            dirId: 'dirId',
            dirName: 'dirName',
            iconUrl: 'iconUrl',
            name: 'name',
            processCode: 'processCode',
            url: 'url',
        };
    }
    static types() {
        return {
            dirId: 'string',
            dirName: 'string',
            iconUrl: 'string',
            name: 'string',
            processCode: 'string',
            url: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ListUserVisibleBpmsProcessesResponseBodyResultProcessList = ListUserVisibleBpmsProcessesResponseBodyResultProcessList;
class ListUserVisibleBpmsProcessesResponseBodyResult extends $tea.Model {
    static names() {
        return {
            nextToken: 'nextToken',
            processList: 'processList',
        };
    }
    static types() {
        return {
            nextToken: 'number',
            processList: { 'type': 'array', 'itemType': ListUserVisibleBpmsProcessesResponseBodyResultProcessList },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ListUserVisibleBpmsProcessesResponseBodyResult = ListUserVisibleBpmsProcessesResponseBodyResult;
class PagesExportInstancesResponseBodyResultListFormComponentValues extends $tea.Model {
    static names() {
        return {
            componentName: 'componentName',
            extValue: 'extValue',
            id: 'id',
            name: 'name',
            value: 'value',
        };
    }
    static types() {
        return {
            componentName: 'string',
            extValue: 'string',
            id: 'string',
            name: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PagesExportInstancesResponseBodyResultListFormComponentValues = PagesExportInstancesResponseBodyResultListFormComponentValues;
class PagesExportInstancesResponseBodyResultListOperationRecordsAttachments extends $tea.Model {
    static names() {
        return {
            fileId: 'fileId',
            fileName: 'fileName',
            fileSize: 'fileSize',
            fileType: 'fileType',
        };
    }
    static types() {
        return {
            fileId: 'string',
            fileName: 'string',
            fileSize: 'string',
            fileType: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PagesExportInstancesResponseBodyResultListOperationRecordsAttachments = PagesExportInstancesResponseBodyResultListOperationRecordsAttachments;
class PagesExportInstancesResponseBodyResultListOperationRecords extends $tea.Model {
    static names() {
        return {
            activityId: 'activityId',
            attachments: 'attachments',
            images: 'images',
            operationType: 'operationType',
            remark: 'remark',
            result: 'result',
            taskId: 'taskId',
            timestamp: 'timestamp',
            userId: 'userId',
        };
    }
    static types() {
        return {
            activityId: 'string',
            attachments: { 'type': 'array', 'itemType': PagesExportInstancesResponseBodyResultListOperationRecordsAttachments },
            images: { 'type': 'array', 'itemType': 'string' },
            operationType: 'string',
            remark: 'string',
            result: 'string',
            taskId: 'number',
            timestamp: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PagesExportInstancesResponseBodyResultListOperationRecords = PagesExportInstancesResponseBodyResultListOperationRecords;
class PagesExportInstancesResponseBodyResultListTasks extends $tea.Model {
    static names() {
        return {
            activityId: 'activityId',
            createTimestamp: 'createTimestamp',
            finishTimestamp: 'finishTimestamp',
            result: 'result',
            status: 'status',
            taskId: 'taskId',
            userId: 'userId',
        };
    }
    static types() {
        return {
            activityId: 'string',
            createTimestamp: 'number',
            finishTimestamp: 'number',
            result: 'string',
            status: 'string',
            taskId: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PagesExportInstancesResponseBodyResultListTasks = PagesExportInstancesResponseBodyResultListTasks;
class PagesExportInstancesResponseBodyResultList extends $tea.Model {
    static names() {
        return {
            attachedProcessInstanceIds: 'attachedProcessInstanceIds',
            businessId: 'businessId',
            createTime: 'createTime',
            finishTime: 'finishTime',
            formComponentValues: 'formComponentValues',
            mainProcessInstanceId: 'mainProcessInstanceId',
            operationRecords: 'operationRecords',
            originatorDeptId: 'originatorDeptId',
            originatorUserid: 'originatorUserid',
            processInstanceId: 'processInstanceId',
            result: 'result',
            status: 'status',
            tasks: 'tasks',
            title: 'title',
        };
    }
    static types() {
        return {
            attachedProcessInstanceIds: 'string',
            businessId: 'string',
            createTime: 'number',
            finishTime: 'number',
            formComponentValues: { 'type': 'array', 'itemType': PagesExportInstancesResponseBodyResultListFormComponentValues },
            mainProcessInstanceId: 'string',
            operationRecords: { 'type': 'array', 'itemType': PagesExportInstancesResponseBodyResultListOperationRecords },
            originatorDeptId: 'string',
            originatorUserid: 'string',
            processInstanceId: 'string',
            result: 'string',
            status: 'string',
            tasks: { 'type': 'array', 'itemType': PagesExportInstancesResponseBodyResultListTasks },
            title: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PagesExportInstancesResponseBodyResultList = PagesExportInstancesResponseBodyResultList;
class PagesExportInstancesResponseBodyResult extends $tea.Model {
    static names() {
        return {
            hasMore: 'hasMore',
            list: 'list',
            nextToken: 'nextToken',
        };
    }
    static types() {
        return {
            hasMore: 'boolean',
            list: { 'type': 'array', 'itemType': PagesExportInstancesResponseBodyResultList },
            nextToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PagesExportInstancesResponseBodyResult = PagesExportInstancesResponseBodyResult;
class PremiumAddApproveDentryAuthRequestFileInfos extends $tea.Model {
    static names() {
        return {
            fileId: 'fileId',
            spaceId: 'spaceId',
        };
    }
    static types() {
        return {
            fileId: 'string',
            spaceId: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumAddApproveDentryAuthRequestFileInfos = PremiumAddApproveDentryAuthRequestFileInfos;
class PremiumBatchExecuteProcessInstancesRequestTaskInfoList extends $tea.Model {
    static names() {
        return {
            processInstanceId: 'processInstanceId',
            taskId: 'taskId',
        };
    }
    static types() {
        return {
            processInstanceId: 'string',
            taskId: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumBatchExecuteProcessInstancesRequestTaskInfoList = PremiumBatchExecuteProcessInstancesRequestTaskInfoList;
class PremiumGetAttachmentSpaceResponseBodyResult extends $tea.Model {
    static names() {
        return {
            spaceId: 'spaceId',
        };
    }
    static types() {
        return {
            spaceId: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetAttachmentSpaceResponseBodyResult = PremiumGetAttachmentSpaceResponseBodyResult;
class PremiumGetDoneTasksResponseBodyResultList extends $tea.Model {
    static names() {
        return {
            activityId: 'activityId',
            formMassage: 'formMassage',
            originatorId: 'originatorId',
            originatorName: 'originatorName',
            originatorPhoto: 'originatorPhoto',
            processCreateTime: 'processCreateTime',
            processEndTime: 'processEndTime',
            processInstanceId: 'processInstanceId',
            processType: 'processType',
            result: 'result',
            status: 'status',
            taskId: 'taskId',
            title: 'title',
            url: 'url',
        };
    }
    static types() {
        return {
            activityId: 'string',
            formMassage: 'string',
            originatorId: 'string',
            originatorName: 'string',
            originatorPhoto: 'string',
            processCreateTime: 'string',
            processEndTime: 'string',
            processInstanceId: 'string',
            processType: 'number',
            result: 'string',
            status: 'string',
            taskId: 'string',
            title: 'string',
            url: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetDoneTasksResponseBodyResultList = PremiumGetDoneTasksResponseBodyResultList;
class PremiumGetDoneTasksResponseBodyResult extends $tea.Model {
    static names() {
        return {
            hasMore: 'hasMore',
            list: 'list',
        };
    }
    static types() {
        return {
            hasMore: 'boolean',
            list: { 'type': 'array', 'itemType': PremiumGetDoneTasksResponseBodyResultList },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetDoneTasksResponseBodyResult = PremiumGetDoneTasksResponseBodyResult;
class PremiumGetFieldModifiedHistoryResponseBodyResult extends $tea.Model {
    static names() {
        return {
            createTime: 'createTime',
            fieldId: 'fieldId',
            name: 'name',
            userId: 'userId',
            value: 'value',
        };
    }
    static types() {
        return {
            createTime: 'string',
            fieldId: 'string',
            name: 'string',
            userId: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFieldModifiedHistoryResponseBodyResult = PremiumGetFieldModifiedHistoryResponseBodyResult;
class PremiumGetFormInstanceResponseBodyFormInstDataList extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            componentType: 'componentType',
            extendValue: 'extendValue',
            key: 'key',
            label: 'label',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            componentType: 'string',
            extendValue: 'string',
            key: 'string',
            label: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormInstanceResponseBodyFormInstDataList = PremiumGetFormInstanceResponseBodyFormInstDataList;
class PremiumGetFormInstancesResponseBodyResultValuesFormInstDataList extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            componentType: 'componentType',
            extendValue: 'extendValue',
            key: 'key',
            label: 'label',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            componentType: 'string',
            extendValue: 'string',
            key: 'string',
            label: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormInstancesResponseBodyResultValuesFormInstDataList = PremiumGetFormInstancesResponseBodyResultValuesFormInstDataList;
class PremiumGetFormInstancesResponseBodyResultValues extends $tea.Model {
    static names() {
        return {
            appUuid: 'appUuid',
            attributes: 'attributes',
            createTimestamp: 'createTimestamp',
            creator: 'creator',
            formCode: 'formCode',
            formInstDataList: 'formInstDataList',
            formInstanceId: 'formInstanceId',
            modifier: 'modifier',
            modifyTimestamp: 'modifyTimestamp',
            outBizCode: 'outBizCode',
            outInstanceId: 'outInstanceId',
            title: 'title',
        };
    }
    static types() {
        return {
            appUuid: 'string',
            attributes: { 'type': 'map', 'keyType': 'string', 'valueType': 'any' },
            createTimestamp: 'number',
            creator: 'string',
            formCode: 'string',
            formInstDataList: { 'type': 'array', 'itemType': PremiumGetFormInstancesResponseBodyResultValuesFormInstDataList },
            formInstanceId: 'string',
            modifier: 'string',
            modifyTimestamp: 'number',
            outBizCode: 'string',
            outInstanceId: 'string',
            title: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormInstancesResponseBodyResultValues = PremiumGetFormInstancesResponseBodyResultValues;
class PremiumGetFormInstancesResponseBodyResult extends $tea.Model {
    static names() {
        return {
            hasMore: 'hasMore',
            maxResults: 'maxResults',
            nextToken: 'nextToken',
            values: 'values',
        };
    }
    static types() {
        return {
            hasMore: 'boolean',
            maxResults: 'number',
            nextToken: 'string',
            values: { 'type': 'array', 'itemType': PremiumGetFormInstancesResponseBodyResultValues },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormInstancesResponseBodyResult = PremiumGetFormInstancesResponseBodyResult;
class PremiumGetFormSchemaResponseBodyResultSchemaContentItemsChildrenProps extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            id: 'id',
            label: 'label',
            options: 'options',
            required: 'required',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            id: 'string',
            label: 'string',
            options: { 'type': 'array', 'itemType': 'string' },
            required: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormSchemaResponseBodyResultSchemaContentItemsChildrenProps = PremiumGetFormSchemaResponseBodyResultSchemaContentItemsChildrenProps;
class PremiumGetFormSchemaResponseBodyResultSchemaContentItemsChildren extends $tea.Model {
    static names() {
        return {
            componentName: 'componentName',
            props: 'props',
        };
    }
    static types() {
        return {
            componentName: 'string',
            props: PremiumGetFormSchemaResponseBodyResultSchemaContentItemsChildrenProps,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormSchemaResponseBodyResultSchemaContentItemsChildren = PremiumGetFormSchemaResponseBodyResultSchemaContentItemsChildren;
class PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsBehaviorLinkageTargets extends $tea.Model {
    static names() {
        return {
            behavior: 'behavior',
            fieldId: 'fieldId',
        };
    }
    static types() {
        return {
            behavior: 'string',
            fieldId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsBehaviorLinkageTargets = PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsBehaviorLinkageTargets;
class PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsBehaviorLinkage extends $tea.Model {
    static names() {
        return {
            targets: 'targets',
            value: 'value',
        };
    }
    static types() {
        return {
            targets: { 'type': 'array', 'itemType': PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsBehaviorLinkageTargets },
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsBehaviorLinkage = PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsBehaviorLinkage;
class PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsObjOptions extends $tea.Model {
    static names() {
        return {
            value: 'value',
        };
    }
    static types() {
        return {
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsObjOptions = PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsObjOptions;
class PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsPush extends $tea.Model {
    static names() {
        return {
            attendanceRule: 'attendanceRule',
            pushSwitch: 'pushSwitch',
            pushTag: 'pushTag',
        };
    }
    static types() {
        return {
            attendanceRule: 'number',
            pushSwitch: 'number',
            pushTag: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsPush = PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsPush;
class PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsStatField extends $tea.Model {
    static names() {
        return {
            id: 'id',
            label: 'label',
            unit: 'unit',
            upper: 'upper',
        };
    }
    static types() {
        return {
            id: 'string',
            label: 'string',
            unit: 'string',
            upper: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsStatField = PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsStatField;
class PremiumGetFormSchemaResponseBodyResultSchemaContentItemsProps extends $tea.Model {
    static names() {
        return {
            actionName: 'actionName',
            align: 'align',
            appId: 'appId',
            asyncCondition: 'asyncCondition',
            attendTypeLabel: 'attendTypeLabel',
            behaviorLinkage: 'behaviorLinkage',
            bizAlias: 'bizAlias',
            bizType: 'bizType',
            childFieldVisible: 'childFieldVisible',
            choice: 'choice',
            commonBizType: 'commonBizType',
            disabled: 'disabled',
            duration: 'duration',
            durationLabel: 'durationLabel',
            eSign: 'eSign',
            extract: 'extract',
            fieldsInfo: 'fieldsInfo',
            format: 'format',
            formula: 'formula',
            hidden: 'hidden',
            hiddenInApprovalDetail: 'hiddenInApprovalDetail',
            hideLabel: 'hideLabel',
            holidayOptions: 'holidayOptions',
            id: 'id',
            label: 'label',
            labelEditableFreeze: 'labelEditableFreeze',
            link: 'link',
            mainTitle: 'mainTitle',
            notPrint: 'notPrint',
            notUpper: 'notUpper',
            objOptions: 'objOptions',
            options: 'options',
            payEnable: 'payEnable',
            placeholder: 'placeholder',
            push: 'push',
            pushToAttendance: 'pushToAttendance',
            pushToCalendar: 'pushToCalendar',
            required: 'required',
            requiredEditableFreeze: 'requiredEditableFreeze',
            showAttendOptions: 'showAttendOptions',
            staffStatusEnabled: 'staffStatusEnabled',
            statField: 'statField',
            tableViewMode: 'tableViewMode',
            unit: 'unit',
            useCalendar: 'useCalendar',
            verticalPrint: 'verticalPrint',
        };
    }
    static types() {
        return {
            actionName: 'string',
            align: 'string',
            appId: 'number',
            asyncCondition: 'boolean',
            attendTypeLabel: 'string',
            behaviorLinkage: { 'type': 'array', 'itemType': PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsBehaviorLinkage },
            bizAlias: 'string',
            bizType: 'string',
            childFieldVisible: { 'type': 'map', 'keyType': 'string', 'valueType': 'boolean' },
            choice: 'number',
            commonBizType: 'string',
            disabled: 'boolean',
            duration: 'boolean',
            durationLabel: 'string',
            eSign: 'boolean',
            extract: 'boolean',
            fieldsInfo: 'string',
            format: 'string',
            formula: 'string',
            hidden: 'boolean',
            hiddenInApprovalDetail: 'boolean',
            hideLabel: 'boolean',
            holidayOptions: { 'type': 'array', 'itemType': { 'type': 'map', 'keyType': 'string', 'valueType': 'string' } },
            id: 'string',
            label: 'string',
            labelEditableFreeze: 'boolean',
            link: 'string',
            mainTitle: 'string',
            notPrint: 'string',
            notUpper: 'string',
            objOptions: { 'type': 'array', 'itemType': PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsObjOptions },
            options: { 'type': 'array', 'itemType': 'string' },
            payEnable: 'boolean',
            placeholder: 'string',
            push: PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsPush,
            pushToAttendance: 'boolean',
            pushToCalendar: 'number',
            required: 'boolean',
            requiredEditableFreeze: 'boolean',
            showAttendOptions: 'boolean',
            staffStatusEnabled: 'boolean',
            statField: { 'type': 'array', 'itemType': PremiumGetFormSchemaResponseBodyResultSchemaContentItemsPropsStatField },
            tableViewMode: 'string',
            unit: 'string',
            useCalendar: 'boolean',
            verticalPrint: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormSchemaResponseBodyResultSchemaContentItemsProps = PremiumGetFormSchemaResponseBodyResultSchemaContentItemsProps;
class PremiumGetFormSchemaResponseBodyResultSchemaContentItems extends $tea.Model {
    static names() {
        return {
            children: 'children',
            componentName: 'componentName',
            props: 'props',
        };
    }
    static types() {
        return {
            children: { 'type': 'array', 'itemType': PremiumGetFormSchemaResponseBodyResultSchemaContentItemsChildren },
            componentName: 'string',
            props: PremiumGetFormSchemaResponseBodyResultSchemaContentItemsProps,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormSchemaResponseBodyResultSchemaContentItems = PremiumGetFormSchemaResponseBodyResultSchemaContentItems;
class PremiumGetFormSchemaResponseBodyResultSchemaContent extends $tea.Model {
    static names() {
        return {
            icon: 'icon',
            items: 'items',
            title: 'title',
        };
    }
    static types() {
        return {
            icon: 'string',
            items: { 'type': 'array', 'itemType': PremiumGetFormSchemaResponseBodyResultSchemaContentItems },
            title: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormSchemaResponseBodyResultSchemaContent = PremiumGetFormSchemaResponseBodyResultSchemaContent;
class PremiumGetFormSchemaResponseBodyResult extends $tea.Model {
    static names() {
        return {
            appType: 'appType',
            creatorUserId: 'creatorUserId',
            formCode: 'formCode',
            gmtCreate: 'gmtCreate',
            gmtModified: 'gmtModified',
            icon: 'icon',
            memo: 'memo',
            name: 'name',
            schemaContent: 'schemaContent',
            status: 'status',
        };
    }
    static types() {
        return {
            appType: 'number',
            creatorUserId: 'string',
            formCode: 'string',
            gmtCreate: 'string',
            gmtModified: 'string',
            icon: 'string',
            memo: 'string',
            name: 'string',
            schemaContent: PremiumGetFormSchemaResponseBodyResultSchemaContent,
            status: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetFormSchemaResponseBodyResult = PremiumGetFormSchemaResponseBodyResult;
class PremiumGetInstFieldSettingResponseBodyResult extends $tea.Model {
    static names() {
        return {
            componentType: 'componentType',
            fieldBehavior: 'fieldBehavior',
            fieldId: 'fieldId',
        };
    }
    static types() {
        return {
            componentType: 'string',
            fieldBehavior: 'string',
            fieldId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetInstFieldSettingResponseBodyResult = PremiumGetInstFieldSettingResponseBodyResult;
class PremiumGetNoticedInstancesResponseBodyResultList extends $tea.Model {
    static names() {
        return {
            formMassage: 'formMassage',
            originatorId: 'originatorId',
            originatorName: 'originatorName',
            originatorPhoto: 'originatorPhoto',
            processCreateTime: 'processCreateTime',
            processEndTime: 'processEndTime',
            processInstanceId: 'processInstanceId',
            processType: 'processType',
            result: 'result',
            status: 'status',
            title: 'title',
            url: 'url',
        };
    }
    static types() {
        return {
            formMassage: 'string',
            originatorId: 'string',
            originatorName: 'string',
            originatorPhoto: 'string',
            processCreateTime: 'string',
            processEndTime: 'string',
            processInstanceId: 'string',
            processType: 'number',
            result: 'string',
            status: 'string',
            title: 'string',
            url: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetNoticedInstancesResponseBodyResultList = PremiumGetNoticedInstancesResponseBodyResultList;
class PremiumGetNoticedInstancesResponseBodyResult extends $tea.Model {
    static names() {
        return {
            hasMore: 'hasMore',
            list: 'list',
        };
    }
    static types() {
        return {
            hasMore: 'boolean',
            list: { 'type': 'array', 'itemType': PremiumGetNoticedInstancesResponseBodyResultList },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetNoticedInstancesResponseBodyResult = PremiumGetNoticedInstancesResponseBodyResult;
class PremiumGetProcessInstancesResponseBodyResultListFormComponentValues extends $tea.Model {
    static names() {
        return {
            extValue: 'extValue',
            id: 'id',
            name: 'name',
            value: 'value',
        };
    }
    static types() {
        return {
            extValue: 'string',
            id: 'string',
            name: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetProcessInstancesResponseBodyResultListFormComponentValues = PremiumGetProcessInstancesResponseBodyResultListFormComponentValues;
class PremiumGetProcessInstancesResponseBodyResultListOperationRecordsAttachments extends $tea.Model {
    static names() {
        return {
            fileId: 'fileId',
            fileName: 'fileName',
            fileSize: 'fileSize',
            fileType: 'fileType',
        };
    }
    static types() {
        return {
            fileId: 'string',
            fileName: 'string',
            fileSize: 'string',
            fileType: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetProcessInstancesResponseBodyResultListOperationRecordsAttachments = PremiumGetProcessInstancesResponseBodyResultListOperationRecordsAttachments;
class PremiumGetProcessInstancesResponseBodyResultListOperationRecords extends $tea.Model {
    static names() {
        return {
            attachments: 'attachments',
            operationType: 'operationType',
            remark: 'remark',
            result: 'result',
            timestamp: 'timestamp',
            userId: 'userId',
        };
    }
    static types() {
        return {
            attachments: { 'type': 'array', 'itemType': PremiumGetProcessInstancesResponseBodyResultListOperationRecordsAttachments },
            operationType: 'string',
            remark: 'string',
            result: 'string',
            timestamp: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetProcessInstancesResponseBodyResultListOperationRecords = PremiumGetProcessInstancesResponseBodyResultListOperationRecords;
class PremiumGetProcessInstancesResponseBodyResultListTasks extends $tea.Model {
    static names() {
        return {
            activityId: 'activityId',
            createTimestamp: 'createTimestamp',
            finishTimestamp: 'finishTimestamp',
            result: 'result',
            status: 'status',
            taskId: 'taskId',
            userId: 'userId',
        };
    }
    static types() {
        return {
            activityId: 'string',
            createTimestamp: 'number',
            finishTimestamp: 'number',
            result: 'string',
            status: 'string',
            taskId: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetProcessInstancesResponseBodyResultListTasks = PremiumGetProcessInstancesResponseBodyResultListTasks;
class PremiumGetProcessInstancesResponseBodyResultList extends $tea.Model {
    static names() {
        return {
            attachedProcessInstanceIds: 'attachedProcessInstanceIds',
            businessId: 'businessId',
            createTime: 'createTime',
            createTimeInMills: 'createTimeInMills',
            finishTime: 'finishTime',
            finishTimeInMills: 'finishTimeInMills',
            formComponentValues: 'formComponentValues',
            mainProcessInstanceId: 'mainProcessInstanceId',
            operationRecords: 'operationRecords',
            originatorDeptId: 'originatorDeptId',
            originatorUserid: 'originatorUserid',
            processInstanceId: 'processInstanceId',
            result: 'result',
            status: 'status',
            tasks: 'tasks',
            title: 'title',
        };
    }
    static types() {
        return {
            attachedProcessInstanceIds: 'string',
            businessId: 'string',
            createTime: 'number',
            createTimeInMills: 'number',
            finishTime: 'number',
            finishTimeInMills: 'number',
            formComponentValues: { 'type': 'array', 'itemType': PremiumGetProcessInstancesResponseBodyResultListFormComponentValues },
            mainProcessInstanceId: 'string',
            operationRecords: { 'type': 'array', 'itemType': PremiumGetProcessInstancesResponseBodyResultListOperationRecords },
            originatorDeptId: 'string',
            originatorUserid: 'string',
            processInstanceId: 'string',
            result: 'string',
            status: 'string',
            tasks: { 'type': 'array', 'itemType': PremiumGetProcessInstancesResponseBodyResultListTasks },
            title: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetProcessInstancesResponseBodyResultList = PremiumGetProcessInstancesResponseBodyResultList;
class PremiumGetProcessInstancesResponseBodyResult extends $tea.Model {
    static names() {
        return {
            hasMore: 'hasMore',
            list: 'list',
            maxResults: 'maxResults',
            nextToken: 'nextToken',
        };
    }
    static types() {
        return {
            hasMore: 'boolean',
            list: { 'type': 'array', 'itemType': PremiumGetProcessInstancesResponseBodyResultList },
            maxResults: 'number',
            nextToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetProcessInstancesResponseBodyResult = PremiumGetProcessInstancesResponseBodyResult;
class PremiumGetSpaceWithDownloadAuthResponseBodyResult extends $tea.Model {
    static names() {
        return {
            spaceId: 'spaceId',
        };
    }
    static types() {
        return {
            spaceId: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetSpaceWithDownloadAuthResponseBodyResult = PremiumGetSpaceWithDownloadAuthResponseBodyResult;
class PremiumGetSubmittedInstancesResponseBodyResultList extends $tea.Model {
    static names() {
        return {
            appType: 'appType',
            formMassage: 'formMassage',
            originatorId: 'originatorId',
            originatorName: 'originatorName',
            originatorPhoto: 'originatorPhoto',
            processCreateTime: 'processCreateTime',
            processEndTime: 'processEndTime',
            processInstanceId: 'processInstanceId',
            processType: 'processType',
            result: 'result',
            status: 'status',
            title: 'title',
            url: 'url',
        };
    }
    static types() {
        return {
            appType: 'number',
            formMassage: 'string',
            originatorId: 'string',
            originatorName: 'string',
            originatorPhoto: 'string',
            processCreateTime: 'string',
            processEndTime: 'string',
            processInstanceId: 'string',
            processType: 'number',
            result: 'string',
            status: 'string',
            title: 'string',
            url: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetSubmittedInstancesResponseBodyResultList = PremiumGetSubmittedInstancesResponseBodyResultList;
class PremiumGetSubmittedInstancesResponseBodyResult extends $tea.Model {
    static names() {
        return {
            hasMore: 'hasMore',
            list: 'list',
        };
    }
    static types() {
        return {
            hasMore: 'boolean',
            list: { 'type': 'array', 'itemType': PremiumGetSubmittedInstancesResponseBodyResultList },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetSubmittedInstancesResponseBodyResult = PremiumGetSubmittedInstancesResponseBodyResult;
class PremiumGetTodoTasksResponseBodyResultList extends $tea.Model {
    static names() {
        return {
            activityId: 'activityId',
            appType: 'appType',
            formMassage: 'formMassage',
            originatorId: 'originatorId',
            originatorName: 'originatorName',
            originatorPhoto: 'originatorPhoto',
            processCreateTime: 'processCreateTime',
            processEndTime: 'processEndTime',
            processInstanceId: 'processInstanceId',
            processType: 'processType',
            status: 'status',
            taskId: 'taskId',
            title: 'title',
            url: 'url',
        };
    }
    static types() {
        return {
            activityId: 'string',
            appType: 'number',
            formMassage: 'string',
            originatorId: 'string',
            originatorName: 'string',
            originatorPhoto: 'string',
            processCreateTime: 'string',
            processEndTime: 'string',
            processInstanceId: 'string',
            processType: 'number',
            status: 'string',
            taskId: 'string',
            title: 'string',
            url: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetTodoTasksResponseBodyResultList = PremiumGetTodoTasksResponseBodyResultList;
class PremiumGetTodoTasksResponseBodyResult extends $tea.Model {
    static names() {
        return {
            hasMore: 'hasMore',
            list: 'list',
            success: 'success',
        };
    }
    static types() {
        return {
            hasMore: 'boolean',
            list: { 'type': 'array', 'itemType': PremiumGetTodoTasksResponseBodyResultList },
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGetTodoTasksResponseBodyResult = PremiumGetTodoTasksResponseBodyResult;
class PremiumGrantProcessInstanceForDownloadFileResponseBodyResult extends $tea.Model {
    static names() {
        return {
            downloadUri: 'downloadUri',
            fileId: 'fileId',
            spaceId: 'spaceId',
        };
    }
    static types() {
        return {
            downloadUri: 'string',
            fileId: 'string',
            spaceId: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumGrantProcessInstanceForDownloadFileResponseBodyResult = PremiumGrantProcessInstanceForDownloadFileResponseBodyResult;
class PremiumInsertOrUpdateDirResponseBodyResult extends $tea.Model {
    static names() {
        return {
            bizGroup: 'bizGroup',
            dirId: 'dirId',
        };
    }
    static types() {
        return {
            bizGroup: 'string',
            dirId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumInsertOrUpdateDirResponseBodyResult = PremiumInsertOrUpdateDirResponseBodyResult;
class PremiumQuerySchemaAndProcessByCodeListResponseBodyResult extends $tea.Model {
    static names() {
        return {
            appUuid: 'appUuid',
            bizCategoryId: 'bizCategoryId',
            createTime: 'createTime',
            creatorUserId: 'creatorUserId',
            formUuid: 'formUuid',
            icon: 'icon',
            memo: 'memo',
            modifierUserId: 'modifierUserId',
            modifyTime: 'modifyTime',
            name: 'name',
            processCode: 'processCode',
            processConfig: 'processConfig',
            processId: 'processId',
            schemaContent: 'schemaContent',
            status: 'status',
        };
    }
    static types() {
        return {
            appUuid: 'string',
            bizCategoryId: 'string',
            createTime: 'number',
            creatorUserId: 'string',
            formUuid: 'string',
            icon: 'string',
            memo: 'string',
            modifierUserId: 'string',
            modifyTime: 'number',
            name: 'string',
            processCode: 'string',
            processConfig: 'string',
            processId: 'number',
            schemaContent: 'string',
            status: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumQuerySchemaAndProcessByCodeListResponseBodyResult = PremiumQuerySchemaAndProcessByCodeListResponseBodyResult;
class PremiumQueryTodoTasksByManagerResponseBodyResultList extends $tea.Model {
    static names() {
        return {
            businessId: 'businessId',
            canRedirect: 'canRedirect',
            createTime: 'createTime',
            processCode: 'processCode',
            processInstanceId: 'processInstanceId',
            taskId: 'taskId',
            title: 'title',
            userId: 'userId',
        };
    }
    static types() {
        return {
            businessId: 'string',
            canRedirect: 'boolean',
            createTime: 'number',
            processCode: 'string',
            processInstanceId: 'string',
            taskId: 'number',
            title: 'string',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumQueryTodoTasksByManagerResponseBodyResultList = PremiumQueryTodoTasksByManagerResponseBodyResultList;
class PremiumQueryTodoTasksByManagerResponseBodyResult extends $tea.Model {
    static names() {
        return {
            hasMore: 'hasMore',
            list: 'list',
        };
    }
    static types() {
        return {
            hasMore: 'boolean',
            list: { 'type': 'array', 'itemType': PremiumQueryTodoTasksByManagerResponseBodyResultList },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumQueryTodoTasksByManagerResponseBodyResult = PremiumQueryTodoTasksByManagerResponseBodyResult;
class PremiumRedirectTasksByManagerResponseBodyResultRedirectResults extends $tea.Model {
    static names() {
        return {
            errorMsg: 'errorMsg',
            success: 'success',
            taskId: 'taskId',
        };
    }
    static types() {
        return {
            errorMsg: 'string',
            success: 'boolean',
            taskId: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumRedirectTasksByManagerResponseBodyResultRedirectResults = PremiumRedirectTasksByManagerResponseBodyResultRedirectResults;
class PremiumRedirectTasksByManagerResponseBodyResult extends $tea.Model {
    static names() {
        return {
            failCount: 'failCount',
            redirectResults: 'redirectResults',
            totalCount: 'totalCount',
        };
    }
    static types() {
        return {
            failCount: 'number',
            redirectResults: { 'type': 'array', 'itemType': PremiumRedirectTasksByManagerResponseBodyResultRedirectResults },
            totalCount: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumRedirectTasksByManagerResponseBodyResult = PremiumRedirectTasksByManagerResponseBodyResult;
class PremiumSaveFormResponseBodyResult extends $tea.Model {
    static names() {
        return {
            processCode: 'processCode',
        };
    }
    static types() {
        return {
            processCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveFormResponseBodyResult = PremiumSaveFormResponseBodyResult;
class PremiumSaveFormInstanceRequestFormComponentValueListDetailsDetails extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            componentType: 'componentType',
            extValue: 'extValue',
            id: 'id',
            name: 'name',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            componentType: 'string',
            extValue: 'string',
            id: 'string',
            name: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveFormInstanceRequestFormComponentValueListDetailsDetails = PremiumSaveFormInstanceRequestFormComponentValueListDetailsDetails;
class PremiumSaveFormInstanceRequestFormComponentValueListDetails extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            details: 'details',
            extValue: 'extValue',
            id: 'id',
            name: 'name',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            details: { 'type': 'array', 'itemType': PremiumSaveFormInstanceRequestFormComponentValueListDetailsDetails },
            extValue: 'string',
            id: 'string',
            name: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveFormInstanceRequestFormComponentValueListDetails = PremiumSaveFormInstanceRequestFormComponentValueListDetails;
class PremiumSaveFormInstanceRequestFormComponentValueList extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            componentType: 'componentType',
            details: 'details',
            extValue: 'extValue',
            id: 'id',
            name: 'name',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            componentType: 'string',
            details: { 'type': 'array', 'itemType': PremiumSaveFormInstanceRequestFormComponentValueListDetails },
            extValue: 'string',
            id: 'string',
            name: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveFormInstanceRequestFormComponentValueList = PremiumSaveFormInstanceRequestFormComponentValueList;
class PremiumSaveIntegratedProcessRequestProcessFeatureConfigFeaturesCallback extends $tea.Model {
    static names() {
        return {
            apiKey: 'apiKey',
            appUuid: 'appUuid',
            version: 'version',
        };
    }
    static types() {
        return {
            apiKey: 'string',
            appUuid: 'string',
            version: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedProcessRequestProcessFeatureConfigFeaturesCallback = PremiumSaveIntegratedProcessRequestProcessFeatureConfigFeaturesCallback;
class PremiumSaveIntegratedProcessRequestProcessFeatureConfigFeatures extends $tea.Model {
    static names() {
        return {
            callback: 'callback',
            mobileUrl: 'mobileUrl',
            name: 'name',
            pcUrl: 'pcUrl',
            runType: 'runType',
        };
    }
    static types() {
        return {
            callback: PremiumSaveIntegratedProcessRequestProcessFeatureConfigFeaturesCallback,
            mobileUrl: 'string',
            name: 'string',
            pcUrl: 'string',
            runType: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedProcessRequestProcessFeatureConfigFeatures = PremiumSaveIntegratedProcessRequestProcessFeatureConfigFeatures;
class PremiumSaveIntegratedProcessRequestProcessFeatureConfig extends $tea.Model {
    static names() {
        return {
            features: 'features',
        };
    }
    static types() {
        return {
            features: { 'type': 'array', 'itemType': PremiumSaveIntegratedProcessRequestProcessFeatureConfigFeatures },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedProcessRequestProcessFeatureConfig = PremiumSaveIntegratedProcessRequestProcessFeatureConfig;
class PremiumSaveIntegratedProcessRequestTemplateConfig extends $tea.Model {
    static names() {
        return {
            createInstanceMobileUrl: 'createInstanceMobileUrl',
            createInstancePcUrl: 'createInstancePcUrl',
            disableSendCard: 'disableSendCard',
            hidden: 'hidden',
            templateEditUrl: 'templateEditUrl',
        };
    }
    static types() {
        return {
            createInstanceMobileUrl: 'string',
            createInstancePcUrl: 'string',
            disableSendCard: 'boolean',
            hidden: 'boolean',
            templateEditUrl: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedProcessRequestTemplateConfig = PremiumSaveIntegratedProcessRequestTemplateConfig;
class PremiumSaveIntegratedProcessResponseBodyResult extends $tea.Model {
    static names() {
        return {
            processCode: 'processCode',
        };
    }
    static types() {
        return {
            processCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedProcessResponseBodyResult = PremiumSaveIntegratedProcessResponseBodyResult;
class PremiumSaveIntegratedProcessInstanceRequestFeatureConfigFeaturesCallback extends $tea.Model {
    static names() {
        return {
            apiKey: 'apiKey',
            appUuid: 'appUuid',
            version: 'version',
        };
    }
    static types() {
        return {
            apiKey: 'string',
            appUuid: 'string',
            version: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedProcessInstanceRequestFeatureConfigFeaturesCallback = PremiumSaveIntegratedProcessInstanceRequestFeatureConfigFeaturesCallback;
class PremiumSaveIntegratedProcessInstanceRequestFeatureConfigFeatures extends $tea.Model {
    static names() {
        return {
            callback: 'callback',
            config: 'config',
            mobileUrl: 'mobileUrl',
            name: 'name',
            pcUrl: 'pcUrl',
            runType: 'runType',
        };
    }
    static types() {
        return {
            callback: PremiumSaveIntegratedProcessInstanceRequestFeatureConfigFeaturesCallback,
            config: 'string',
            mobileUrl: 'string',
            name: 'string',
            pcUrl: 'string',
            runType: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedProcessInstanceRequestFeatureConfigFeatures = PremiumSaveIntegratedProcessInstanceRequestFeatureConfigFeatures;
class PremiumSaveIntegratedProcessInstanceRequestFeatureConfig extends $tea.Model {
    static names() {
        return {
            features: 'features',
        };
    }
    static types() {
        return {
            features: { 'type': 'array', 'itemType': PremiumSaveIntegratedProcessInstanceRequestFeatureConfigFeatures },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedProcessInstanceRequestFeatureConfig = PremiumSaveIntegratedProcessInstanceRequestFeatureConfig;
class PremiumSaveIntegratedProcessInstanceRequestFormComponentValueList extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            componentType: 'componentType',
            extValue: 'extValue',
            id: 'id',
            name: 'name',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            componentType: 'string',
            extValue: 'string',
            id: 'string',
            name: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedProcessInstanceRequestFormComponentValueList = PremiumSaveIntegratedProcessInstanceRequestFormComponentValueList;
class PremiumSaveIntegratedProcessInstanceRequestNotifiers extends $tea.Model {
    static names() {
        return {
            position: 'position',
            userid: 'userid',
        };
    }
    static types() {
        return {
            position: 'string',
            userid: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedProcessInstanceRequestNotifiers = PremiumSaveIntegratedProcessInstanceRequestNotifiers;
class PremiumSaveIntegratedProcessInstanceResponseBodyResult extends $tea.Model {
    static names() {
        return {
            processInstanceId: 'processInstanceId',
        };
    }
    static types() {
        return {
            processInstanceId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedProcessInstanceResponseBodyResult = PremiumSaveIntegratedProcessInstanceResponseBodyResult;
class PremiumSaveIntegratedTaskRequestFeatureConfigFeaturesCallback extends $tea.Model {
    static names() {
        return {
            apiKey: 'apiKey',
            appUuid: 'appUuid',
            version: 'version',
        };
    }
    static types() {
        return {
            apiKey: 'string',
            appUuid: 'string',
            version: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedTaskRequestFeatureConfigFeaturesCallback = PremiumSaveIntegratedTaskRequestFeatureConfigFeaturesCallback;
class PremiumSaveIntegratedTaskRequestFeatureConfigFeatures extends $tea.Model {
    static names() {
        return {
            callback: 'callback',
            config: 'config',
            mobileUrl: 'mobileUrl',
            name: 'name',
            pcUrl: 'pcUrl',
            runType: 'runType',
        };
    }
    static types() {
        return {
            callback: PremiumSaveIntegratedTaskRequestFeatureConfigFeaturesCallback,
            config: 'string',
            mobileUrl: 'string',
            name: 'string',
            pcUrl: 'string',
            runType: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedTaskRequestFeatureConfigFeatures = PremiumSaveIntegratedTaskRequestFeatureConfigFeatures;
class PremiumSaveIntegratedTaskRequestFeatureConfig extends $tea.Model {
    static names() {
        return {
            features: 'features',
        };
    }
    static types() {
        return {
            features: { 'type': 'array', 'itemType': PremiumSaveIntegratedTaskRequestFeatureConfigFeatures },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedTaskRequestFeatureConfig = PremiumSaveIntegratedTaskRequestFeatureConfig;
class PremiumSaveIntegratedTaskRequestTaskConfig extends $tea.Model {
    static names() {
        return {
            disableSendCard: 'disableSendCard',
        };
    }
    static types() {
        return {
            disableSendCard: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedTaskRequestTaskConfig = PremiumSaveIntegratedTaskRequestTaskConfig;
class PremiumSaveIntegratedTaskRequestTasks extends $tea.Model {
    static names() {
        return {
            customData: 'customData',
            dueTimestamp: 'dueTimestamp',
            url: 'url',
            userId: 'userId',
        };
    }
    static types() {
        return {
            customData: 'string',
            dueTimestamp: 'number',
            url: 'string',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedTaskRequestTasks = PremiumSaveIntegratedTaskRequestTasks;
class PremiumSaveIntegratedTaskResponseBodyResult extends $tea.Model {
    static names() {
        return {
            taskId: 'taskId',
            userId: 'userId',
        };
    }
    static types() {
        return {
            taskId: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumSaveIntegratedTaskResponseBodyResult = PremiumSaveIntegratedTaskResponseBodyResult;
class PremiumUpdateFormInstanceRequestFormComponentValueListDetailsDetails extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            componentType: 'componentType',
            extValue: 'extValue',
            id: 'id',
            name: 'name',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            componentType: 'string',
            extValue: 'string',
            id: 'string',
            name: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumUpdateFormInstanceRequestFormComponentValueListDetailsDetails = PremiumUpdateFormInstanceRequestFormComponentValueListDetailsDetails;
class PremiumUpdateFormInstanceRequestFormComponentValueListDetails extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            details: 'details',
            extValue: 'extValue',
            id: 'id',
            name: 'name',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            details: { 'type': 'array', 'itemType': PremiumUpdateFormInstanceRequestFormComponentValueListDetailsDetails },
            extValue: 'string',
            id: 'string',
            name: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumUpdateFormInstanceRequestFormComponentValueListDetails = PremiumUpdateFormInstanceRequestFormComponentValueListDetails;
class PremiumUpdateFormInstanceRequestFormComponentValueList extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            componentType: 'componentType',
            details: 'details',
            extValue: 'extValue',
            id: 'id',
            name: 'name',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            componentType: 'string',
            details: { 'type': 'array', 'itemType': PremiumUpdateFormInstanceRequestFormComponentValueListDetails },
            extValue: 'string',
            id: 'string',
            name: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumUpdateFormInstanceRequestFormComponentValueList = PremiumUpdateFormInstanceRequestFormComponentValueList;
class PremiumUpdateProcessInstanceVariablesRequestVariables extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            extValue: 'extValue',
            id: 'id',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            extValue: 'string',
            id: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PremiumUpdateProcessInstanceVariablesRequestVariables = PremiumUpdateProcessInstanceVariablesRequestVariables;
class ProcessForecastRequestFormComponentValuesDetailsDetails extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            componentType: 'componentType',
            extValue: 'extValue',
            id: 'id',
            name: 'name',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            componentType: 'string',
            extValue: 'string',
            id: 'string',
            name: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ProcessForecastRequestFormComponentValuesDetailsDetails = ProcessForecastRequestFormComponentValuesDetailsDetails;
class ProcessForecastRequestFormComponentValuesDetails extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            details: 'details',
            extValue: 'extValue',
            id: 'id',
            name: 'name',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            details: { 'type': 'array', 'itemType': ProcessForecastRequestFormComponentValuesDetailsDetails },
            extValue: 'string',
            id: 'string',
            name: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ProcessForecastRequestFormComponentValuesDetails = ProcessForecastRequestFormComponentValuesDetails;
class ProcessForecastRequestFormComponentValues extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            componentType: 'componentType',
            details: 'details',
            extValue: 'extValue',
            id: 'id',
            name: 'name',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            componentType: 'string',
            details: { 'type': 'array', 'itemType': ProcessForecastRequestFormComponentValuesDetails },
            extValue: 'string',
            id: 'string',
            name: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ProcessForecastRequestFormComponentValues = ProcessForecastRequestFormComponentValues;
class ProcessForecastResponseBodyResultWorkflowActivityRulesActivityActioners extends $tea.Model {
    static names() {
        return {
            avatar: 'avatar',
            name: 'name',
            userId: 'userId',
        };
    }
    static types() {
        return {
            avatar: 'string',
            name: 'string',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ProcessForecastResponseBodyResultWorkflowActivityRulesActivityActioners = ProcessForecastResponseBodyResultWorkflowActivityRulesActivityActioners;
class ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActorActorSelectionRangeApprovals extends $tea.Model {
    static names() {
        return {
            userName: 'userName',
            workNo: 'workNo',
        };
    }
    static types() {
        return {
            userName: 'string',
            workNo: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActorActorSelectionRangeApprovals = ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActorActorSelectionRangeApprovals;
class ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActorActorSelectionRangeLabels extends $tea.Model {
    static names() {
        return {
            labelNames: 'labelNames',
            labels: 'labels',
        };
    }
    static types() {
        return {
            labelNames: 'string',
            labels: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActorActorSelectionRangeLabels = ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActorActorSelectionRangeLabels;
class ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActorActorSelectionRange extends $tea.Model {
    static names() {
        return {
            approvals: 'approvals',
            labels: 'labels',
        };
    }
    static types() {
        return {
            approvals: { 'type': 'array', 'itemType': ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActorActorSelectionRangeApprovals },
            labels: { 'type': 'array', 'itemType': ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActorActorSelectionRangeLabels },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActorActorSelectionRange = ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActorActorSelectionRange;
class ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActor extends $tea.Model {
    static names() {
        return {
            actorActivateType: 'actorActivateType',
            actorKey: 'actorKey',
            actorSelectionRange: 'actorSelectionRange',
            actorSelectionType: 'actorSelectionType',
            actorType: 'actorType',
            allowedMulti: 'allowedMulti',
            approvalMethod: 'approvalMethod',
            approvalType: 'approvalType',
            required: 'required',
        };
    }
    static types() {
        return {
            actorActivateType: 'string',
            actorKey: 'string',
            actorSelectionRange: ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActorActorSelectionRange,
            actorSelectionType: 'string',
            actorType: 'string',
            allowedMulti: 'boolean',
            approvalMethod: 'string',
            approvalType: 'string',
            required: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActor = ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActor;
class ProcessForecastResponseBodyResultWorkflowActivityRules extends $tea.Model {
    static names() {
        return {
            activityActioners: 'activityActioners',
            activityId: 'activityId',
            activityName: 'activityName',
            activityType: 'activityType',
            isTargetSelect: 'isTargetSelect',
            prevActivityId: 'prevActivityId',
            workflowActor: 'workflowActor',
        };
    }
    static types() {
        return {
            activityActioners: { 'type': 'array', 'itemType': ProcessForecastResponseBodyResultWorkflowActivityRulesActivityActioners },
            activityId: 'string',
            activityName: 'string',
            activityType: 'string',
            isTargetSelect: 'boolean',
            prevActivityId: 'string',
            workflowActor: ProcessForecastResponseBodyResultWorkflowActivityRulesWorkflowActor,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ProcessForecastResponseBodyResultWorkflowActivityRules = ProcessForecastResponseBodyResultWorkflowActivityRules;
class ProcessForecastResponseBodyResultWorkflowForecastNodes extends $tea.Model {
    static names() {
        return {
            activityId: 'activityId',
            outId: 'outId',
        };
    }
    static types() {
        return {
            activityId: 'string',
            outId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ProcessForecastResponseBodyResultWorkflowForecastNodes = ProcessForecastResponseBodyResultWorkflowForecastNodes;
class ProcessForecastResponseBodyResult extends $tea.Model {
    static names() {
        return {
            isForecastSuccess: 'isForecastSuccess',
            isStaticWorkflow: 'isStaticWorkflow',
            processCode: 'processCode',
            processId: 'processId',
            userId: 'userId',
            workflowActivityRules: 'workflowActivityRules',
            workflowForecastNodes: 'workflowForecastNodes',
        };
    }
    static types() {
        return {
            isForecastSuccess: 'boolean',
            isStaticWorkflow: 'boolean',
            processCode: 'string',
            processId: 'number',
            userId: 'string',
            workflowActivityRules: { 'type': 'array', 'itemType': ProcessForecastResponseBodyResultWorkflowActivityRules },
            workflowForecastNodes: { 'type': 'array', 'itemType': ProcessForecastResponseBodyResultWorkflowForecastNodes },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.ProcessForecastResponseBodyResult = ProcessForecastResponseBodyResult;
class QueryAllFormInstancesResponseBodyResultValuesFormInstDataList extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            componentType: 'componentType',
            extendValue: 'extendValue',
            key: 'key',
            label: 'label',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            componentType: 'string',
            extendValue: 'string',
            key: 'string',
            label: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryAllFormInstancesResponseBodyResultValuesFormInstDataList = QueryAllFormInstancesResponseBodyResultValuesFormInstDataList;
class QueryAllFormInstancesResponseBodyResultValues extends $tea.Model {
    static names() {
        return {
            appUuid: 'appUuid',
            attributes: 'attributes',
            createTimestamp: 'createTimestamp',
            creator: 'creator',
            formCode: 'formCode',
            formInstDataList: 'formInstDataList',
            formInstanceId: 'formInstanceId',
            modifier: 'modifier',
            modifyTimestamp: 'modifyTimestamp',
            outBizCode: 'outBizCode',
            outInstanceId: 'outInstanceId',
            title: 'title',
        };
    }
    static types() {
        return {
            appUuid: 'string',
            attributes: { 'type': 'map', 'keyType': 'string', 'valueType': 'any' },
            createTimestamp: 'number',
            creator: 'string',
            formCode: 'string',
            formInstDataList: { 'type': 'array', 'itemType': QueryAllFormInstancesResponseBodyResultValuesFormInstDataList },
            formInstanceId: 'string',
            modifier: 'string',
            modifyTimestamp: 'number',
            outBizCode: 'string',
            outInstanceId: 'string',
            title: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryAllFormInstancesResponseBodyResultValues = QueryAllFormInstancesResponseBodyResultValues;
class QueryAllFormInstancesResponseBodyResult extends $tea.Model {
    static names() {
        return {
            hasMore: 'hasMore',
            maxResults: 'maxResults',
            nextToken: 'nextToken',
            values: 'values',
        };
    }
    static types() {
        return {
            hasMore: 'boolean',
            maxResults: 'number',
            nextToken: 'string',
            values: { 'type': 'array', 'itemType': QueryAllFormInstancesResponseBodyResultValues },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryAllFormInstancesResponseBodyResult = QueryAllFormInstancesResponseBodyResult;
class QueryAllProcessInstancesResponseBodyResultListFormComponentValues extends $tea.Model {
    static names() {
        return {
            extValue: 'extValue',
            id: 'id',
            name: 'name',
            value: 'value',
        };
    }
    static types() {
        return {
            extValue: 'string',
            id: 'string',
            name: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryAllProcessInstancesResponseBodyResultListFormComponentValues = QueryAllProcessInstancesResponseBodyResultListFormComponentValues;
class QueryAllProcessInstancesResponseBodyResultListOperationRecordsAttachments extends $tea.Model {
    static names() {
        return {
            fileId: 'fileId',
            fileName: 'fileName',
            fileSize: 'fileSize',
            fileType: 'fileType',
        };
    }
    static types() {
        return {
            fileId: 'string',
            fileName: 'string',
            fileSize: 'string',
            fileType: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryAllProcessInstancesResponseBodyResultListOperationRecordsAttachments = QueryAllProcessInstancesResponseBodyResultListOperationRecordsAttachments;
class QueryAllProcessInstancesResponseBodyResultListOperationRecords extends $tea.Model {
    static names() {
        return {
            attachments: 'attachments',
            operationType: 'operationType',
            remark: 'remark',
            result: 'result',
            timestamp: 'timestamp',
            userId: 'userId',
        };
    }
    static types() {
        return {
            attachments: { 'type': 'array', 'itemType': QueryAllProcessInstancesResponseBodyResultListOperationRecordsAttachments },
            operationType: 'string',
            remark: 'string',
            result: 'string',
            timestamp: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryAllProcessInstancesResponseBodyResultListOperationRecords = QueryAllProcessInstancesResponseBodyResultListOperationRecords;
class QueryAllProcessInstancesResponseBodyResultListTasks extends $tea.Model {
    static names() {
        return {
            activityId: 'activityId',
            createTimestamp: 'createTimestamp',
            finishTimestamp: 'finishTimestamp',
            result: 'result',
            status: 'status',
            taskId: 'taskId',
            userId: 'userId',
        };
    }
    static types() {
        return {
            activityId: 'string',
            createTimestamp: 'number',
            finishTimestamp: 'number',
            result: 'string',
            status: 'string',
            taskId: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryAllProcessInstancesResponseBodyResultListTasks = QueryAllProcessInstancesResponseBodyResultListTasks;
class QueryAllProcessInstancesResponseBodyResultList extends $tea.Model {
    static names() {
        return {
            attachedProcessInstanceIds: 'attachedProcessInstanceIds',
            businessId: 'businessId',
            createTime: 'createTime',
            finishTime: 'finishTime',
            formComponentValues: 'formComponentValues',
            mainProcessInstanceId: 'mainProcessInstanceId',
            operationRecords: 'operationRecords',
            originatorDeptId: 'originatorDeptId',
            originatorUserid: 'originatorUserid',
            processInstanceId: 'processInstanceId',
            result: 'result',
            status: 'status',
            tasks: 'tasks',
            title: 'title',
        };
    }
    static types() {
        return {
            attachedProcessInstanceIds: 'string',
            businessId: 'string',
            createTime: 'number',
            finishTime: 'number',
            formComponentValues: { 'type': 'array', 'itemType': QueryAllProcessInstancesResponseBodyResultListFormComponentValues },
            mainProcessInstanceId: 'string',
            operationRecords: { 'type': 'array', 'itemType': QueryAllProcessInstancesResponseBodyResultListOperationRecords },
            originatorDeptId: 'string',
            originatorUserid: 'string',
            processInstanceId: 'string',
            result: 'string',
            status: 'string',
            tasks: { 'type': 'array', 'itemType': QueryAllProcessInstancesResponseBodyResultListTasks },
            title: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryAllProcessInstancesResponseBodyResultList = QueryAllProcessInstancesResponseBodyResultList;
class QueryAllProcessInstancesResponseBodyResult extends $tea.Model {
    static names() {
        return {
            hasMore: 'hasMore',
            list: 'list',
            maxResults: 'maxResults',
            nextToken: 'nextToken',
        };
    }
    static types() {
        return {
            hasMore: 'boolean',
            list: { 'type': 'array', 'itemType': QueryAllProcessInstancesResponseBodyResultList },
            maxResults: 'number',
            nextToken: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryAllProcessInstancesResponseBodyResult = QueryAllProcessInstancesResponseBodyResult;
class QueryFormByBizTypeResponseBodyResult extends $tea.Model {
    static names() {
        return {
            appType: 'appType',
            appUuid: 'appUuid',
            bizType: 'bizType',
            content: 'content',
            createTime: 'createTime',
            creator: 'creator',
            formCode: 'formCode',
            formUuid: 'formUuid',
            memo: 'memo',
            modifedTime: 'modifedTime',
            name: 'name',
            ownerId: 'ownerId',
            status: 'status',
        };
    }
    static types() {
        return {
            appType: 'number',
            appUuid: 'string',
            bizType: 'string',
            content: 'string',
            createTime: 'number',
            creator: 'string',
            formCode: 'string',
            formUuid: 'string',
            memo: 'string',
            modifedTime: 'number',
            name: 'string',
            ownerId: 'string',
            status: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryFormByBizTypeResponseBodyResult = QueryFormByBizTypeResponseBodyResult;
class QueryFormInstanceResponseBodyFormInstDataList extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            componentType: 'componentType',
            extendValue: 'extendValue',
            key: 'key',
            label: 'label',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            componentType: 'string',
            extendValue: 'string',
            key: 'string',
            label: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryFormInstanceResponseBodyFormInstDataList = QueryFormInstanceResponseBodyFormInstDataList;
class QueryIntegratedTodoTaskResponseBodyResultList extends $tea.Model {
    static names() {
        return {
            activityId: 'activityId',
            createTime: 'createTime',
            finishTime: 'finishTime',
            processInstanceId: 'processInstanceId',
            result: 'result',
            status: 'status',
            taskId: 'taskId',
            userId: 'userId',
        };
    }
    static types() {
        return {
            activityId: 'string',
            createTime: 'string',
            finishTime: 'string',
            processInstanceId: 'string',
            result: 'string',
            status: 'string',
            taskId: 'number',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryIntegratedTodoTaskResponseBodyResultList = QueryIntegratedTodoTaskResponseBodyResultList;
class QueryIntegratedTodoTaskResponseBodyResult extends $tea.Model {
    static names() {
        return {
            hasMore: 'hasMore',
            list: 'list',
        };
    }
    static types() {
        return {
            hasMore: 'boolean',
            list: { 'type': 'array', 'itemType': QueryIntegratedTodoTaskResponseBodyResultList },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryIntegratedTodoTaskResponseBodyResult = QueryIntegratedTodoTaskResponseBodyResult;
class QueryProcessByBizCategoryIdResponseBodyResult extends $tea.Model {
    static names() {
        return {
            description: 'description',
            name: 'name',
            processCode: 'processCode',
            status: 'status',
        };
    }
    static types() {
        return {
            description: 'string',
            name: 'string',
            processCode: 'string',
            status: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QueryProcessByBizCategoryIdResponseBodyResult = QueryProcessByBizCategoryIdResponseBodyResult;
class QuerySchemaAndProcessResponseBodyResult extends $tea.Model {
    static names() {
        return {
            appType: 'appType',
            content: 'content',
            handSignEnable: 'handSignEnable',
            iconUrl: 'iconUrl',
            name: 'name',
            processConfig: 'processConfig',
        };
    }
    static types() {
        return {
            appType: 'number',
            content: 'string',
            handSignEnable: 'string',
            iconUrl: 'string',
            name: 'string',
            processConfig: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QuerySchemaAndProcessResponseBodyResult = QuerySchemaAndProcessResponseBodyResult;
class QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsChildrenProps extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            id: 'id',
            label: 'label',
            options: 'options',
            required: 'required',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            id: 'string',
            label: 'string',
            options: { 'type': 'array', 'itemType': 'string' },
            required: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsChildrenProps = QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsChildrenProps;
class QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsChildren extends $tea.Model {
    static names() {
        return {
            componentName: 'componentName',
            props: 'props',
        };
    }
    static types() {
        return {
            componentName: 'string',
            props: QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsChildrenProps,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsChildren = QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsChildren;
class QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsBehaviorLinkageTargets extends $tea.Model {
    static names() {
        return {
            behavior: 'behavior',
            fieldId: 'fieldId',
        };
    }
    static types() {
        return {
            behavior: 'string',
            fieldId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsBehaviorLinkageTargets = QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsBehaviorLinkageTargets;
class QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsBehaviorLinkage extends $tea.Model {
    static names() {
        return {
            targets: 'targets',
            value: 'value',
        };
    }
    static types() {
        return {
            targets: { 'type': 'array', 'itemType': QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsBehaviorLinkageTargets },
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsBehaviorLinkage = QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsBehaviorLinkage;
class QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsObjOptions extends $tea.Model {
    static names() {
        return {
            value: 'value',
        };
    }
    static types() {
        return {
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsObjOptions = QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsObjOptions;
class QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsPush extends $tea.Model {
    static names() {
        return {
            attendanceRule: 'attendanceRule',
            pushSwitch: 'pushSwitch',
            pushTag: 'pushTag',
        };
    }
    static types() {
        return {
            attendanceRule: 'number',
            pushSwitch: 'number',
            pushTag: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsPush = QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsPush;
class QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsStatField extends $tea.Model {
    static names() {
        return {
            id: 'id',
            label: 'label',
            unit: 'unit',
            upper: 'upper',
        };
    }
    static types() {
        return {
            id: 'string',
            label: 'string',
            unit: 'string',
            upper: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsStatField = QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsStatField;
class QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsProps extends $tea.Model {
    static names() {
        return {
            actionName: 'actionName',
            align: 'align',
            appId: 'appId',
            asyncCondition: 'asyncCondition',
            attendTypeLabel: 'attendTypeLabel',
            behaviorLinkage: 'behaviorLinkage',
            bizAlias: 'bizAlias',
            bizType: 'bizType',
            childFieldVisible: 'childFieldVisible',
            choice: 'choice',
            commonBizType: 'commonBizType',
            disabled: 'disabled',
            duration: 'duration',
            durationLabel: 'durationLabel',
            eSign: 'eSign',
            extract: 'extract',
            fieldsInfo: 'fieldsInfo',
            format: 'format',
            formula: 'formula',
            hidden: 'hidden',
            hiddenInApprovalDetail: 'hiddenInApprovalDetail',
            hideLabel: 'hideLabel',
            holidayOptions: 'holidayOptions',
            id: 'id',
            label: 'label',
            labelEditableFreeze: 'labelEditableFreeze',
            link: 'link',
            mainTitle: 'mainTitle',
            notPrint: 'notPrint',
            notUpper: 'notUpper',
            objOptions: 'objOptions',
            options: 'options',
            payEnable: 'payEnable',
            placeholder: 'placeholder',
            push: 'push',
            pushToAttendance: 'pushToAttendance',
            pushToCalendar: 'pushToCalendar',
            required: 'required',
            requiredEditableFreeze: 'requiredEditableFreeze',
            showAttendOptions: 'showAttendOptions',
            staffStatusEnabled: 'staffStatusEnabled',
            statField: 'statField',
            tableViewMode: 'tableViewMode',
            unit: 'unit',
            useCalendar: 'useCalendar',
            verticalPrint: 'verticalPrint',
        };
    }
    static types() {
        return {
            actionName: 'string',
            align: 'string',
            appId: 'number',
            asyncCondition: 'boolean',
            attendTypeLabel: 'string',
            behaviorLinkage: { 'type': 'array', 'itemType': QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsBehaviorLinkage },
            bizAlias: 'string',
            bizType: 'string',
            childFieldVisible: { 'type': 'map', 'keyType': 'string', 'valueType': 'boolean' },
            choice: 'number',
            commonBizType: 'string',
            disabled: 'boolean',
            duration: 'boolean',
            durationLabel: 'string',
            eSign: 'boolean',
            extract: 'boolean',
            fieldsInfo: 'string',
            format: 'string',
            formula: 'string',
            hidden: 'boolean',
            hiddenInApprovalDetail: 'boolean',
            hideLabel: 'boolean',
            holidayOptions: { 'type': 'array', 'itemType': { 'type': 'map', 'keyType': 'string', 'valueType': 'string' } },
            id: 'string',
            label: 'string',
            labelEditableFreeze: 'boolean',
            link: 'string',
            mainTitle: 'string',
            notPrint: 'string',
            notUpper: 'string',
            objOptions: { 'type': 'array', 'itemType': QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsObjOptions },
            options: { 'type': 'array', 'itemType': 'string' },
            payEnable: 'boolean',
            placeholder: 'string',
            push: QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsPush,
            pushToAttendance: 'boolean',
            pushToCalendar: 'number',
            required: 'boolean',
            requiredEditableFreeze: 'boolean',
            showAttendOptions: 'boolean',
            staffStatusEnabled: 'boolean',
            statField: { 'type': 'array', 'itemType': QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsPropsStatField },
            tableViewMode: 'string',
            unit: 'string',
            useCalendar: 'boolean',
            verticalPrint: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsProps = QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsProps;
class QuerySchemaByProcessCodeResponseBodyResultSchemaContentItems extends $tea.Model {
    static names() {
        return {
            children: 'children',
            componentName: 'componentName',
            props: 'props',
        };
    }
    static types() {
        return {
            children: { 'type': 'array', 'itemType': QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsChildren },
            componentName: 'string',
            props: QuerySchemaByProcessCodeResponseBodyResultSchemaContentItemsProps,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContentItems = QuerySchemaByProcessCodeResponseBodyResultSchemaContentItems;
class QuerySchemaByProcessCodeResponseBodyResultSchemaContent extends $tea.Model {
    static names() {
        return {
            icon: 'icon',
            items: 'items',
            title: 'title',
        };
    }
    static types() {
        return {
            icon: 'string',
            items: { 'type': 'array', 'itemType': QuerySchemaByProcessCodeResponseBodyResultSchemaContentItems },
            title: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QuerySchemaByProcessCodeResponseBodyResultSchemaContent = QuerySchemaByProcessCodeResponseBodyResultSchemaContent;
class QuerySchemaByProcessCodeResponseBodyResult extends $tea.Model {
    static names() {
        return {
            appType: 'appType',
            appUuid: 'appUuid',
            bizType: 'bizType',
            creatorUserId: 'creatorUserId',
            customSetting: 'customSetting',
            engineType: 'engineType',
            formCode: 'formCode',
            formUuid: 'formUuid',
            gmtCreate: 'gmtCreate',
            gmtModified: 'gmtModified',
            icon: 'icon',
            listOrder: 'listOrder',
            memo: 'memo',
            name: 'name',
            ownerIdType: 'ownerIdType',
            procType: 'procType',
            schemaContent: 'schemaContent',
            status: 'status',
            visibleRange: 'visibleRange',
        };
    }
    static types() {
        return {
            appType: 'number',
            appUuid: 'string',
            bizType: 'string',
            creatorUserId: 'string',
            customSetting: 'string',
            engineType: 'number',
            formCode: 'string',
            formUuid: 'string',
            gmtCreate: 'string',
            gmtModified: 'string',
            icon: 'string',
            listOrder: 'number',
            memo: 'string',
            name: 'string',
            ownerIdType: 'string',
            procType: 'string',
            schemaContent: QuerySchemaByProcessCodeResponseBodyResultSchemaContent,
            status: 'string',
            visibleRange: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.QuerySchemaByProcessCodeResponseBodyResult = QuerySchemaByProcessCodeResponseBodyResult;
class RedirectWorkflowTaskRequestFileAttachments extends $tea.Model {
    static names() {
        return {
            fileId: 'fileId',
            fileName: 'fileName',
            fileSize: 'fileSize',
            fileType: 'fileType',
            spaceId: 'spaceId',
        };
    }
    static types() {
        return {
            fileId: 'string',
            fileName: 'string',
            fileSize: 'string',
            fileType: 'string',
            spaceId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.RedirectWorkflowTaskRequestFileAttachments = RedirectWorkflowTaskRequestFileAttachments;
class RedirectWorkflowTaskRequestFile extends $tea.Model {
    static names() {
        return {
            attachments: 'attachments',
            photos: 'photos',
        };
    }
    static types() {
        return {
            attachments: { 'type': 'array', 'itemType': RedirectWorkflowTaskRequestFileAttachments },
            photos: { 'type': 'array', 'itemType': 'string' },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.RedirectWorkflowTaskRequestFile = RedirectWorkflowTaskRequestFile;
class SaveIntegratedInstanceRequestFeatureConfigFeaturesCallback extends $tea.Model {
    static names() {
        return {
            apiKey: 'apiKey',
            appUuid: 'appUuid',
            version: 'version',
        };
    }
    static types() {
        return {
            apiKey: 'string',
            appUuid: 'string',
            version: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.SaveIntegratedInstanceRequestFeatureConfigFeaturesCallback = SaveIntegratedInstanceRequestFeatureConfigFeaturesCallback;
class SaveIntegratedInstanceRequestFeatureConfigFeatures extends $tea.Model {
    static names() {
        return {
            callback: 'callback',
            config: 'config',
            mobileUrl: 'mobileUrl',
            name: 'name',
            pcUrl: 'pcUrl',
            runType: 'runType',
        };
    }
    static types() {
        return {
            callback: SaveIntegratedInstanceRequestFeatureConfigFeaturesCallback,
            config: 'string',
            mobileUrl: 'string',
            name: 'string',
            pcUrl: 'string',
            runType: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.SaveIntegratedInstanceRequestFeatureConfigFeatures = SaveIntegratedInstanceRequestFeatureConfigFeatures;
class SaveIntegratedInstanceRequestFeatureConfig extends $tea.Model {
    static names() {
        return {
            features: 'features',
        };
    }
    static types() {
        return {
            features: { 'type': 'array', 'itemType': SaveIntegratedInstanceRequestFeatureConfigFeatures },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.SaveIntegratedInstanceRequestFeatureConfig = SaveIntegratedInstanceRequestFeatureConfig;
class SaveIntegratedInstanceRequestFormComponentValueList extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            componentType: 'componentType',
            extValue: 'extValue',
            id: 'id',
            name: 'name',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            componentType: 'string',
            extValue: 'string',
            id: 'string',
            name: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.SaveIntegratedInstanceRequestFormComponentValueList = SaveIntegratedInstanceRequestFormComponentValueList;
class SaveIntegratedInstanceRequestNotifiers extends $tea.Model {
    static names() {
        return {
            position: 'position',
            userid: 'userid',
        };
    }
    static types() {
        return {
            position: 'string',
            userid: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.SaveIntegratedInstanceRequestNotifiers = SaveIntegratedInstanceRequestNotifiers;
class SaveIntegratedInstanceResponseBodyResult extends $tea.Model {
    static names() {
        return {
            processInstanceId: 'processInstanceId',
        };
    }
    static types() {
        return {
            processInstanceId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.SaveIntegratedInstanceResponseBodyResult = SaveIntegratedInstanceResponseBodyResult;
class SaveProcessRequestProcessFeatureConfigFeaturesCallback extends $tea.Model {
    static names() {
        return {
            apiKey: 'apiKey',
            appUuid: 'appUuid',
            version: 'version',
        };
    }
    static types() {
        return {
            apiKey: 'string',
            appUuid: 'string',
            version: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.SaveProcessRequestProcessFeatureConfigFeaturesCallback = SaveProcessRequestProcessFeatureConfigFeaturesCallback;
class SaveProcessRequestProcessFeatureConfigFeatures extends $tea.Model {
    static names() {
        return {
            callback: 'callback',
            config: 'config',
            mobileUrl: 'mobileUrl',
            name: 'name',
            pcUrl: 'pcUrl',
            runType: 'runType',
        };
    }
    static types() {
        return {
            callback: SaveProcessRequestProcessFeatureConfigFeaturesCallback,
            config: 'string',
            mobileUrl: 'string',
            name: 'string',
            pcUrl: 'string',
            runType: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.SaveProcessRequestProcessFeatureConfigFeatures = SaveProcessRequestProcessFeatureConfigFeatures;
class SaveProcessRequestProcessFeatureConfig extends $tea.Model {
    static names() {
        return {
            features: 'features',
        };
    }
    static types() {
        return {
            features: { 'type': 'array', 'itemType': SaveProcessRequestProcessFeatureConfigFeatures },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.SaveProcessRequestProcessFeatureConfig = SaveProcessRequestProcessFeatureConfig;
class SaveProcessRequestTemplateConfig extends $tea.Model {
    static names() {
        return {
            createInstanceMobileUrl: 'createInstanceMobileUrl',
            createInstancePcUrl: 'createInstancePcUrl',
            disableSendCard: 'disableSendCard',
            hidden: 'hidden',
            templateEditUrl: 'templateEditUrl',
        };
    }
    static types() {
        return {
            createInstanceMobileUrl: 'string',
            createInstancePcUrl: 'string',
            disableSendCard: 'boolean',
            hidden: 'boolean',
            templateEditUrl: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.SaveProcessRequestTemplateConfig = SaveProcessRequestTemplateConfig;
class SaveProcessResponseBodyResult extends $tea.Model {
    static names() {
        return {
            processCode: 'processCode',
        };
    }
    static types() {
        return {
            processCode: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.SaveProcessResponseBodyResult = SaveProcessResponseBodyResult;
class StartProcessInstanceRequestApprovers extends $tea.Model {
    static names() {
        return {
            actionType: 'actionType',
            userIds: 'userIds',
        };
    }
    static types() {
        return {
            actionType: 'string',
            userIds: { 'type': 'array', 'itemType': 'string' },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.StartProcessInstanceRequestApprovers = StartProcessInstanceRequestApprovers;
class StartProcessInstanceRequestFormComponentValuesDetailsDetails extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            componentType: 'componentType',
            extValue: 'extValue',
            id: 'id',
            name: 'name',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            componentType: 'string',
            extValue: 'string',
            id: 'string',
            name: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.StartProcessInstanceRequestFormComponentValuesDetailsDetails = StartProcessInstanceRequestFormComponentValuesDetailsDetails;
class StartProcessInstanceRequestFormComponentValuesDetails extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            details: 'details',
            extValue: 'extValue',
            id: 'id',
            name: 'name',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            details: { 'type': 'array', 'itemType': StartProcessInstanceRequestFormComponentValuesDetailsDetails },
            extValue: 'string',
            id: 'string',
            name: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.StartProcessInstanceRequestFormComponentValuesDetails = StartProcessInstanceRequestFormComponentValuesDetails;
class StartProcessInstanceRequestFormComponentValues extends $tea.Model {
    static names() {
        return {
            bizAlias: 'bizAlias',
            componentType: 'componentType',
            details: 'details',
            extValue: 'extValue',
            id: 'id',
            name: 'name',
            value: 'value',
        };
    }
    static types() {
        return {
            bizAlias: 'string',
            componentType: 'string',
            details: { 'type': 'array', 'itemType': StartProcessInstanceRequestFormComponentValuesDetails },
            extValue: 'string',
            id: 'string',
            name: 'string',
            value: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.StartProcessInstanceRequestFormComponentValues = StartProcessInstanceRequestFormComponentValues;
class StartProcessInstanceRequestTargetSelectActioners extends $tea.Model {
    static names() {
        return {
            actionerKey: 'actionerKey',
            actionerUserIds: 'actionerUserIds',
        };
    }
    static types() {
        return {
            actionerKey: 'string',
            actionerUserIds: { 'type': 'array', 'itemType': 'string' },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.StartProcessInstanceRequestTargetSelectActioners = StartProcessInstanceRequestTargetSelectActioners;
class TodoTasksResponseBodyResultList extends $tea.Model {
    static names() {
        return {
            businessId: 'businessId',
            canRedirect: 'canRedirect',
            createTime: 'createTime',
            processCode: 'processCode',
            processInstanceId: 'processInstanceId',
            taskId: 'taskId',
            title: 'title',
            userId: 'userId',
        };
    }
    static types() {
        return {
            businessId: 'string',
            canRedirect: 'boolean',
            createTime: 'number',
            processCode: 'string',
            processInstanceId: 'string',
            taskId: 'number',
            title: 'string',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.TodoTasksResponseBodyResultList = TodoTasksResponseBodyResultList;
class TodoTasksResponseBodyResult extends $tea.Model {
    static names() {
        return {
            hasMore: 'hasMore',
            list: 'list',
        };
    }
    static types() {
        return {
            hasMore: 'boolean',
            list: { 'type': 'array', 'itemType': TodoTasksResponseBodyResultList },
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.TodoTasksResponseBodyResult = TodoTasksResponseBodyResult;
class UpdateIntegratedTaskRequestTasks extends $tea.Model {
    static names() {
        return {
            result: 'result',
            status: 'status',
            taskId: 'taskId',
        };
    }
    static types() {
        return {
            result: 'string',
            status: 'string',
            taskId: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateIntegratedTaskRequestTasks = UpdateIntegratedTaskRequestTasks;
class UpdateProcessInstanceRequestNotifiers extends $tea.Model {
    static names() {
        return {
            userId: 'userId',
        };
    }
    static types() {
        return {
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.UpdateProcessInstanceRequestNotifiers = UpdateProcessInstanceRequestNotifiers;
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 - AddApproveDentryAuthRequest
     * @param headers - AddApproveDentryAuthHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns AddApproveDentryAuthResponse
     */
    async addApproveDentryAuthWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.fileInfos)) {
            body["fileInfos"] = request.fileInfos;
        }
        if (!tea_util_1.default.isUnset(request.userId)) {
            body["userId"] = request.userId;
        }
        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: "AddApproveDentryAuth",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processInstances/spaces/files/authDownload`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new AddApproveDentryAuthResponse({}));
    }
    /**
     * 授权下载审批钉盘文件
     *
     * @param request - AddApproveDentryAuthRequest
     * @returns AddApproveDentryAuthResponse
     */
    async addApproveDentryAuth(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new AddApproveDentryAuthHeaders({});
        return await this.addApproveDentryAuthWithOptions(request, headers, runtime);
    }
    /**
     * 添加审批评论
     *
     * @param request - AddProcessInstanceCommentRequest
     * @param headers - AddProcessInstanceCommentHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns AddProcessInstanceCommentResponse
     */
    async addProcessInstanceCommentWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.commentUserId)) {
            body["commentUserId"] = request.commentUserId;
        }
        if (!tea_util_1.default.isUnset(request.file)) {
            body["file"] = request.file;
        }
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        if (!tea_util_1.default.isUnset(request.text)) {
            body["text"] = request.text;
        }
        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: "AddProcessInstanceComment",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processInstances/comments`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new AddProcessInstanceCommentResponse({}));
    }
    /**
     * 添加审批评论
     *
     * @param request - AddProcessInstanceCommentRequest
     * @returns AddProcessInstanceCommentResponse
     */
    async addProcessInstanceComment(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new AddProcessInstanceCommentHeaders({});
        return await this.addProcessInstanceCommentWithOptions(request, headers, runtime);
    }
    /**
     * 归档审批实例(OA高级版专享)
     *
     * @param request - ArchiveProcessInstanceRequest
     * @param headers - ArchiveProcessInstanceHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns ArchiveProcessInstanceResponse
     */
    async archiveProcessInstanceWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.opUserId)) {
            body["opUserId"] = request.opUserId;
        }
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        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: "ArchiveProcessInstance",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processInstances/archive`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new ArchiveProcessInstanceResponse({}));
    }
    /**
     * 归档审批实例(OA高级版专享)
     *
     * @param request - ArchiveProcessInstanceRequest
     * @returns ArchiveProcessInstanceResponse
     */
    async archiveProcessInstance(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new ArchiveProcessInstanceHeaders({});
        return await this.archiveProcessInstanceWithOptions(request, headers, runtime);
    }
    /**
     * 批量同意或拒绝审批任务
     *
     * @param request - BatchExecuteProcessInstancesRequest
     * @param headers - BatchExecuteProcessInstancesHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns BatchExecuteProcessInstancesResponse
     */
    async batchExecuteProcessInstancesWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.actionerUserId)) {
            body["actionerUserId"] = request.actionerUserId;
        }
        if (!tea_util_1.default.isUnset(request.remark)) {
            body["remark"] = request.remark;
        }
        if (!tea_util_1.default.isUnset(request.result)) {
            body["result"] = request.result;
        }
        if (!tea_util_1.default.isUnset(request.taskInfoList)) {
            body["taskInfoList"] = request.taskInfoList;
        }
        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: "BatchExecuteProcessInstances",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processInstances/batchExecute`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new BatchExecuteProcessInstancesResponse({}));
    }
    /**
     * 批量同意或拒绝审批任务
     *
     * @param request - BatchExecuteProcessInstancesRequest
     * @returns BatchExecuteProcessInstancesResponse
     */
    async batchExecuteProcessInstances(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new BatchExecuteProcessInstancesHeaders({});
        return await this.batchExecuteProcessInstancesWithOptions(request, headers, runtime);
    }
    /**
     * 批量流程审批任务转交
     *
     * @param request - BatchTasksRedirectRequest
     * @param headers - BatchTasksRedirectHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns BatchTasksRedirectResponse
     */
    async batchTasksRedirectWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.handoverUserId)) {
            body["handoverUserId"] = request.handoverUserId;
        }
        if (!tea_util_1.default.isUnset(request.managerUserId)) {
            body["managerUserId"] = request.managerUserId;
        }
        if (!tea_util_1.default.isUnset(request.taskIds)) {
            body["taskIds"] = request.taskIds;
        }
        if (!tea_util_1.default.isUnset(request.transfereeUserId)) {
            body["transfereeUserId"] = request.transfereeUserId;
        }
        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: "BatchTasksRedirect",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/tasks/batchRedirect`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new BatchTasksRedirectResponse({}));
    }
    /**
     * 批量流程审批任务转交
     *
     * @param request - BatchTasksRedirectRequest
     * @returns BatchTasksRedirectResponse
     */
    async batchTasksRedirect(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new BatchTasksRedirectHeaders({});
        return await this.batchTasksRedirectWithOptions(request, headers, runtime);
    }
    /**
     * 批量更新实例状态
     *
     * @param request - BatchUpdateProcessInstanceRequest
     * @param headers - BatchUpdateProcessInstanceHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns BatchUpdateProcessInstanceResponse
     */
    async batchUpdateProcessInstanceWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.updateProcessInstanceRequests)) {
            body["updateProcessInstanceRequests"] = request.updateProcessInstanceRequests;
        }
        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: "BatchUpdateProcessInstance",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processCentres/instances/batch`,
            method: "PUT",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new BatchUpdateProcessInstanceResponse({}));
    }
    /**
     * 批量更新实例状态
     *
     * @param request - BatchUpdateProcessInstanceRequest
     * @returns BatchUpdateProcessInstanceResponse
     */
    async batchUpdateProcessInstance(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new BatchUpdateProcessInstanceHeaders({});
        return await this.batchUpdateProcessInstanceWithOptions(request, headers, runtime);
    }
    /**
     * 批量取消流程中心待处理任务
     *
     * @param request - CancelIntegratedTaskRequest
     * @param headers - CancelIntegratedTaskHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns CancelIntegratedTaskResponse
     */
    async cancelIntegratedTaskWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.activityId)) {
            body["activityId"] = request.activityId;
        }
        if (!tea_util_1.default.isUnset(request.activityIds)) {
            body["activityIds"] = request.activityIds;
        }
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        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: "CancelIntegratedTask",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processCentres/tasks/cancel`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new CancelIntegratedTaskResponse({}));
    }
    /**
     * 批量取消流程中心待处理任务
     *
     * @param request - CancelIntegratedTaskRequest
     * @returns CancelIntegratedTaskResponse
     */
    async cancelIntegratedTask(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new CancelIntegratedTaskHeaders({});
        return await this.cancelIntegratedTaskWithOptions(request, headers, runtime);
    }
    /**
     * 清理审批数据
     *
     * @param request - CleanProcessDataRequest
     * @param headers - CleanProcessDataHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns CleanProcessDataResponse
     */
    async cleanProcessDataWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.corpId)) {
            body["corpId"] = request.corpId;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            body["processCode"] = request.processCode;
        }
        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: "CleanProcessData",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processes/clean`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new CleanProcessDataResponse({}));
    }
    /**
     * 清理审批数据
     *
     * @param request - CleanProcessDataRequest
     * @returns CleanProcessDataResponse
     */
    async cleanProcessData(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new CleanProcessDataHeaders({});
        return await this.cleanProcessDataWithOptions(request, headers, runtime);
    }
    /**
     * 复制审批流
     *
     * @param request - CopyProcessRequest
     * @param headers - CopyProcessHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns CopyProcessResponse
     */
    async copyProcessWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.copyOptions)) {
            body["copyOptions"] = request.copyOptions;
        }
        if (!tea_util_1.default.isUnset(request.sourceCorpId)) {
            body["sourceCorpId"] = request.sourceCorpId;
        }
        if (!tea_util_1.default.isUnset(request.sourceProcessVOList)) {
            body["sourceProcessVOList"] = request.sourceProcessVOList;
        }
        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: "CopyProcess",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processes/copy`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new CopyProcessResponse({}));
    }
    /**
     * 复制审批流
     *
     * @param request - CopyProcessRequest
     * @returns CopyProcessResponse
     */
    async copyProcess(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new CopyProcessHeaders({});
        return await this.copyProcessWithOptions(request, headers, runtime);
    }
    /**
     * 创建流程中心待处理任务
     *
     * @param request - CreateIntegratedTaskRequest
     * @param headers - CreateIntegratedTaskHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns CreateIntegratedTaskResponse
     */
    async createIntegratedTaskWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.activityId)) {
            body["activityId"] = request.activityId;
        }
        if (!tea_util_1.default.isUnset(request.featureConfig)) {
            body["featureConfig"] = request.featureConfig;
        }
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        if (!tea_util_1.default.isUnset(request.tasks)) {
            body["tasks"] = request.tasks;
        }
        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: "CreateIntegratedTask",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processCentres/tasks`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new CreateIntegratedTaskResponse({}));
    }
    /**
     * 创建流程中心待处理任务
     *
     * @param request - CreateIntegratedTaskRequest
     * @returns CreateIntegratedTaskResponse
     */
    async createIntegratedTask(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new CreateIntegratedTaskHeaders({});
        return await this.createIntegratedTaskWithOptions(request, headers, runtime);
    }
    /**
     * 删除分组
     *
     * @param request - DeleteDirRequest
     * @param headers - DeleteDirHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns DeleteDirResponse
     */
    async deleteDirWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.dirId)) {
            query["dirId"] = request.dirId;
        }
        if (!tea_util_1.default.isUnset(request.operateUserId)) {
            query["operateUserId"] = request.operateUserId;
        }
        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: "DeleteDir",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processCentres/directories`,
            method: "DELETE",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new DeleteDirResponse({}));
    }
    /**
     * 删除分组
     *
     * @param request - DeleteDirRequest
     * @returns DeleteDirResponse
     */
    async deleteDir(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new DeleteDirHeaders({});
        return await this.deleteDirWithOptions(request, headers, runtime);
    }
    /**
     * 删除模板
     *
     * @param request - DeleteProcessRequest
     * @param headers - DeleteProcessHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns DeleteProcessResponse
     */
    async deleteProcessWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.cleanRunningTask)) {
            query["cleanRunningTask"] = request.cleanRunningTask;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            query["processCode"] = request.processCode;
        }
        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: "DeleteProcess",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processCentres/schemas`,
            method: "DELETE",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new DeleteProcessResponse({}));
    }
    /**
     * 删除模板
     *
     * @param request - DeleteProcessRequest
     * @returns DeleteProcessResponse
     */
    async deleteProcess(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new DeleteProcessHeaders({});
        return await this.deleteProcessWithOptions(request, headers, runtime);
    }
    /**
     * 同意或拒绝审批任务
     *
     * @param request - ExecuteProcessInstanceRequest
     * @param headers - ExecuteProcessInstanceHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns ExecuteProcessInstanceResponse
     */
    async executeProcessInstanceWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.actionerUserId)) {
            body["actionerUserId"] = request.actionerUserId;
        }
        if (!tea_util_1.default.isUnset(request.file)) {
            body["file"] = request.file;
        }
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        if (!tea_util_1.default.isUnset(request.remark)) {
            body["remark"] = request.remark;
        }
        if (!tea_util_1.default.isUnset(request.result)) {
            body["result"] = request.result;
        }
        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: "ExecuteProcessInstance",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processInstances/execute`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new ExecuteProcessInstanceResponse({}));
    }
    /**
     * 同意或拒绝审批任务
     *
     * @param request - ExecuteProcessInstanceRequest
     * @returns ExecuteProcessInstanceResponse
     */
    async executeProcessInstance(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new ExecuteProcessInstanceHeaders({});
        return await this.executeProcessInstanceWithOptions(request, headers, runtime);
    }
    /**
     * 创建或更新审批表单模板
     *
     * @param request - FormCreateRequest
     * @param headers - FormCreateHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns FormCreateResponse
     */
    async formCreateWithOptions(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.formComponents)) {
            body["formComponents"] = request.formComponents;
        }
        if (!tea_util_1.default.isUnset(request.name)) {
            body["name"] = request.name;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            body["processCode"] = request.processCode;
        }
        if (!tea_util_1.default.isUnset(request.templateConfig)) {
            body["templateConfig"] = request.templateConfig;
        }
        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: "FormCreate",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/forms`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new FormCreateResponse({}));
    }
    /**
     * 创建或更新审批表单模板
     *
     * @param request - FormCreateRequest
     * @returns FormCreateResponse
     */
    async formCreate(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new FormCreateHeaders({});
        return await this.formCreateWithOptions(request, headers, runtime);
    }
    /**
     * 获取审批钉盘空间信息
     *
     * @param request - GetAttachmentSpaceRequest
     * @param headers - GetAttachmentSpaceHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GetAttachmentSpaceResponse
     */
    async getAttachmentSpaceWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.agentId)) {
            body["agentId"] = request.agentId;
        }
        if (!tea_util_1.default.isUnset(request.userId)) {
            body["userId"] = request.userId;
        }
        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: "GetAttachmentSpace",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processInstances/spaces/infos/query`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new GetAttachmentSpaceResponse({}));
    }
    /**
     * 获取审批钉盘空间信息
     *
     * @param request - GetAttachmentSpaceRequest
     * @returns GetAttachmentSpaceResponse
     */
    async getAttachmentSpace(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new GetAttachmentSpaceHeaders({});
        return await this.getAttachmentSpaceWithOptions(request, headers, runtime);
    }
    /**
     * 查询已设置为条件的表单组件
     *
     * @param request - GetConditionFormComponentRequest
     * @param headers - GetConditionFormComponentHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GetConditionFormComponentResponse
     */
    async getConditionFormComponentWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.agentId)) {
            query["agentId"] = request.agentId;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            query["processCode"] = request.processCode;
        }
        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: "GetConditionFormComponent",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processes/conditions/components`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new GetConditionFormComponentResponse({}));
    }
    /**
     * 查询已设置为条件的表单组件
     *
     * @param request - GetConditionFormComponentRequest
     * @returns GetConditionFormComponentResponse
     */
    async getConditionFormComponent(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new GetConditionFormComponentHeaders({});
        return await this.getConditionFormComponentWithOptions(request, headers, runtime);
    }
    /**
     * 获取CRM所有流程code
     *
     * @param headers - GetCrmProcCodesHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GetCrmProcCodesResponse
     */
    async getCrmProcCodesWithOptions(headers, runtime) {
        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,
        });
        let params = new $OpenApi.Params({
            action: "GetCrmProcCodes",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/crm/processes`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new GetCrmProcCodesResponse({}));
    }
    /**
     * 获取CRM所有流程code
     * @returns GetCrmProcCodesResponse
     */
    async getCrmProcCodes() {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new GetCrmProcCodesHeaders({});
        return await this.getCrmProcCodesWithOptions(headers, runtime);
    }
    /**
     * 获取表单字段修改历史
     *
     * @param request - GetFieldModifiedHistoryRequest
     * @param headers - GetFieldModifiedHistoryHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GetFieldModifiedHistoryResponse
     */
    async getFieldModifiedHistoryWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.fieldId)) {
            body["fieldId"] = request.fieldId;
        }
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        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: "GetFieldModifiedHistory",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processes/fields/modifiedRecords/query`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new GetFieldModifiedHistoryResponse({}));
    }
    /**
     * 获取表单字段修改历史
     *
     * @param request - GetFieldModifiedHistoryRequest
     * @returns GetFieldModifiedHistoryResponse
     */
    async getFieldModifiedHistory(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new GetFieldModifiedHistoryHeaders({});
        return await this.getFieldModifiedHistoryWithOptions(request, headers, runtime);
    }
    /**
     * 获取手写签名的下载链接
     *
     * @param request - GetHandSignDownloadUrlRequest
     * @param headers - GetHandSignDownloadUrlHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GetHandSignDownloadUrlResponse
     */
    async getHandSignDownloadUrlWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.handSignToken)) {
            body["handSignToken"] = request.handSignToken;
        }
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        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: "GetHandSignDownloadUrl",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processInstances/handSigns/downloadUrls/query`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new GetHandSignDownloadUrlResponse({}));
    }
    /**
     * 获取手写签名的下载链接
     *
     * @param request - GetHandSignDownloadUrlRequest
     * @returns GetHandSignDownloadUrlResponse
     */
    async getHandSignDownloadUrl(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new GetHandSignDownloadUrlHeaders({});
        return await this.getHandSignDownloadUrlWithOptions(request, headers, runtime);
    }
    /**
     * 获取当前企业所有可管理的表单
     *
     * @param request - GetManageProcessByStaffIdRequest
     * @param headers - GetManageProcessByStaffIdHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GetManageProcessByStaffIdResponse
     */
    async getManageProcessByStaffIdWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.userId)) {
            query["userId"] = request.userId;
        }
        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: "GetManageProcessByStaffId",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processes/managements/templates`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new GetManageProcessByStaffIdResponse({}));
    }
    /**
     * 获取当前企业所有可管理的表单
     *
     * @param request - GetManageProcessByStaffIdRequest
     * @returns GetManageProcessByStaffIdResponse
     */
    async getManageProcessByStaffId(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new GetManageProcessByStaffIdHeaders({});
        return await this.getManageProcessByStaffIdWithOptions(request, headers, runtime);
    }
    /**
     * 获取模板code
     *
     * @param request - GetProcessCodeByNameRequest
     * @param headers - GetProcessCodeByNameHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GetProcessCodeByNameResponse
     */
    async getProcessCodeByNameWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.name)) {
            query["name"] = request.name;
        }
        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: "GetProcessCodeByName",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processCentres/schemaNames/processCodes`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new GetProcessCodeByNameResponse({}));
    }
    /**
     * 获取模板code
     *
     * @param request - GetProcessCodeByNameRequest
     * @returns GetProcessCodeByNameResponse
     */
    async getProcessCodeByName(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new GetProcessCodeByNameHeaders({});
        return await this.getProcessCodeByNameWithOptions(request, headers, runtime);
    }
    /**
     * 获取流程配置
     *
     * @param request - GetProcessConfigRequest
     * @param headers - GetProcessConfigHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GetProcessConfigResponse
     */
    async getProcessConfigWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.procCode)) {
            query["procCode"] = request.procCode;
        }
        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: "GetProcessConfig",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/crm/processes/configurations`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new GetProcessConfigResponse({}));
    }
    /**
     * 获取流程配置
     *
     * @param request - GetProcessConfigRequest
     * @returns GetProcessConfigResponse
     */
    async getProcessConfig(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new GetProcessConfigHeaders({});
        return await this.getProcessConfigWithOptions(request, headers, runtime);
    }
    /**
     * 获取单个审批实例详情
     *
     * @param request - GetProcessInstanceRequest
     * @param headers - GetProcessInstanceHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GetProcessInstanceResponse
     */
    async getProcessInstanceWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            query["processInstanceId"] = request.processInstanceId;
        }
        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: "GetProcessInstance",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processInstances`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new GetProcessInstanceResponse({}));
    }
    /**
     * 获取单个审批实例详情
     *
     * @param request - GetProcessInstanceRequest
     * @returns GetProcessInstanceResponse
     */
    async getProcessInstance(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new GetProcessInstanceHeaders({});
        return await this.getProcessInstanceWithOptions(request, headers, runtime);
    }
    /**
     * 获取审批单详情高级接口，可以返回审批流程中的手写签名密码消息
     *
     * @param request - GetProcessInstanceWithExtraRequest
     * @param headers - GetProcessInstanceWithExtraHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GetProcessInstanceWithExtraResponse
     */
    async getProcessInstanceWithExtraWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            query["processInstanceId"] = request.processInstanceId;
        }
        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: "GetProcessInstanceWithExtra",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processInstances`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new GetProcessInstanceWithExtraResponse({}));
    }
    /**
     * 获取审批单详情高级接口，可以返回审批流程中的手写签名密码消息
     *
     * @param request - GetProcessInstanceWithExtraRequest
     * @returns GetProcessInstanceWithExtraResponse
     */
    async getProcessInstanceWithExtra(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new GetProcessInstanceWithExtraHeaders({});
        return await this.getProcessInstanceWithExtraWithOptions(request, headers, runtime);
    }
    /**
     * 根据模版code列表批量查询模板最新表单和流程配置
     *
     * @param tmpReq - GetSchemaAndProcessconfigBatchllyRequest
     * @param headers - GetSchemaAndProcessconfigBatchllyHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GetSchemaAndProcessconfigBatchllyResponse
     */
    async getSchemaAndProcessconfigBatchllyWithOptions(tmpReq, headers, runtime) {
        tea_util_1.default.validateModel(tmpReq);
        let request = new GetSchemaAndProcessconfigBatchllyShrinkRequest({});
        openapi_util_1.default.convert(tmpReq, request);
        if (!tea_util_1.default.isUnset(tmpReq.processCodes)) {
            request.processCodesShrink = openapi_util_1.default.arrayToStringWithSpecifiedStyle(tmpReq.processCodes, "processCodes", "json");
        }
        let query = {};
        if (!tea_util_1.default.isUnset(request.processCodesShrink)) {
            query["processCodes"] = request.processCodesShrink;
        }
        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: "GetSchemaAndProcessconfigBatchlly",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processes/templates/batchQuery`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new GetSchemaAndProcessconfigBatchllyResponse({}));
    }
    /**
     * 根据模版code列表批量查询模板最新表单和流程配置
     *
     * @param request - GetSchemaAndProcessconfigBatchllyRequest
     * @returns GetSchemaAndProcessconfigBatchllyResponse
     */
    async getSchemaAndProcessconfigBatchlly(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new GetSchemaAndProcessconfigBatchllyHeaders({});
        return await this.getSchemaAndProcessconfigBatchllyWithOptions(request, headers, runtime);
    }
    /**
     * 授权预览审批附件
     *
     * @param request - GetSpaceWithDownloadAuthRequest
     * @param headers - GetSpaceWithDownloadAuthHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GetSpaceWithDownloadAuthResponse
     */
    async getSpaceWithDownloadAuthWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.agentId)) {
            body["agentId"] = request.agentId;
        }
        if (!tea_util_1.default.isUnset(request.fileId)) {
            body["fileId"] = request.fileId;
        }
        if (!tea_util_1.default.isUnset(request.fileIdList)) {
            body["fileIdList"] = request.fileIdList;
        }
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        if (!tea_util_1.default.isUnset(request.userId)) {
            body["userId"] = request.userId;
        }
        if (!tea_util_1.default.isUnset(request.withCommentAttatchment)) {
            body["withCommentAttatchment"] = request.withCommentAttatchment;
        }
        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: "GetSpaceWithDownloadAuth",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processInstances/spaces/authPreview`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new GetSpaceWithDownloadAuthResponse({}));
    }
    /**
     * 授权预览审批附件
     *
     * @param request - GetSpaceWithDownloadAuthRequest
     * @returns GetSpaceWithDownloadAuthResponse
     */
    async getSpaceWithDownloadAuth(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new GetSpaceWithDownloadAuthHeaders({});
        return await this.getSpaceWithDownloadAuthWithOptions(request, headers, runtime);
    }
    /**
     * 获取用户待审批数量
     *
     * @param request - GetUserTodoTaskSumRequest
     * @param headers - GetUserTodoTaskSumHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GetUserTodoTaskSumResponse
     */
    async getUserTodoTaskSumWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.userId)) {
            query["userId"] = request.userId;
        }
        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: "GetUserTodoTaskSum",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processes/todoTasks/numbers`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new GetUserTodoTaskSumResponse({}));
    }
    /**
     * 获取用户待审批数量
     *
     * @param request - GetUserTodoTaskSumRequest
     * @returns GetUserTodoTaskSumResponse
     */
    async getUserTodoTaskSum(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new GetUserTodoTaskSumHeaders({});
        return await this.getUserTodoTaskSumWithOptions(request, headers, runtime);
    }
    /**
     * 授权用户钉盘空间权限
     *
     * @param request - GrantCspaceAuthorizationRequest
     * @param headers - GrantCspaceAuthorizationHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GrantCspaceAuthorizationResponse
     */
    async grantCspaceAuthorizationWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.durationSeconds)) {
            body["durationSeconds"] = request.durationSeconds;
        }
        if (!tea_util_1.default.isUnset(request.spaceId)) {
            body["spaceId"] = request.spaceId;
        }
        if (!tea_util_1.default.isUnset(request.type)) {
            body["type"] = request.type;
        }
        if (!tea_util_1.default.isUnset(request.userId)) {
            body["userId"] = request.userId;
        }
        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: "GrantCspaceAuthorization",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/spaces/authorize`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "none",
        });
        return $tea.cast(await this.execute(params, req, runtime), new GrantCspaceAuthorizationResponse({}));
    }
    /**
     * 授权用户钉盘空间权限
     *
     * @param request - GrantCspaceAuthorizationRequest
     * @returns GrantCspaceAuthorizationResponse
     */
    async grantCspaceAuthorization(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new GrantCspaceAuthorizationHeaders({});
        return await this.grantCspaceAuthorizationWithOptions(request, headers, runtime);
    }
    /**
     * 下载审批附件
     *
     * @param request - GrantProcessInstanceForDownloadFileRequest
     * @param headers - GrantProcessInstanceForDownloadFileHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GrantProcessInstanceForDownloadFileResponse
     */
    async grantProcessInstanceForDownloadFileWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.fileId)) {
            body["fileId"] = request.fileId;
        }
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        if (!tea_util_1.default.isUnset(request.withCommentAttatchment)) {
            body["withCommentAttatchment"] = request.withCommentAttatchment;
        }
        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: "GrantProcessInstanceForDownloadFile",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processInstances/spaces/files/urls/download`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new GrantProcessInstanceForDownloadFileResponse({}));
    }
    /**
     * 下载审批附件
     *
     * @param request - GrantProcessInstanceForDownloadFileRequest
     * @returns GrantProcessInstanceForDownloadFileResponse
     */
    async grantProcessInstanceForDownloadFile(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new GrantProcessInstanceForDownloadFileHeaders({});
        return await this.grantProcessInstanceForDownloadFileWithOptions(request, headers, runtime);
    }
    /**
     * 创建或更新分组
     *
     * @param request - InsertOrUpdateDirRequest
     * @param headers - InsertOrUpdateDirHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns InsertOrUpdateDirResponse
     */
    async insertOrUpdateDirWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.bizGroup)) {
            body["bizGroup"] = request.bizGroup;
        }
        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.name18n)) {
            body["name18n"] = request.name18n;
        }
        if (!tea_util_1.default.isUnset(request.operateUserId)) {
            body["operateUserId"] = request.operateUserId;
        }
        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: "InsertOrUpdateDir",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processCentres/directories`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new InsertOrUpdateDirResponse({}));
    }
    /**
     * 创建或更新分组
     *
     * @param request - InsertOrUpdateDirRequest
     * @returns InsertOrUpdateDirResponse
     */
    async insertOrUpdateDir(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new InsertOrUpdateDirHeaders({});
        return await this.insertOrUpdateDirWithOptions(request, headers, runtime);
    }
    /**
     * 应用安装
     *
     * @param request - InstallAppRequest
     * @param headers - InstallAppHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns InstallAppResponse
     */
    async installAppWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.bizGroup)) {
            body["bizGroup"] = request.bizGroup;
        }
        if (!tea_util_1.default.isUnset(request.installOption)) {
            body["installOption"] = request.installOption;
        }
        if (!tea_util_1.default.isUnset(request.sourceDirName)) {
            body["sourceDirName"] = request.sourceDirName;
        }
        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: "InstallApp",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processes/apps/install`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new InstallAppResponse({}));
    }
    /**
     * 应用安装
     *
     * @param request - InstallAppRequest
     * @returns InstallAppResponse
     */
    async installApp(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new InstallAppHeaders({});
        return await this.installAppWithOptions(request, headers, runtime);
    }
    /**
     * 获取审批实例ID列表
     *
     * @param request - ListProcessInstanceIdsRequest
     * @param headers - ListProcessInstanceIdsHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns ListProcessInstanceIdsResponse
     */
    async listProcessInstanceIdsWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.endTime)) {
            body["endTime"] = request.endTime;
        }
        if (!tea_util_1.default.isUnset(request.maxResults)) {
            body["maxResults"] = request.maxResults;
        }
        if (!tea_util_1.default.isUnset(request.nextToken)) {
            body["nextToken"] = request.nextToken;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            body["processCode"] = request.processCode;
        }
        if (!tea_util_1.default.isUnset(request.startTime)) {
            body["startTime"] = request.startTime;
        }
        if (!tea_util_1.default.isUnset(request.statuses)) {
            body["statuses"] = request.statuses;
        }
        if (!tea_util_1.default.isUnset(request.userIds)) {
            body["userIds"] = request.userIds;
        }
        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: "ListProcessInstanceIds",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processes/instanceIds/query`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new ListProcessInstanceIdsResponse({}));
    }
    /**
     * 获取审批实例ID列表
     *
     * @param request - ListProcessInstanceIdsRequest
     * @returns ListProcessInstanceIdsResponse
     */
    async listProcessInstanceIds(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new ListProcessInstanceIdsHeaders({});
        return await this.listProcessInstanceIdsWithOptions(request, headers, runtime);
    }
    /**
     * 查询用户待办事项
     *
     * @param request - ListTodoWorkRecordsRequest
     * @param headers - ListTodoWorkRecordsHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns ListTodoWorkRecordsResponse
     */
    async listTodoWorkRecordsWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.maxResults)) {
            query["maxResults"] = request.maxResults;
        }
        if (!tea_util_1.default.isUnset(request.nextToken)) {
            query["nextToken"] = request.nextToken;
        }
        if (!tea_util_1.default.isUnset(request.status)) {
            query["status"] = request.status;
        }
        if (!tea_util_1.default.isUnset(request.userId)) {
            query["userId"] = request.userId;
        }
        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: "ListTodoWorkRecords",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/workRecords/todoTasks`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new ListTodoWorkRecordsResponse({}));
    }
    /**
     * 查询用户待办事项
     *
     * @param request - ListTodoWorkRecordsRequest
     * @returns ListTodoWorkRecordsResponse
     */
    async listTodoWorkRecords(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new ListTodoWorkRecordsHeaders({});
        return await this.listTodoWorkRecordsWithOptions(request, headers, runtime);
    }
    /**
     * 获取指定用户可见的审批表单列表
     *
     * @param request - ListUserVisibleBpmsProcessesRequest
     * @param headers - ListUserVisibleBpmsProcessesHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns ListUserVisibleBpmsProcessesResponse
     */
    async listUserVisibleBpmsProcessesWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.maxResults)) {
            query["maxResults"] = request.maxResults;
        }
        if (!tea_util_1.default.isUnset(request.nextToken)) {
            query["nextToken"] = request.nextToken;
        }
        if (!tea_util_1.default.isUnset(request.userId)) {
            query["userId"] = request.userId;
        }
        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: "ListUserVisibleBpmsProcesses",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processes/userVisibilities/templates`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new ListUserVisibleBpmsProcessesResponse({}));
    }
    /**
     * 获取指定用户可见的审批表单列表
     *
     * @param request - ListUserVisibleBpmsProcessesRequest
     * @returns ListUserVisibleBpmsProcessesResponse
     */
    async listUserVisibleBpmsProcesses(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new ListUserVisibleBpmsProcessesHeaders({});
        return await this.listUserVisibleBpmsProcessesWithOptions(request, headers, runtime);
    }
    /**
     * 分页查询实例数据
     *
     * @param request - PagesExportInstancesRequest
     * @param headers - PagesExportInstancesHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PagesExportInstancesResponse
     */
    async pagesExportInstancesWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.endTimeInMills)) {
            query["endTimeInMills"] = request.endTimeInMills;
        }
        if (!tea_util_1.default.isUnset(request.maxResults)) {
            query["maxResults"] = request.maxResults;
        }
        if (!tea_util_1.default.isUnset(request.nextToken)) {
            query["nextToken"] = request.nextToken;
        }
        if (!tea_util_1.default.isUnset(request.orderBy)) {
            query["orderBy"] = request.orderBy;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            query["processCode"] = request.processCode;
        }
        if (!tea_util_1.default.isUnset(request.startTimeInMills)) {
            query["startTimeInMills"] = request.startTimeInMills;
        }
        if (!tea_util_1.default.isUnset(request.status)) {
            query["status"] = request.status;
        }
        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: "PagesExportInstances",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/instances/datas`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PagesExportInstancesResponse({}));
    }
    /**
     * 分页查询实例数据
     *
     * @param request - PagesExportInstancesRequest
     * @returns PagesExportInstancesResponse
     */
    async pagesExportInstances(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PagesExportInstancesHeaders({});
        return await this.pagesExportInstancesWithOptions(request, headers, runtime);
    }
    /**
     * 授权下载审批钉盘文件(OA高级版专享)
     *
     * @param request - PremiumAddApproveDentryAuthRequest
     * @param headers - PremiumAddApproveDentryAuthHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumAddApproveDentryAuthResponse
     */
    async premiumAddApproveDentryAuthWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.fileInfos)) {
            body["fileInfos"] = request.fileInfos;
        }
        if (!tea_util_1.default.isUnset(request.userId)) {
            body["userId"] = request.userId;
        }
        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: "PremiumAddApproveDentryAuth",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processInstances/spaces/files/authDownload`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumAddApproveDentryAuthResponse({}));
    }
    /**
     * 授权下载审批钉盘文件(OA高级版专享)
     *
     * @param request - PremiumAddApproveDentryAuthRequest
     * @returns PremiumAddApproveDentryAuthResponse
     */
    async premiumAddApproveDentryAuth(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumAddApproveDentryAuthHeaders({});
        return await this.premiumAddApproveDentryAuthWithOptions(request, headers, runtime);
    }
    /**
     * 加签OA审批任务(OA高级版专享)
     *
     * @param request - PremiumAppendTaskRequest
     * @param headers - PremiumAppendTaskHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumAppendTaskResponse
     */
    async premiumAppendTaskWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.activateType)) {
            body["activateType"] = request.activateType;
        }
        if (!tea_util_1.default.isUnset(request.agreeAll)) {
            body["agreeAll"] = request.agreeAll;
        }
        if (!tea_util_1.default.isUnset(request.appenderUserIds)) {
            body["appenderUserIds"] = request.appenderUserIds;
        }
        if (!tea_util_1.default.isUnset(request.operateUserId)) {
            body["operateUserId"] = request.operateUserId;
        }
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        if (!tea_util_1.default.isUnset(request.remark)) {
            body["remark"] = request.remark;
        }
        if (!tea_util_1.default.isUnset(request.taskId)) {
            body["taskId"] = request.taskId;
        }
        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: "PremiumAppendTask",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/tasks/append`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumAppendTaskResponse({}));
    }
    /**
     * 加签OA审批任务(OA高级版专享)
     *
     * @param request - PremiumAppendTaskRequest
     * @returns PremiumAppendTaskResponse
     */
    async premiumAppendTask(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumAppendTaskHeaders({});
        return await this.premiumAppendTaskWithOptions(request, headers, runtime);
    }
    /**
     * 批量同意或拒绝审批任务(OA高级版专享接口)
     *
     * @param request - PremiumBatchExecuteProcessInstancesRequest
     * @param headers - PremiumBatchExecuteProcessInstancesHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumBatchExecuteProcessInstancesResponse
     */
    async premiumBatchExecuteProcessInstancesWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.actionerUserId)) {
            body["actionerUserId"] = request.actionerUserId;
        }
        if (!tea_util_1.default.isUnset(request.remark)) {
            body["remark"] = request.remark;
        }
        if (!tea_util_1.default.isUnset(request.result)) {
            body["result"] = request.result;
        }
        if (!tea_util_1.default.isUnset(request.taskInfoList)) {
            body["taskInfoList"] = request.taskInfoList;
        }
        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: "PremiumBatchExecuteProcessInstances",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processInstances/batchExecute`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumBatchExecuteProcessInstancesResponse({}));
    }
    /**
     * 批量同意或拒绝审批任务(OA高级版专享接口)
     *
     * @param request - PremiumBatchExecuteProcessInstancesRequest
     * @returns PremiumBatchExecuteProcessInstancesResponse
     */
    async premiumBatchExecuteProcessInstances(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumBatchExecuteProcessInstancesHeaders({});
        return await this.premiumBatchExecuteProcessInstancesWithOptions(request, headers, runtime);
    }
    /**
     * 删除业务分组(高级版专享接口)
     *
     * @param request - PremiumDelDirRequest
     * @param headers - PremiumDelDirHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumDelDirResponse
     */
    async premiumDelDirWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.dirId)) {
            query["dirId"] = request.dirId;
        }
        if (!tea_util_1.default.isUnset(request.operateUserId)) {
            query["operateUserId"] = request.operateUserId;
        }
        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: "PremiumDelDir",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processCentres/directories`,
            method: "DELETE",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumDelDirResponse({}));
    }
    /**
     * 删除业务分组(高级版专享接口)
     *
     * @param request - PremiumDelDirRequest
     * @returns PremiumDelDirResponse
     */
    async premiumDelDir(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumDelDirHeaders({});
        return await this.premiumDelDirWithOptions(request, headers, runtime);
    }
    /**
     * 删除数据表单实例(OA高级版专享)
     *
     * @param request - PremiumDeleteFormInstanceRequest
     * @param headers - PremiumDeleteFormInstanceHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumDeleteFormInstanceResponse
     */
    async premiumDeleteFormInstanceWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.formInstanceIds)) {
            body["formInstanceIds"] = request.formInstanceIds;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            body["processCode"] = request.processCode;
        }
        if (!tea_util_1.default.isUnset(request.userId)) {
            body["userId"] = request.userId;
        }
        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: "PremiumDeleteFormInstance",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/dataForms/formInstances/remove`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumDeleteFormInstanceResponse({}));
    }
    /**
     * 删除数据表单实例(OA高级版专享)
     *
     * @param request - PremiumDeleteFormInstanceRequest
     * @returns PremiumDeleteFormInstanceResponse
     */
    async premiumDeleteFormInstance(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumDeleteFormInstanceHeaders({});
        return await this.premiumDeleteFormInstanceWithOptions(request, headers, runtime);
    }
    /**
     * 获取审批钉盘空间信息(OA高级版专享)
     *
     * @param request - PremiumGetAttachmentSpaceRequest
     * @param headers - PremiumGetAttachmentSpaceHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumGetAttachmentSpaceResponse
     */
    async premiumGetAttachmentSpaceWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.agentId)) {
            body["agentId"] = request.agentId;
        }
        if (!tea_util_1.default.isUnset(request.userId)) {
            body["userId"] = request.userId;
        }
        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: "PremiumGetAttachmentSpace",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processInstances/spaces/infos/query`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumGetAttachmentSpaceResponse({}));
    }
    /**
     * 获取审批钉盘空间信息(OA高级版专享)
     *
     * @param request - PremiumGetAttachmentSpaceRequest
     * @returns PremiumGetAttachmentSpaceResponse
     */
    async premiumGetAttachmentSpace(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumGetAttachmentSpaceHeaders({});
        return await this.premiumGetAttachmentSpaceWithOptions(request, headers, runtime);
    }
    /**
     * 查询审批中心已处理任务列表(OA高级版专享接口)
     *
     * @param request - PremiumGetDoneTasksRequest
     * @param headers - PremiumGetDoneTasksHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumGetDoneTasksResponse
     */
    async premiumGetDoneTasksWithOptions(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.userId)) {
            query["userId"] = request.userId;
        }
        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: "PremiumGetDoneTasks",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processCentres/doneTasks`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumGetDoneTasksResponse({}));
    }
    /**
     * 查询审批中心已处理任务列表(OA高级版专享接口)
     *
     * @param request - PremiumGetDoneTasksRequest
     * @returns PremiumGetDoneTasksResponse
     */
    async premiumGetDoneTasks(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumGetDoneTasksHeaders({});
        return await this.premiumGetDoneTasksWithOptions(request, headers, runtime);
    }
    /**
     * 获取字段修改历史(高级版专享接口)
     *
     * @param request - PremiumGetFieldModifiedHistoryRequest
     * @param headers - PremiumGetFieldModifiedHistoryHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumGetFieldModifiedHistoryResponse
     */
    async premiumGetFieldModifiedHistoryWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.fieldId)) {
            body["fieldId"] = request.fieldId;
        }
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        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: "PremiumGetFieldModifiedHistory",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processes/fields/modifiedRecords/query`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumGetFieldModifiedHistoryResponse({}));
    }
    /**
     * 获取字段修改历史(高级版专享接口)
     *
     * @param request - PremiumGetFieldModifiedHistoryRequest
     * @returns PremiumGetFieldModifiedHistoryResponse
     */
    async premiumGetFieldModifiedHistory(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumGetFieldModifiedHistoryHeaders({});
        return await this.premiumGetFieldModifiedHistoryWithOptions(request, headers, runtime);
    }
    /**
     * 获取单个数据表单实例详情(OA高级版专享)
     *
     * @param request - PremiumGetFormInstanceRequest
     * @param headers - PremiumGetFormInstanceHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumGetFormInstanceResponse
     */
    async premiumGetFormInstanceWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.appUuid)) {
            query["appUuid"] = request.appUuid;
        }
        if (!tea_util_1.default.isUnset(request.formCode)) {
            query["formCode"] = request.formCode;
        }
        if (!tea_util_1.default.isUnset(request.formInstanceId)) {
            query["formInstanceId"] = request.formInstanceId;
        }
        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: "PremiumGetFormInstance",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/dataForms/formInstances`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumGetFormInstanceResponse({}));
    }
    /**
     * 获取单个数据表单实例详情(OA高级版专享)
     *
     * @param request - PremiumGetFormInstanceRequest
     * @returns PremiumGetFormInstanceResponse
     */
    async premiumGetFormInstance(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumGetFormInstanceHeaders({});
        return await this.premiumGetFormInstanceWithOptions(request, headers, runtime);
    }
    /**
     * 根据formCode分页获取数据表单实例(OA高级版专享)
     *
     * @param request - PremiumGetFormInstancesRequest
     * @param headers - PremiumGetFormInstancesHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumGetFormInstancesResponse
     */
    async premiumGetFormInstancesWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.appUuid)) {
            query["appUuid"] = request.appUuid;
        }
        if (!tea_util_1.default.isUnset(request.formCode)) {
            query["formCode"] = request.formCode;
        }
        if (!tea_util_1.default.isUnset(request.maxResults)) {
            query["maxResults"] = request.maxResults;
        }
        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: "PremiumGetFormInstances",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/dataForms/formInstances/pages`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumGetFormInstancesResponse({}));
    }
    /**
     * 根据formCode分页获取数据表单实例(OA高级版专享)
     *
     * @param request - PremiumGetFormInstancesRequest
     * @returns PremiumGetFormInstancesResponse
     */
    async premiumGetFormInstances(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumGetFormInstancesHeaders({});
        return await this.premiumGetFormInstancesWithOptions(request, headers, runtime);
    }
    /**
     * 通过formCode获取数据表单schema(OA高级版专享)
     *
     * @param request - PremiumGetFormSchemaRequest
     * @param headers - PremiumGetFormSchemaHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumGetFormSchemaResponse
     */
    async premiumGetFormSchemaWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.appUuid)) {
            query["appUuid"] = request.appUuid;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            query["processCode"] = request.processCode;
        }
        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: "PremiumGetFormSchema",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/dataForms/schema/formCodes`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumGetFormSchemaResponse({}));
    }
    /**
     * 通过formCode获取数据表单schema(OA高级版专享)
     *
     * @param request - PremiumGetFormSchemaRequest
     * @returns PremiumGetFormSchemaResponse
     */
    async premiumGetFormSchema(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumGetFormSchemaHeaders({});
        return await this.premiumGetFormSchemaWithOptions(request, headers, runtime);
    }
    /**
     * 获取流程表单字段操作权限(高级版专享接口)
     *
     * @param request - PremiumGetInstFieldSettingRequest
     * @param headers - PremiumGetInstFieldSettingHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumGetInstFieldSettingResponse
     */
    async premiumGetInstFieldSettingWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        if (!tea_util_1.default.isUnset(request.userId)) {
            body["userId"] = request.userId;
        }
        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: "PremiumGetInstFieldSetting",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processes/fields/settings/query`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumGetInstFieldSettingResponse({}));
    }
    /**
     * 获取流程表单字段操作权限(高级版专享接口)
     *
     * @param request - PremiumGetInstFieldSettingRequest
     * @returns PremiumGetInstFieldSettingResponse
     */
    async premiumGetInstFieldSetting(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumGetInstFieldSettingHeaders({});
        return await this.premiumGetInstFieldSettingWithOptions(request, headers, runtime);
    }
    /**
     * 查询审批中心我收到的实例列表(OA高级版专享接口)
     *
     * @param request - PremiumGetNoticedInstancesRequest
     * @param headers - PremiumGetNoticedInstancesHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumGetNoticedInstancesResponse
     */
    async premiumGetNoticedInstancesWithOptions(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.userId)) {
            query["userId"] = request.userId;
        }
        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: "PremiumGetNoticedInstances",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processCentres/noticedInstances`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumGetNoticedInstancesResponse({}));
    }
    /**
     * 查询审批中心我收到的实例列表(OA高级版专享接口)
     *
     * @param request - PremiumGetNoticedInstancesRequest
     * @returns PremiumGetNoticedInstancesResponse
     */
    async premiumGetNoticedInstances(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumGetNoticedInstancesHeaders({});
        return await this.premiumGetNoticedInstancesWithOptions(request, headers, runtime);
    }
    /**
     * 根据processCode分页获取审批流程数据(高级版专享接口)
     *
     * @param request - PremiumGetProcessInstancesRequest
     * @param headers - PremiumGetProcessInstancesHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumGetProcessInstancesResponse
     */
    async premiumGetProcessInstancesWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.appUuid)) {
            query["appUuid"] = request.appUuid;
        }
        if (!tea_util_1.default.isUnset(request.endTimeInMills)) {
            query["endTimeInMills"] = request.endTimeInMills;
        }
        if (!tea_util_1.default.isUnset(request.maxResults)) {
            query["maxResults"] = request.maxResults;
        }
        if (!tea_util_1.default.isUnset(request.nextToken)) {
            query["nextToken"] = request.nextToken;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            query["processCode"] = request.processCode;
        }
        if (!tea_util_1.default.isUnset(request.startTimeInMills)) {
            query["startTimeInMills"] = request.startTimeInMills;
        }
        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: "PremiumGetProcessInstances",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processes/pages/instances`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumGetProcessInstancesResponse({}));
    }
    /**
     * 根据processCode分页获取审批流程数据(高级版专享接口)
     *
     * @param request - PremiumGetProcessInstancesRequest
     * @returns PremiumGetProcessInstancesResponse
     */
    async premiumGetProcessInstances(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumGetProcessInstancesHeaders({});
        return await this.premiumGetProcessInstancesWithOptions(request, headers, runtime);
    }
    /**
     * 授权预览审批附件(OA高级版专享)
     *
     * @param request - PremiumGetSpaceWithDownloadAuthRequest
     * @param headers - PremiumGetSpaceWithDownloadAuthHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumGetSpaceWithDownloadAuthResponse
     */
    async premiumGetSpaceWithDownloadAuthWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.agentId)) {
            body["agentId"] = request.agentId;
        }
        if (!tea_util_1.default.isUnset(request.fileId)) {
            body["fileId"] = request.fileId;
        }
        if (!tea_util_1.default.isUnset(request.fileIdList)) {
            body["fileIdList"] = request.fileIdList;
        }
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        if (!tea_util_1.default.isUnset(request.userId)) {
            body["userId"] = request.userId;
        }
        if (!tea_util_1.default.isUnset(request.withCommentAttatchment)) {
            body["withCommentAttatchment"] = request.withCommentAttatchment;
        }
        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: "PremiumGetSpaceWithDownloadAuth",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processInstances/spaces/authPreview`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumGetSpaceWithDownloadAuthResponse({}));
    }
    /**
     * 授权预览审批附件(OA高级版专享)
     *
     * @param request - PremiumGetSpaceWithDownloadAuthRequest
     * @returns PremiumGetSpaceWithDownloadAuthResponse
     */
    async premiumGetSpaceWithDownloadAuth(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumGetSpaceWithDownloadAuthHeaders({});
        return await this.premiumGetSpaceWithDownloadAuthWithOptions(request, headers, runtime);
    }
    /**
     * 查询审批中心已发起实例列表(OA高级版专享接口)
     *
     * @param request - PremiumGetSubmittedInstancesRequest
     * @param headers - PremiumGetSubmittedInstancesHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumGetSubmittedInstancesResponse
     */
    async premiumGetSubmittedInstancesWithOptions(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.userId)) {
            query["userId"] = request.userId;
        }
        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: "PremiumGetSubmittedInstances",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processCentres/submittedInstances`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumGetSubmittedInstancesResponse({}));
    }
    /**
     * 查询审批中心已发起实例列表(OA高级版专享接口)
     *
     * @param request - PremiumGetSubmittedInstancesRequest
     * @returns PremiumGetSubmittedInstancesResponse
     */
    async premiumGetSubmittedInstances(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumGetSubmittedInstancesHeaders({});
        return await this.premiumGetSubmittedInstancesWithOptions(request, headers, runtime);
    }
    /**
     * 查询审批中心待处理任务列表(OA高级版专享接口)
     *
     * @param request - PremiumGetTodoTasksRequest
     * @param headers - PremiumGetTodoTasksHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumGetTodoTasksResponse
     */
    async premiumGetTodoTasksWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.createBefore)) {
            query["createBefore"] = request.createBefore;
        }
        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.userId)) {
            query["userId"] = request.userId;
        }
        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: "PremiumGetTodoTasks",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processCentres/todoTasks`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumGetTodoTasksResponse({}));
    }
    /**
     * 查询审批中心待处理任务列表(OA高级版专享接口)
     *
     * @param request - PremiumGetTodoTasksRequest
     * @returns PremiumGetTodoTasksResponse
     */
    async premiumGetTodoTasks(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumGetTodoTasksHeaders({});
        return await this.premiumGetTodoTasksWithOptions(request, headers, runtime);
    }
    /**
     * 下载审批附件(OA高级版专享)
     *
     * @param request - PremiumGrantProcessInstanceForDownloadFileRequest
     * @param headers - PremiumGrantProcessInstanceForDownloadFileHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumGrantProcessInstanceForDownloadFileResponse
     */
    async premiumGrantProcessInstanceForDownloadFileWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.fileId)) {
            body["fileId"] = request.fileId;
        }
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        if (!tea_util_1.default.isUnset(request.withCommentAttatchment)) {
            body["withCommentAttatchment"] = request.withCommentAttatchment;
        }
        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: "PremiumGrantProcessInstanceForDownloadFile",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processInstances/spaces/files/urls/download`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumGrantProcessInstanceForDownloadFileResponse({}));
    }
    /**
     * 下载审批附件(OA高级版专享)
     *
     * @param request - PremiumGrantProcessInstanceForDownloadFileRequest
     * @returns PremiumGrantProcessInstanceForDownloadFileResponse
     */
    async premiumGrantProcessInstanceForDownloadFile(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumGrantProcessInstanceForDownloadFileHeaders({});
        return await this.premiumGrantProcessInstanceForDownloadFileWithOptions(request, headers, runtime);
    }
    /**
     * 创建或更新分组(高级版专享接口)
     *
     * @param request - PremiumInsertOrUpdateDirRequest
     * @param headers - PremiumInsertOrUpdateDirHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumInsertOrUpdateDirResponse
     */
    async premiumInsertOrUpdateDirWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.bizGroup)) {
            body["bizGroup"] = request.bizGroup;
        }
        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.name18n)) {
            body["name18n"] = request.name18n;
        }
        if (!tea_util_1.default.isUnset(request.operateUserId)) {
            body["operateUserId"] = request.operateUserId;
        }
        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: "PremiumInsertOrUpdateDir",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processCentres/directories`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumInsertOrUpdateDirResponse({}));
    }
    /**
     * 创建或更新分组(高级版专享接口)
     *
     * @param request - PremiumInsertOrUpdateDirRequest
     * @returns PremiumInsertOrUpdateDirResponse
     */
    async premiumInsertOrUpdateDir(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumInsertOrUpdateDirHeaders({});
        return await this.premiumInsertOrUpdateDirWithOptions(request, headers, runtime);
    }
    /**
     * 批量获取审批模板信息（包含表单和流程配置信息）(高级版专享接口)
     *
     * @param request - PremiumQuerySchemaAndProcessByCodeListRequest
     * @param headers - PremiumQuerySchemaAndProcessByCodeListHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumQuerySchemaAndProcessByCodeListResponse
     */
    async premiumQuerySchemaAndProcessByCodeListWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.processCodes)) {
            body["processCodes"] = request.processCodes;
        }
        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: "PremiumQuerySchemaAndProcessByCodeList",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processes/schemas/batchQuery`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumQuerySchemaAndProcessByCodeListResponse({}));
    }
    /**
     * 批量获取审批模板信息（包含表单和流程配置信息）(高级版专享接口)
     *
     * @param request - PremiumQuerySchemaAndProcessByCodeListRequest
     * @returns PremiumQuerySchemaAndProcessByCodeListResponse
     */
    async premiumQuerySchemaAndProcessByCodeList(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumQuerySchemaAndProcessByCodeListHeaders({});
        return await this.premiumQuerySchemaAndProcessByCodeListWithOptions(request, headers, runtime);
    }
    /**
     * 流程转交待处理任务查询(高级版专享接口)
     *
     * @param request - PremiumQueryTodoTasksByManagerRequest
     * @param headers - PremiumQueryTodoTasksByManagerHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumQueryTodoTasksByManagerResponse
     */
    async premiumQueryTodoTasksByManagerWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.actionerUserId)) {
            query["actionerUserId"] = request.actionerUserId;
        }
        if (!tea_util_1.default.isUnset(request.managerUserId)) {
            query["managerUserId"] = request.managerUserId;
        }
        if (!tea_util_1.default.isUnset(request.maxResults)) {
            query["maxResults"] = request.maxResults;
        }
        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: "PremiumQueryTodoTasksByManager",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/tasks/todoTasks`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumQueryTodoTasksByManagerResponse({}));
    }
    /**
     * 流程转交待处理任务查询(高级版专享接口)
     *
     * @param request - PremiumQueryTodoTasksByManagerRequest
     * @returns PremiumQueryTodoTasksByManagerResponse
     */
    async premiumQueryTodoTasksByManager(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumQueryTodoTasksByManagerHeaders({});
        return await this.premiumQueryTodoTasksByManagerWithOptions(request, headers, runtime);
    }
    /**
     * 批量流程审批任务转交(高级版专享接口)
     *
     * @param request - PremiumRedirectTasksByManagerRequest
     * @param headers - PremiumRedirectTasksByManagerHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumRedirectTasksByManagerResponse
     */
    async premiumRedirectTasksByManagerWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.handoverUserId)) {
            body["handoverUserId"] = request.handoverUserId;
        }
        if (!tea_util_1.default.isUnset(request.managerUserId)) {
            body["managerUserId"] = request.managerUserId;
        }
        if (!tea_util_1.default.isUnset(request.taskIds)) {
            body["taskIds"] = request.taskIds;
        }
        if (!tea_util_1.default.isUnset(request.transfereeUserId)) {
            body["transfereeUserId"] = request.transfereeUserId;
        }
        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: "PremiumRedirectTasksByManager",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/tasks/batchRedirect`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumRedirectTasksByManagerResponse({}));
    }
    /**
     * 批量流程审批任务转交(高级版专享接口)
     *
     * @param request - PremiumRedirectTasksByManagerRequest
     * @returns PremiumRedirectTasksByManagerResponse
     */
    async premiumRedirectTasksByManager(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumRedirectTasksByManagerHeaders({});
        return await this.premiumRedirectTasksByManagerWithOptions(request, headers, runtime);
    }
    /**
     * 退回OA审批任务(OA高级版专享)
     *
     * @param request - PremiumRevertTaskRequest
     * @param headers - PremiumRevertTaskHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumRevertTaskResponse
     */
    async premiumRevertTaskWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.operateUserId)) {
            body["operateUserId"] = request.operateUserId;
        }
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        if (!tea_util_1.default.isUnset(request.remark)) {
            body["remark"] = request.remark;
        }
        if (!tea_util_1.default.isUnset(request.revertAction)) {
            body["revertAction"] = request.revertAction;
        }
        if (!tea_util_1.default.isUnset(request.targetActivityId)) {
            body["targetActivityId"] = request.targetActivityId;
        }
        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: "PremiumRevertTask",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/tasks/revert`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumRevertTaskResponse({}));
    }
    /**
     * 退回OA审批任务(OA高级版专享)
     *
     * @param request - PremiumRevertTaskRequest
     * @returns PremiumRevertTaskResponse
     */
    async premiumRevertTask(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumRevertTaskHeaders({});
        return await this.premiumRevertTaskWithOptions(request, headers, runtime);
    }
    /**
     * 创建或更新数据表单模板(OA高级版专享)
     *
     * @param request - PremiumSaveFormRequest
     * @param headers - PremiumSaveFormHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumSaveFormResponse
     */
    async premiumSaveFormWithOptions(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.formComponents)) {
            body["formComponents"] = request.formComponents;
        }
        if (!tea_util_1.default.isUnset(request.name)) {
            body["name"] = request.name;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            body["processCode"] = request.processCode;
        }
        if (!tea_util_1.default.isUnset(request.userId)) {
            body["userId"] = request.userId;
        }
        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: "PremiumSaveForm",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/dataForms/templates`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumSaveFormResponse({}));
    }
    /**
     * 创建或更新数据表单模板(OA高级版专享)
     *
     * @param request - PremiumSaveFormRequest
     * @returns PremiumSaveFormResponse
     */
    async premiumSaveForm(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumSaveFormHeaders({});
        return await this.premiumSaveFormWithOptions(request, headers, runtime);
    }
    /**
     * 创建数据表单实例(OA高级版专享)
     *
     * @param request - PremiumSaveFormInstanceRequest
     * @param headers - PremiumSaveFormInstanceHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumSaveFormInstanceResponse
     */
    async premiumSaveFormInstanceWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.formComponentValueList)) {
            body["formComponentValueList"] = request.formComponentValueList;
        }
        if (!tea_util_1.default.isUnset(request.originatorUserId)) {
            body["originatorUserId"] = request.originatorUserId;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            body["processCode"] = request.processCode;
        }
        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: "PremiumSaveFormInstance",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/dataForms/formInstances/save`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumSaveFormInstanceResponse({}));
    }
    /**
     * 创建数据表单实例(OA高级版专享)
     *
     * @param request - PremiumSaveFormInstanceRequest
     * @returns PremiumSaveFormInstanceResponse
     */
    async premiumSaveFormInstance(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumSaveFormInstanceHeaders({});
        return await this.premiumSaveFormInstanceWithOptions(request, headers, runtime);
    }
    /**
     * 创建或更新流程中心外部集成模板(高级版专享接口)
     *
     * @param request - PremiumSaveIntegratedProcessRequest
     * @param headers - PremiumSaveIntegratedProcessHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumSaveIntegratedProcessResponse
     */
    async premiumSaveIntegratedProcessWithOptions(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.formComponents)) {
            body["formComponents"] = request.formComponents;
        }
        if (!tea_util_1.default.isUnset(request.name)) {
            body["name"] = request.name;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            body["processCode"] = request.processCode;
        }
        if (!tea_util_1.default.isUnset(request.processFeatureConfig)) {
            body["processFeatureConfig"] = request.processFeatureConfig;
        }
        if (!tea_util_1.default.isUnset(request.templateConfig)) {
            body["templateConfig"] = request.templateConfig;
        }
        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: "PremiumSaveIntegratedProcess",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processCentres/schemas`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumSaveIntegratedProcessResponse({}));
    }
    /**
     * 创建或更新流程中心外部集成模板(高级版专享接口)
     *
     * @param request - PremiumSaveIntegratedProcessRequest
     * @returns PremiumSaveIntegratedProcessResponse
     */
    async premiumSaveIntegratedProcess(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumSaveIntegratedProcessHeaders({});
        return await this.premiumSaveIntegratedProcessWithOptions(request, headers, runtime);
    }
    /**
     * 创建流程中心外部集成实例(高级版专享接口)
     *
     * @param request - PremiumSaveIntegratedProcessInstanceRequest
     * @param headers - PremiumSaveIntegratedProcessInstanceHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumSaveIntegratedProcessInstanceResponse
     */
    async premiumSaveIntegratedProcessInstanceWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.bizData)) {
            body["bizData"] = request.bizData;
        }
        if (!tea_util_1.default.isUnset(request.featureConfig)) {
            body["featureConfig"] = request.featureConfig;
        }
        if (!tea_util_1.default.isUnset(request.formComponentValueList)) {
            body["formComponentValueList"] = request.formComponentValueList;
        }
        if (!tea_util_1.default.isUnset(request.notifiers)) {
            body["notifiers"] = request.notifiers;
        }
        if (!tea_util_1.default.isUnset(request.originatorUserId)) {
            body["originatorUserId"] = request.originatorUserId;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            body["processCode"] = request.processCode;
        }
        if (!tea_util_1.default.isUnset(request.title)) {
            body["title"] = request.title;
        }
        if (!tea_util_1.default.isUnset(request.url)) {
            body["url"] = request.url;
        }
        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: "PremiumSaveIntegratedProcessInstance",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processCentres/instances`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumSaveIntegratedProcessInstanceResponse({}));
    }
    /**
     * 创建流程中心外部集成实例(高级版专享接口)
     *
     * @param request - PremiumSaveIntegratedProcessInstanceRequest
     * @returns PremiumSaveIntegratedProcessInstanceResponse
     */
    async premiumSaveIntegratedProcessInstance(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumSaveIntegratedProcessInstanceHeaders({});
        return await this.premiumSaveIntegratedProcessInstanceWithOptions(request, headers, runtime);
    }
    /**
     * 创建流程中心外部集成待处理任务(高级版专享接口)
     *
     * @param request - PremiumSaveIntegratedTaskRequest
     * @param headers - PremiumSaveIntegratedTaskHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumSaveIntegratedTaskResponse
     */
    async premiumSaveIntegratedTaskWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.activityId)) {
            body["activityId"] = request.activityId;
        }
        if (!tea_util_1.default.isUnset(request.featureConfig)) {
            body["featureConfig"] = request.featureConfig;
        }
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        if (!tea_util_1.default.isUnset(request.taskConfig)) {
            body["taskConfig"] = request.taskConfig;
        }
        if (!tea_util_1.default.isUnset(request.tasks)) {
            body["tasks"] = request.tasks;
        }
        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: "PremiumSaveIntegratedTask",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processCentres/tasks`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumSaveIntegratedTaskResponse({}));
    }
    /**
     * 创建流程中心外部集成待处理任务(高级版专享接口)
     *
     * @param request - PremiumSaveIntegratedTaskRequest
     * @returns PremiumSaveIntegratedTaskResponse
     */
    async premiumSaveIntegratedTask(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumSaveIntegratedTaskHeaders({});
        return await this.premiumSaveIntegratedTaskWithOptions(request, headers, runtime);
    }
    /**
     * 更新数据表单实例(OA高级版专享)
     *
     * @param request - PremiumUpdateFormInstanceRequest
     * @param headers - PremiumUpdateFormInstanceHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumUpdateFormInstanceResponse
     */
    async premiumUpdateFormInstanceWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.formComponentValueList)) {
            body["formComponentValueList"] = request.formComponentValueList;
        }
        if (!tea_util_1.default.isUnset(request.formInstanceIds)) {
            body["formInstanceIds"] = request.formInstanceIds;
        }
        if (!tea_util_1.default.isUnset(request.originatorUserId)) {
            body["originatorUserId"] = request.originatorUserId;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            body["processCode"] = request.processCode;
        }
        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: "PremiumUpdateFormInstance",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/dataForms/formInstances`,
            method: "PUT",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumUpdateFormInstanceResponse({}));
    }
    /**
     * 更新数据表单实例(OA高级版专享)
     *
     * @param request - PremiumUpdateFormInstanceRequest
     * @returns PremiumUpdateFormInstanceResponse
     */
    async premiumUpdateFormInstance(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumUpdateFormInstanceHeaders({});
        return await this.premiumUpdateFormInstanceWithOptions(request, headers, runtime);
    }
    /**
     * 更新审批实例(OA高级版专享)
     *
     * @param request - PremiumUpdateProcessInstanceVariablesRequest
     * @param headers - PremiumUpdateProcessInstanceVariablesHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PremiumUpdateProcessInstanceVariablesResponse
     */
    async premiumUpdateProcessInstanceVariablesWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.opUserId)) {
            body["opUserId"] = request.opUserId;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            body["processCode"] = request.processCode;
        }
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        if (!tea_util_1.default.isUnset(request.remark)) {
            body["remark"] = request.remark;
        }
        if (!tea_util_1.default.isUnset(request.variables)) {
            body["variables"] = request.variables;
        }
        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: "PremiumUpdateProcessInstanceVariables",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/premium/processInstances`,
            method: "PUT",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PremiumUpdateProcessInstanceVariablesResponse({}));
    }
    /**
     * 更新审批实例(OA高级版专享)
     *
     * @param request - PremiumUpdateProcessInstanceVariablesRequest
     * @returns PremiumUpdateProcessInstanceVariablesResponse
     */
    async premiumUpdateProcessInstanceVariables(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PremiumUpdateProcessInstanceVariablesHeaders({});
        return await this.premiumUpdateProcessInstanceVariablesWithOptions(request, headers, runtime);
    }
    /**
     * 审批流程预测
     *
     * @param request - ProcessForecastRequest
     * @param headers - ProcessForecastHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns ProcessForecastResponse
     */
    async processForecastWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.deptId)) {
            body["deptId"] = request.deptId;
        }
        if (!tea_util_1.default.isUnset(request.formComponentValues)) {
            body["formComponentValues"] = request.formComponentValues;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            body["processCode"] = request.processCode;
        }
        if (!tea_util_1.default.isUnset(request.userId)) {
            body["userId"] = request.userId;
        }
        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: "ProcessForecast",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processes/forecast`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new ProcessForecastResponse({}));
    }
    /**
     * 审批流程预测
     *
     * @param request - ProcessForecastRequest
     * @returns ProcessForecastResponse
     */
    async processForecast(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new ProcessForecastHeaders({});
        return await this.processForecastWithOptions(request, headers, runtime);
    }
    /**
     * 根据processCode分页获取表单数据
     *
     * @param request - QueryAllFormInstancesRequest
     * @param headers - QueryAllFormInstancesHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns QueryAllFormInstancesResponse
     */
    async queryAllFormInstancesWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.appUuid)) {
            query["appUuid"] = request.appUuid;
        }
        if (!tea_util_1.default.isUnset(request.formCode)) {
            query["formCode"] = request.formCode;
        }
        if (!tea_util_1.default.isUnset(request.maxResults)) {
            query["maxResults"] = request.maxResults;
        }
        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: "QueryAllFormInstances",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/forms/pages/instances`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new QueryAllFormInstancesResponse({}));
    }
    /**
     * 根据processCode分页获取表单数据
     *
     * @param request - QueryAllFormInstancesRequest
     * @returns QueryAllFormInstancesResponse
     */
    async queryAllFormInstances(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new QueryAllFormInstancesHeaders({});
        return await this.queryAllFormInstancesWithOptions(request, headers, runtime);
    }
    /**
     * 批量查询审批流程实例
     *
     * @param request - QueryAllProcessInstancesRequest
     * @param headers - QueryAllProcessInstancesHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns QueryAllProcessInstancesResponse
     */
    async queryAllProcessInstancesWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.appUuid)) {
            query["appUuid"] = request.appUuid;
        }
        if (!tea_util_1.default.isUnset(request.endTimeInMills)) {
            query["endTimeInMills"] = request.endTimeInMills;
        }
        if (!tea_util_1.default.isUnset(request.maxResults)) {
            query["maxResults"] = request.maxResults;
        }
        if (!tea_util_1.default.isUnset(request.nextToken)) {
            query["nextToken"] = request.nextToken;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            query["processCode"] = request.processCode;
        }
        if (!tea_util_1.default.isUnset(request.startTimeInMills)) {
            query["startTimeInMills"] = request.startTimeInMills;
        }
        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: "QueryAllProcessInstances",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processes/pages/instances`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new QueryAllProcessInstancesResponse({}));
    }
    /**
     * 批量查询审批流程实例
     *
     * @param request - QueryAllProcessInstancesRequest
     * @returns QueryAllProcessInstancesResponse
     */
    async queryAllProcessInstances(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new QueryAllProcessInstancesHeaders({});
        return await this.queryAllProcessInstancesWithOptions(request, headers, runtime);
    }
    /**
     * 根据业务标识查询表单描述信息
     *
     * @param request - QueryFormByBizTypeRequest
     * @param headers - QueryFormByBizTypeHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns QueryFormByBizTypeResponse
     */
    async queryFormByBizTypeWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.appUuid)) {
            body["appUuid"] = request.appUuid;
        }
        if (!tea_util_1.default.isUnset(request.bizTypes)) {
            body["bizTypes"] = request.bizTypes;
        }
        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: "QueryFormByBizType",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/forms/forminfos/query`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new QueryFormByBizTypeResponse({}));
    }
    /**
     * 根据业务标识查询表单描述信息
     *
     * @param request - QueryFormByBizTypeRequest
     * @returns QueryFormByBizTypeResponse
     */
    async queryFormByBizType(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new QueryFormByBizTypeHeaders({});
        return await this.queryFormByBizTypeWithOptions(request, headers, runtime);
    }
    /**
     * 查询数据表单
     *
     * @param request - QueryFormInstanceRequest
     * @param headers - QueryFormInstanceHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns QueryFormInstanceResponse
     */
    async queryFormInstanceWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.appUuid)) {
            query["appUuid"] = request.appUuid;
        }
        if (!tea_util_1.default.isUnset(request.formCode)) {
            query["formCode"] = request.formCode;
        }
        if (!tea_util_1.default.isUnset(request.formInstanceId)) {
            query["formInstanceId"] = request.formInstanceId;
        }
        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: "QueryFormInstance",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/forms/instances`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new QueryFormInstanceResponse({}));
    }
    /**
     * 查询数据表单
     *
     * @param request - QueryFormInstanceRequest
     * @returns QueryFormInstanceResponse
     */
    async queryFormInstance(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new QueryFormInstanceHeaders({});
        return await this.queryFormInstanceWithOptions(request, headers, runtime);
    }
    /**
     * 查询通过流程中心集成的OA审批任务
     *
     * @param request - QueryIntegratedTodoTaskRequest
     * @param headers - QueryIntegratedTodoTaskHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns QueryIntegratedTodoTaskResponse
     */
    async queryIntegratedTodoTaskWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.createBefore)) {
            query["createBefore"] = request.createBefore;
        }
        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.userId)) {
            query["userId"] = request.userId;
        }
        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: "QueryIntegratedTodoTask",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processCentres/todoTasks`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new QueryIntegratedTodoTaskResponse({}));
    }
    /**
     * 查询通过流程中心集成的OA审批任务
     *
     * @param request - QueryIntegratedTodoTaskRequest
     * @returns QueryIntegratedTodoTaskResponse
     */
    async queryIntegratedTodoTask(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new QueryIntegratedTodoTaskHeaders({});
        return await this.queryIntegratedTodoTaskWithOptions(request, headers, runtime);
    }
    /**
     * 根据业务标识查询模板
     *
     * @param request - QueryProcessByBizCategoryIdRequest
     * @param headers - QueryProcessByBizCategoryIdHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns QueryProcessByBizCategoryIdResponse
     */
    async queryProcessByBizCategoryIdWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.bizType)) {
            query["bizType"] = request.bizType;
        }
        if (!tea_util_1.default.isUnset(request.userId)) {
            query["userId"] = request.userId;
        }
        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: "QueryProcessByBizCategoryId",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processes/categories/templates`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new QueryProcessByBizCategoryIdResponse({}));
    }
    /**
     * 根据业务标识查询模板
     *
     * @param request - QueryProcessByBizCategoryIdRequest
     * @returns QueryProcessByBizCategoryIdResponse
     */
    async queryProcessByBizCategoryId(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new QueryProcessByBizCategoryIdHeaders({});
        return await this.queryProcessByBizCategoryIdWithOptions(request, headers, runtime);
    }
    /**
     * 蓝凌获取schema和流程信息
     *
     * @param request - QuerySchemaAndProcessRequest
     * @param headers - QuerySchemaAndProcessHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns QuerySchemaAndProcessResponse
     */
    async querySchemaAndProcessWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.appUuid)) {
            query["appUuid"] = request.appUuid;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            query["processCode"] = request.processCode;
        }
        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: "QuerySchemaAndProcess",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/forms/schemaAndProcess`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new QuerySchemaAndProcessResponse({}));
    }
    /**
     * 蓝凌获取schema和流程信息
     *
     * @param request - QuerySchemaAndProcessRequest
     * @returns QuerySchemaAndProcessResponse
     */
    async querySchemaAndProcess(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new QuerySchemaAndProcessHeaders({});
        return await this.querySchemaAndProcessWithOptions(request, headers, runtime);
    }
    /**
     * 通过 processCode 获取表单 schema 信息
     *
     * @param request - QuerySchemaByProcessCodeRequest
     * @param headers - QuerySchemaByProcessCodeHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns QuerySchemaByProcessCodeResponse
     */
    async querySchemaByProcessCodeWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.appUuid)) {
            query["appUuid"] = request.appUuid;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            query["processCode"] = request.processCode;
        }
        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: "QuerySchemaByProcessCode",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/forms/schemas/processCodes`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new QuerySchemaByProcessCodeResponse({}));
    }
    /**
     * 通过 processCode 获取表单 schema 信息
     *
     * @param request - QuerySchemaByProcessCodeRequest
     * @returns QuerySchemaByProcessCodeResponse
     */
    async querySchemaByProcessCode(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new QuerySchemaByProcessCodeHeaders({});
        return await this.querySchemaByProcessCodeWithOptions(request, headers, runtime);
    }
    /**
     * 转交OA审批任务
     *
     * @param request - RedirectWorkflowTaskRequest
     * @param headers - RedirectWorkflowTaskHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns RedirectWorkflowTaskResponse
     */
    async redirectWorkflowTaskWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.actionName)) {
            body["actionName"] = request.actionName;
        }
        if (!tea_util_1.default.isUnset(request.file)) {
            body["file"] = request.file;
        }
        if (!tea_util_1.default.isUnset(request.operateUserId)) {
            body["operateUserId"] = request.operateUserId;
        }
        if (!tea_util_1.default.isUnset(request.remark)) {
            body["remark"] = request.remark;
        }
        if (!tea_util_1.default.isUnset(request.taskId)) {
            body["taskId"] = request.taskId;
        }
        if (!tea_util_1.default.isUnset(request.toUserId)) {
            body["toUserId"] = request.toUserId;
        }
        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: "RedirectWorkflowTask",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/tasks/redirect`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new RedirectWorkflowTaskResponse({}));
    }
    /**
     * 转交OA审批任务
     *
     * @param request - RedirectWorkflowTaskRequest
     * @returns RedirectWorkflowTaskResponse
     */
    async redirectWorkflowTask(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new RedirectWorkflowTaskHeaders({});
        return await this.redirectWorkflowTaskWithOptions(request, headers, runtime);
    }
    /**
     * 创建实例
     *
     * @param request - SaveIntegratedInstanceRequest
     * @param headers - SaveIntegratedInstanceHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns SaveIntegratedInstanceResponse
     */
    async saveIntegratedInstanceWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.bizData)) {
            body["bizData"] = request.bizData;
        }
        if (!tea_util_1.default.isUnset(request.featureConfig)) {
            body["featureConfig"] = request.featureConfig;
        }
        if (!tea_util_1.default.isUnset(request.formComponentValueList)) {
            body["formComponentValueList"] = request.formComponentValueList;
        }
        if (!tea_util_1.default.isUnset(request.notifiers)) {
            body["notifiers"] = request.notifiers;
        }
        if (!tea_util_1.default.isUnset(request.originatorUserId)) {
            body["originatorUserId"] = request.originatorUserId;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            body["processCode"] = request.processCode;
        }
        if (!tea_util_1.default.isUnset(request.title)) {
            body["title"] = request.title;
        }
        if (!tea_util_1.default.isUnset(request.url)) {
            body["url"] = request.url;
        }
        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: "SaveIntegratedInstance",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processCentres/instances`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new SaveIntegratedInstanceResponse({}));
    }
    /**
     * 创建实例
     *
     * @param request - SaveIntegratedInstanceRequest
     * @returns SaveIntegratedInstanceResponse
     */
    async saveIntegratedInstance(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new SaveIntegratedInstanceHeaders({});
        return await this.saveIntegratedInstanceWithOptions(request, headers, runtime);
    }
    /**
     * 创建或更新审批模板
     *
     * @param request - SaveProcessRequest
     * @param headers - SaveProcessHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns SaveProcessResponse
     */
    async saveProcessWithOptions(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.formComponents)) {
            body["formComponents"] = request.formComponents;
        }
        if (!tea_util_1.default.isUnset(request.name)) {
            body["name"] = request.name;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            body["processCode"] = request.processCode;
        }
        if (!tea_util_1.default.isUnset(request.processFeatureConfig)) {
            body["processFeatureConfig"] = request.processFeatureConfig;
        }
        if (!tea_util_1.default.isUnset(request.templateConfig)) {
            body["templateConfig"] = request.templateConfig;
        }
        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: "SaveProcess",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processCentres/schemas`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new SaveProcessResponse({}));
    }
    /**
     * 创建或更新审批模板
     *
     * @param request - SaveProcessRequest
     * @returns SaveProcessResponse
     */
    async saveProcess(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new SaveProcessHeaders({});
        return await this.saveProcessWithOptions(request, headers, runtime);
    }
    /**
     * 创建审批实例
     *
     * @param request - StartProcessInstanceRequest
     * @param headers - StartProcessInstanceHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns StartProcessInstanceResponse
     */
    async startProcessInstanceWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.approvers)) {
            body["approvers"] = request.approvers;
        }
        if (!tea_util_1.default.isUnset(request.bizDetailPageUrl)) {
            body["bizDetailPageUrl"] = request.bizDetailPageUrl;
        }
        if (!tea_util_1.default.isUnset(request.ccList)) {
            body["ccList"] = request.ccList;
        }
        if (!tea_util_1.default.isUnset(request.ccPosition)) {
            body["ccPosition"] = request.ccPosition;
        }
        if (!tea_util_1.default.isUnset(request.deptId)) {
            body["deptId"] = request.deptId;
        }
        if (!tea_util_1.default.isUnset(request.formComponentValues)) {
            body["formComponentValues"] = request.formComponentValues;
        }
        if (!tea_util_1.default.isUnset(request.microappAgentId)) {
            body["microappAgentId"] = request.microappAgentId;
        }
        if (!tea_util_1.default.isUnset(request.originatorUserId)) {
            body["originatorUserId"] = request.originatorUserId;
        }
        if (!tea_util_1.default.isUnset(request.processCode)) {
            body["processCode"] = request.processCode;
        }
        if (!tea_util_1.default.isUnset(request.targetSelectActioners)) {
            body["targetSelectActioners"] = request.targetSelectActioners;
        }
        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: "StartProcessInstance",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processInstances`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new StartProcessInstanceResponse({}));
    }
    /**
     * 创建审批实例
     *
     * @param request - StartProcessInstanceRequest
     * @returns StartProcessInstanceResponse
     */
    async startProcessInstance(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new StartProcessInstanceHeaders({});
        return await this.startProcessInstanceWithOptions(request, headers, runtime);
    }
    /**
     * 撤销审批实例
     *
     * @param request - TerminateProcessInstanceRequest
     * @param headers - TerminateProcessInstanceHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns TerminateProcessInstanceResponse
     */
    async terminateProcessInstanceWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.isSystem)) {
            body["isSystem"] = request.isSystem;
        }
        if (!tea_util_1.default.isUnset(request.operatingUserId)) {
            body["operatingUserId"] = request.operatingUserId;
        }
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        if (!tea_util_1.default.isUnset(request.remark)) {
            body["remark"] = request.remark;
        }
        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: "TerminateProcessInstance",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processInstances/terminate`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new TerminateProcessInstanceResponse({}));
    }
    /**
     * 撤销审批实例
     *
     * @param request - TerminateProcessInstanceRequest
     * @returns TerminateProcessInstanceResponse
     */
    async terminateProcessInstance(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new TerminateProcessInstanceHeaders({});
        return await this.terminateProcessInstanceWithOptions(request, headers, runtime);
    }
    /**
     * 流程转交待处理任务查询
     *
     * @param request - TodoTasksRequest
     * @param headers - TodoTasksHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns TodoTasksResponse
     */
    async todoTasksWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.actionerUserId)) {
            query["actionerUserId"] = request.actionerUserId;
        }
        if (!tea_util_1.default.isUnset(request.managerUserId)) {
            query["managerUserId"] = request.managerUserId;
        }
        if (!tea_util_1.default.isUnset(request.maxResults)) {
            query["maxResults"] = request.maxResults;
        }
        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: "TodoTasks",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/tasks/todoTasks`,
            method: "GET",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new TodoTasksResponse({}));
    }
    /**
     * 流程转交待处理任务查询
     *
     * @param request - TodoTasksRequest
     * @returns TodoTasksResponse
     */
    async todoTasks(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new TodoTasksHeaders({});
        return await this.todoTasksWithOptions(request, headers, runtime);
    }
    /**
     * 更新流程中心任务状态
     *
     * @param request - UpdateIntegratedTaskRequest
     * @param headers - UpdateIntegratedTaskHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns UpdateIntegratedTaskResponse
     */
    async updateIntegratedTaskWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        if (!tea_util_1.default.isUnset(request.tasks)) {
            body["tasks"] = request.tasks;
        }
        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: "UpdateIntegratedTask",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processCentres/tasks`,
            method: "PUT",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new UpdateIntegratedTaskResponse({}));
    }
    /**
     * 更新流程中心任务状态
     *
     * @param request - UpdateIntegratedTaskRequest
     * @returns UpdateIntegratedTaskResponse
     */
    async updateIntegratedTask(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new UpdateIntegratedTaskHeaders({});
        return await this.updateIntegratedTaskWithOptions(request, headers, runtime);
    }
    /**
     * 更新实例状态
     *
     * @param request - UpdateProcessInstanceRequest
     * @param headers - UpdateProcessInstanceHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns UpdateProcessInstanceResponse
     */
    async updateProcessInstanceWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.notifiers)) {
            body["notifiers"] = request.notifiers;
        }
        if (!tea_util_1.default.isUnset(request.processInstanceId)) {
            body["processInstanceId"] = request.processInstanceId;
        }
        if (!tea_util_1.default.isUnset(request.result)) {
            body["result"] = request.result;
        }
        if (!tea_util_1.default.isUnset(request.status)) {
            body["status"] = request.status;
        }
        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: "UpdateProcessInstance",
            version: "workflow_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/workflow/processCentres/instances`,
            method: "PUT",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new UpdateProcessInstanceResponse({}));
    }
    /**
     * 更新实例状态
     *
     * @param request - UpdateProcessInstanceRequest
     * @returns UpdateProcessInstanceResponse
     */
    async updateProcessInstance(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new UpdateProcessInstanceHeaders({});
        return await this.updateProcessInstanceWithOptions(request, headers, runtime);
    }
}
exports.default = Client;
//# sourceMappingURL=client.js.map