"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.PediaWordsUpdateRequestRelatedLink = exports.PediaWordsUpdateRequestRelatedDoc = exports.PediaWordsUpdateRequestPicList = exports.PediaWordsUpdateRequestContactList = exports.PediaWordsUpdateRequestAppLink = exports.PediaWordsSearchResponseBodyData = exports.PediaWordsSearchResponseBodyDataRelatedLink = exports.PediaWordsSearchResponseBodyDataRelatedDoc = exports.PediaWordsSearchResponseBodyDataPicList = exports.PediaWordsSearchResponseBodyDataContactList = exports.PediaWordsSearchResponseBodyDataAppLink = exports.PediaWordsQueryResponseBodyData = exports.PediaWordsQueryResponseBodyDataRelatedLink = exports.PediaWordsQueryResponseBodyDataRelatedDoc = exports.PediaWordsQueryResponseBodyDataPicList = exports.PediaWordsQueryResponseBodyDataContactList = exports.PediaWordsQueryResponseBodyDataAppLink = exports.PediaWordsAddRequestRelatedLink = exports.PediaWordsAddRequestRelatedDoc = exports.PediaWordsAddRequestPicList = exports.PediaWordsAddRequestContactList = exports.PediaWordsUpdateResponse = exports.PediaWordsUpdateResponseBody = exports.PediaWordsUpdateRequest = exports.PediaWordsUpdateHeaders = exports.PediaWordsSearchResponse = exports.PediaWordsSearchResponseBody = exports.PediaWordsSearchRequest = exports.PediaWordsSearchHeaders = exports.PediaWordsQueryResponse = exports.PediaWordsQueryResponseBody = exports.PediaWordsQueryRequest = exports.PediaWordsQueryHeaders = exports.PediaWordsDeleteResponse = exports.PediaWordsDeleteResponseBody = exports.PediaWordsDeleteRequest = exports.PediaWordsDeleteHeaders = exports.PediaWordsApproveResponse = exports.PediaWordsApproveResponseBody = exports.PediaWordsApproveRequest = exports.PediaWordsApproveHeaders = exports.PediaWordsAddResponse = exports.PediaWordsAddResponseBody = exports.PediaWordsAddRequest = exports.PediaWordsAddHeaders = 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 PediaWordsAddHeaders 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.PediaWordsAddHeaders = PediaWordsAddHeaders;
class PediaWordsAddRequest extends $tea.Model {
    static names() {
        return {
            contactList: 'contactList',
            highLightWordAlias: 'highLightWordAlias',
            picList: 'picList',
            relatedDoc: 'relatedDoc',
            relatedLink: 'relatedLink',
            userId: 'userId',
            wordAlias: 'wordAlias',
            wordName: 'wordName',
            wordParaphrase: 'wordParaphrase',
        };
    }
    static types() {
        return {
            contactList: { 'type': 'array', 'itemType': PediaWordsAddRequestContactList },
            highLightWordAlias: { 'type': 'array', 'itemType': 'string' },
            picList: { 'type': 'array', 'itemType': PediaWordsAddRequestPicList },
            relatedDoc: { 'type': 'array', 'itemType': PediaWordsAddRequestRelatedDoc },
            relatedLink: { 'type': 'array', 'itemType': PediaWordsAddRequestRelatedLink },
            userId: 'string',
            wordAlias: { 'type': 'array', 'itemType': 'string' },
            wordName: 'string',
            wordParaphrase: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsAddRequest = PediaWordsAddRequest;
class PediaWordsAddResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
            uuid: 'uuid',
        };
    }
    static types() {
        return {
            success: 'boolean',
            uuid: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsAddResponseBody = PediaWordsAddResponseBody;
class PediaWordsAddResponse 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: PediaWordsAddResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsAddResponse = PediaWordsAddResponse;
class PediaWordsApproveHeaders 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.PediaWordsApproveHeaders = PediaWordsApproveHeaders;
class PediaWordsApproveRequest extends $tea.Model {
    static names() {
        return {
            aliDocHighLight: 'aliDocHighLight',
            approveReason: 'approveReason',
            approveStatus: 'approveStatus',
            imHighLight: 'imHighLight',
            simHighLight: 'simHighLight',
            userId: 'userId',
            uuid: 'uuid',
        };
    }
    static types() {
        return {
            aliDocHighLight: 'boolean',
            approveReason: 'string',
            approveStatus: 'string',
            imHighLight: 'boolean',
            simHighLight: 'boolean',
            userId: 'string',
            uuid: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsApproveRequest = PediaWordsApproveRequest;
class PediaWordsApproveResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
        };
    }
    static types() {
        return {
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsApproveResponseBody = PediaWordsApproveResponseBody;
class PediaWordsApproveResponse 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: PediaWordsApproveResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsApproveResponse = PediaWordsApproveResponse;
class PediaWordsDeleteHeaders 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.PediaWordsDeleteHeaders = PediaWordsDeleteHeaders;
class PediaWordsDeleteRequest extends $tea.Model {
    static names() {
        return {
            userId: 'userId',
            uuid: 'uuid',
        };
    }
    static types() {
        return {
            userId: 'string',
            uuid: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsDeleteRequest = PediaWordsDeleteRequest;
class PediaWordsDeleteResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
            uuid: 'uuid',
        };
    }
    static types() {
        return {
            success: 'boolean',
            uuid: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsDeleteResponseBody = PediaWordsDeleteResponseBody;
class PediaWordsDeleteResponse 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: PediaWordsDeleteResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsDeleteResponse = PediaWordsDeleteResponse;
class PediaWordsQueryHeaders 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.PediaWordsQueryHeaders = PediaWordsQueryHeaders;
class PediaWordsQueryRequest extends $tea.Model {
    static names() {
        return {
            userId: 'userId',
            uuid: 'uuid',
        };
    }
    static types() {
        return {
            userId: 'string',
            uuid: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsQueryRequest = PediaWordsQueryRequest;
class PediaWordsQueryResponseBody extends $tea.Model {
    static names() {
        return {
            data: 'data',
            success: 'success',
        };
    }
    static types() {
        return {
            data: PediaWordsQueryResponseBodyData,
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsQueryResponseBody = PediaWordsQueryResponseBody;
class PediaWordsQueryResponse 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: PediaWordsQueryResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsQueryResponse = PediaWordsQueryResponse;
class PediaWordsSearchHeaders 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.PediaWordsSearchHeaders = PediaWordsSearchHeaders;
class PediaWordsSearchRequest extends $tea.Model {
    static names() {
        return {
            pageNumber: 'pageNumber',
            pageSize: 'pageSize',
            status: 'status',
            userId: 'userId',
            wordName: 'wordName',
        };
    }
    static types() {
        return {
            pageNumber: 'number',
            pageSize: 'number',
            status: 'string',
            userId: 'string',
            wordName: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsSearchRequest = PediaWordsSearchRequest;
class PediaWordsSearchResponseBody extends $tea.Model {
    static names() {
        return {
            data: 'data',
            success: 'success',
        };
    }
    static types() {
        return {
            data: { 'type': 'array', 'itemType': PediaWordsSearchResponseBodyData },
            success: 'boolean',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsSearchResponseBody = PediaWordsSearchResponseBody;
class PediaWordsSearchResponse 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: PediaWordsSearchResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsSearchResponse = PediaWordsSearchResponse;
class PediaWordsUpdateHeaders 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.PediaWordsUpdateHeaders = PediaWordsUpdateHeaders;
class PediaWordsUpdateRequest extends $tea.Model {
    static names() {
        return {
            appLink: 'appLink',
            contactList: 'contactList',
            highLightWordAlias: 'highLightWordAlias',
            picList: 'picList',
            relatedDoc: 'relatedDoc',
            relatedLink: 'relatedLink',
            userId: 'userId',
            uuid: 'uuid',
            wordAlias: 'wordAlias',
            wordName: 'wordName',
            wordParaphrase: 'wordParaphrase',
        };
    }
    static types() {
        return {
            appLink: { 'type': 'array', 'itemType': PediaWordsUpdateRequestAppLink },
            contactList: { 'type': 'array', 'itemType': PediaWordsUpdateRequestContactList },
            highLightWordAlias: { 'type': 'array', 'itemType': 'string' },
            picList: { 'type': 'array', 'itemType': PediaWordsUpdateRequestPicList },
            relatedDoc: { 'type': 'array', 'itemType': PediaWordsUpdateRequestRelatedDoc },
            relatedLink: { 'type': 'array', 'itemType': PediaWordsUpdateRequestRelatedLink },
            userId: 'string',
            uuid: 'number',
            wordAlias: { 'type': 'array', 'itemType': 'string' },
            wordName: 'string',
            wordParaphrase: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsUpdateRequest = PediaWordsUpdateRequest;
class PediaWordsUpdateResponseBody extends $tea.Model {
    static names() {
        return {
            success: 'success',
            uuid: 'uuid',
        };
    }
    static types() {
        return {
            success: 'boolean',
            uuid: 'number',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsUpdateResponseBody = PediaWordsUpdateResponseBody;
class PediaWordsUpdateResponse 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: PediaWordsUpdateResponseBody,
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsUpdateResponse = PediaWordsUpdateResponse;
class PediaWordsAddRequestContactList extends $tea.Model {
    static names() {
        return {
            avatarMediaId: 'avatarMediaId',
            nickName: 'nickName',
            userId: 'userId',
        };
    }
    static types() {
        return {
            avatarMediaId: 'string',
            nickName: 'string',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsAddRequestContactList = PediaWordsAddRequestContactList;
class PediaWordsAddRequestPicList extends $tea.Model {
    static names() {
        return {
            mediaIdUrl: 'mediaIdUrl',
        };
    }
    static types() {
        return {
            mediaIdUrl: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsAddRequestPicList = PediaWordsAddRequestPicList;
class PediaWordsAddRequestRelatedDoc extends $tea.Model {
    static names() {
        return {
            link: 'link',
            name: 'name',
            type: 'type',
        };
    }
    static types() {
        return {
            link: 'string',
            name: 'string',
            type: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsAddRequestRelatedDoc = PediaWordsAddRequestRelatedDoc;
class PediaWordsAddRequestRelatedLink extends $tea.Model {
    static names() {
        return {
            link: 'link',
            name: 'name',
        };
    }
    static types() {
        return {
            link: 'string',
            name: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsAddRequestRelatedLink = PediaWordsAddRequestRelatedLink;
class PediaWordsQueryResponseBodyDataAppLink extends $tea.Model {
    static names() {
        return {
            appName: 'appName',
            iconLink: 'iconLink',
            pcLink: 'pcLink',
            phoneLink: 'phoneLink',
        };
    }
    static types() {
        return {
            appName: 'string',
            iconLink: 'string',
            pcLink: 'string',
            phoneLink: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsQueryResponseBodyDataAppLink = PediaWordsQueryResponseBodyDataAppLink;
class PediaWordsQueryResponseBodyDataContactList extends $tea.Model {
    static names() {
        return {
            avatarMediaId: 'avatarMediaId',
            nickName: 'nickName',
            userId: 'userId',
        };
    }
    static types() {
        return {
            avatarMediaId: 'string',
            nickName: 'string',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsQueryResponseBodyDataContactList = PediaWordsQueryResponseBodyDataContactList;
class PediaWordsQueryResponseBodyDataPicList extends $tea.Model {
    static names() {
        return {
            mediaIdUrl: 'mediaIdUrl',
        };
    }
    static types() {
        return {
            mediaIdUrl: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsQueryResponseBodyDataPicList = PediaWordsQueryResponseBodyDataPicList;
class PediaWordsQueryResponseBodyDataRelatedDoc extends $tea.Model {
    static names() {
        return {
            link: 'link',
            name: 'name',
            type: 'type',
        };
    }
    static types() {
        return {
            link: 'string',
            name: 'string',
            type: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsQueryResponseBodyDataRelatedDoc = PediaWordsQueryResponseBodyDataRelatedDoc;
class PediaWordsQueryResponseBodyDataRelatedLink extends $tea.Model {
    static names() {
        return {
            link: 'link',
            name: 'name',
        };
    }
    static types() {
        return {
            link: 'string',
            name: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsQueryResponseBodyDataRelatedLink = PediaWordsQueryResponseBodyDataRelatedLink;
class PediaWordsQueryResponseBodyData extends $tea.Model {
    static names() {
        return {
            appLink: 'appLink',
            approveName: 'approveName',
            contactList: 'contactList',
            contacts: 'contacts',
            creatorName: 'creatorName',
            gmtCreate: 'gmtCreate',
            gmtModify: 'gmtModify',
            highLightWordAlias: 'highLightWordAlias',
            imHighLight: 'imHighLight',
            parentUuid: 'parentUuid',
            picList: 'picList',
            relatedDoc: 'relatedDoc',
            relatedLink: 'relatedLink',
            simHighLight: 'simHighLight',
            simpleWordParaphrase: 'simpleWordParaphrase',
            tagsList: 'tagsList',
            updaterName: 'updaterName',
            userId: 'userId',
            uuid: 'uuid',
            wordAlias: 'wordAlias',
            wordName: 'wordName',
            wordParaphrase: 'wordParaphrase',
        };
    }
    static types() {
        return {
            appLink: { 'type': 'array', 'itemType': PediaWordsQueryResponseBodyDataAppLink },
            approveName: 'string',
            contactList: { 'type': 'array', 'itemType': PediaWordsQueryResponseBodyDataContactList },
            contacts: { 'type': 'array', 'itemType': 'string' },
            creatorName: 'string',
            gmtCreate: 'number',
            gmtModify: 'number',
            highLightWordAlias: { 'type': 'array', 'itemType': 'string' },
            imHighLight: 'boolean',
            parentUuid: 'number',
            picList: { 'type': 'array', 'itemType': PediaWordsQueryResponseBodyDataPicList },
            relatedDoc: { 'type': 'array', 'itemType': PediaWordsQueryResponseBodyDataRelatedDoc },
            relatedLink: { 'type': 'array', 'itemType': PediaWordsQueryResponseBodyDataRelatedLink },
            simHighLight: 'boolean',
            simpleWordParaphrase: 'string',
            tagsList: { 'type': 'array', 'itemType': 'string' },
            updaterName: 'string',
            userId: 'string',
            uuid: 'number',
            wordAlias: { 'type': 'array', 'itemType': 'string' },
            wordName: 'string',
            wordParaphrase: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsQueryResponseBodyData = PediaWordsQueryResponseBodyData;
class PediaWordsSearchResponseBodyDataAppLink extends $tea.Model {
    static names() {
        return {
            appName: 'appName',
            iconLink: 'iconLink',
            pcLink: 'pcLink',
            phoneLink: 'phoneLink',
        };
    }
    static types() {
        return {
            appName: 'string',
            iconLink: 'string',
            pcLink: 'string',
            phoneLink: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsSearchResponseBodyDataAppLink = PediaWordsSearchResponseBodyDataAppLink;
class PediaWordsSearchResponseBodyDataContactList extends $tea.Model {
    static names() {
        return {
            avatarMediaId: 'avatarMediaId',
            nickName: 'nickName',
            userId: 'userId',
        };
    }
    static types() {
        return {
            avatarMediaId: 'string',
            nickName: 'string',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsSearchResponseBodyDataContactList = PediaWordsSearchResponseBodyDataContactList;
class PediaWordsSearchResponseBodyDataPicList extends $tea.Model {
    static names() {
        return {
            mediaIdUrl: 'mediaIdUrl',
        };
    }
    static types() {
        return {
            mediaIdUrl: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsSearchResponseBodyDataPicList = PediaWordsSearchResponseBodyDataPicList;
class PediaWordsSearchResponseBodyDataRelatedDoc extends $tea.Model {
    static names() {
        return {
            link: 'link',
            name: 'name',
            type: 'type',
        };
    }
    static types() {
        return {
            link: 'string',
            name: 'string',
            type: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsSearchResponseBodyDataRelatedDoc = PediaWordsSearchResponseBodyDataRelatedDoc;
class PediaWordsSearchResponseBodyDataRelatedLink extends $tea.Model {
    static names() {
        return {
            link: 'link',
            name: 'name',
            type: 'type',
        };
    }
    static types() {
        return {
            link: 'string',
            name: 'string',
            type: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsSearchResponseBodyDataRelatedLink = PediaWordsSearchResponseBodyDataRelatedLink;
class PediaWordsSearchResponseBodyData extends $tea.Model {
    static names() {
        return {
            appLink: 'appLink',
            approveName: 'approveName',
            contactList: 'contactList',
            contacts: 'contacts',
            creatorName: 'creatorName',
            gmtCreate: 'gmtCreate',
            gmtModify: 'gmtModify',
            highLightWordAlias: 'highLightWordAlias',
            imHighLight: 'imHighLight',
            parentUuid: 'parentUuid',
            picList: 'picList',
            relatedDoc: 'relatedDoc',
            relatedLink: 'relatedLink',
            simHighLight: 'simHighLight',
            simpleWordParaphrase: 'simpleWordParaphrase',
            tagsList: 'tagsList',
            updaterName: 'updaterName',
            userId: 'userId',
            uuid: 'uuid',
            wordAlias: 'wordAlias',
            wordName: 'wordName',
            wordParaphrase: 'wordParaphrase',
        };
    }
    static types() {
        return {
            appLink: { 'type': 'array', 'itemType': PediaWordsSearchResponseBodyDataAppLink },
            approveName: 'string',
            contactList: { 'type': 'array', 'itemType': PediaWordsSearchResponseBodyDataContactList },
            contacts: { 'type': 'array', 'itemType': 'string' },
            creatorName: 'string',
            gmtCreate: 'number',
            gmtModify: 'number',
            highLightWordAlias: { 'type': 'array', 'itemType': 'string' },
            imHighLight: 'boolean',
            parentUuid: 'number',
            picList: { 'type': 'array', 'itemType': PediaWordsSearchResponseBodyDataPicList },
            relatedDoc: { 'type': 'array', 'itemType': PediaWordsSearchResponseBodyDataRelatedDoc },
            relatedLink: { 'type': 'array', 'itemType': PediaWordsSearchResponseBodyDataRelatedLink },
            simHighLight: 'boolean',
            simpleWordParaphrase: 'string',
            tagsList: { 'type': 'array', 'itemType': 'string' },
            updaterName: 'string',
            userId: 'string',
            uuid: 'number',
            wordAlias: { 'type': 'array', 'itemType': 'string' },
            wordName: 'string',
            wordParaphrase: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsSearchResponseBodyData = PediaWordsSearchResponseBodyData;
class PediaWordsUpdateRequestAppLink extends $tea.Model {
    static names() {
        return {
            appName: 'appName',
            iconLink: 'iconLink',
            pcLink: 'pcLink',
            phoneLink: 'phoneLink',
        };
    }
    static types() {
        return {
            appName: 'string',
            iconLink: 'string',
            pcLink: 'string',
            phoneLink: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsUpdateRequestAppLink = PediaWordsUpdateRequestAppLink;
class PediaWordsUpdateRequestContactList extends $tea.Model {
    static names() {
        return {
            avatarMediaId: 'avatarMediaId',
            nickName: 'nickName',
            userId: 'userId',
        };
    }
    static types() {
        return {
            avatarMediaId: 'string',
            nickName: 'string',
            userId: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsUpdateRequestContactList = PediaWordsUpdateRequestContactList;
class PediaWordsUpdateRequestPicList extends $tea.Model {
    static names() {
        return {
            mediaIdUrl: 'mediaIdUrl',
        };
    }
    static types() {
        return {
            mediaIdUrl: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsUpdateRequestPicList = PediaWordsUpdateRequestPicList;
class PediaWordsUpdateRequestRelatedDoc extends $tea.Model {
    static names() {
        return {
            link: 'link',
            name: 'name',
            type: 'type',
        };
    }
    static types() {
        return {
            link: 'string',
            name: 'string',
            type: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsUpdateRequestRelatedDoc = PediaWordsUpdateRequestRelatedDoc;
class PediaWordsUpdateRequestRelatedLink extends $tea.Model {
    static names() {
        return {
            link: 'link',
            name: 'name',
        };
    }
    static types() {
        return {
            link: 'string',
            name: 'string',
        };
    }
    constructor(map) {
        super(map);
    }
}
exports.PediaWordsUpdateRequestRelatedLink = PediaWordsUpdateRequestRelatedLink;
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 - PediaWordsAddRequest
     * @param headers - PediaWordsAddHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PediaWordsAddResponse
     */
    async pediaWordsAddWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.contactList)) {
            body["contactList"] = request.contactList;
        }
        if (!tea_util_1.default.isUnset(request.highLightWordAlias)) {
            body["highLightWordAlias"] = request.highLightWordAlias;
        }
        if (!tea_util_1.default.isUnset(request.picList)) {
            body["picList"] = request.picList;
        }
        if (!tea_util_1.default.isUnset(request.relatedDoc)) {
            body["relatedDoc"] = request.relatedDoc;
        }
        if (!tea_util_1.default.isUnset(request.relatedLink)) {
            body["relatedLink"] = request.relatedLink;
        }
        if (!tea_util_1.default.isUnset(request.userId)) {
            body["userId"] = request.userId;
        }
        if (!tea_util_1.default.isUnset(request.wordAlias)) {
            body["wordAlias"] = request.wordAlias;
        }
        if (!tea_util_1.default.isUnset(request.wordName)) {
            body["wordName"] = request.wordName;
        }
        if (!tea_util_1.default.isUnset(request.wordParaphrase)) {
            body["wordParaphrase"] = request.wordParaphrase;
        }
        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: "PediaWordsAdd",
            version: "pedia_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/pedia/words`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PediaWordsAddResponse({}));
    }
    /**
     * 企业百科增加当前企业词条信息
     *
     * @param request - PediaWordsAddRequest
     * @returns PediaWordsAddResponse
     */
    async pediaWordsAdd(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PediaWordsAddHeaders({});
        return await this.pediaWordsAddWithOptions(request, headers, runtime);
    }
    /**
     * 企业百科针对待审核词条进行审核
     *
     * @param request - PediaWordsApproveRequest
     * @param headers - PediaWordsApproveHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PediaWordsApproveResponse
     */
    async pediaWordsApproveWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.aliDocHighLight)) {
            body["aliDocHighLight"] = request.aliDocHighLight;
        }
        if (!tea_util_1.default.isUnset(request.approveReason)) {
            body["approveReason"] = request.approveReason;
        }
        if (!tea_util_1.default.isUnset(request.approveStatus)) {
            body["approveStatus"] = request.approveStatus;
        }
        if (!tea_util_1.default.isUnset(request.imHighLight)) {
            body["imHighLight"] = request.imHighLight;
        }
        if (!tea_util_1.default.isUnset(request.simHighLight)) {
            body["simHighLight"] = request.simHighLight;
        }
        if (!tea_util_1.default.isUnset(request.userId)) {
            body["userId"] = request.userId;
        }
        if (!tea_util_1.default.isUnset(request.uuid)) {
            body["uuid"] = request.uuid;
        }
        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: "PediaWordsApprove",
            version: "pedia_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/pedia/words/approve`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PediaWordsApproveResponse({}));
    }
    /**
     * 企业百科针对待审核词条进行审核
     *
     * @param request - PediaWordsApproveRequest
     * @returns PediaWordsApproveResponse
     */
    async pediaWordsApprove(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PediaWordsApproveHeaders({});
        return await this.pediaWordsApproveWithOptions(request, headers, runtime);
    }
    /**
     * 企业百科针对uuid删除当前词条
     *
     * @param request - PediaWordsDeleteRequest
     * @param headers - PediaWordsDeleteHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PediaWordsDeleteResponse
     */
    async pediaWordsDeleteWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.userId)) {
            query["userId"] = request.userId;
        }
        if (!tea_util_1.default.isUnset(request.uuid)) {
            query["uuid"] = request.uuid;
        }
        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: "PediaWordsDelete",
            version: "pedia_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/pedia/words`,
            method: "DELETE",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PediaWordsDeleteResponse({}));
    }
    /**
     * 企业百科针对uuid删除当前词条
     *
     * @param request - PediaWordsDeleteRequest
     * @returns PediaWordsDeleteResponse
     */
    async pediaWordsDelete(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PediaWordsDeleteHeaders({});
        return await this.pediaWordsDeleteWithOptions(request, headers, runtime);
    }
    /**
     * 根据词条主键ID查询当前词条详情
     *
     * @param request - PediaWordsQueryRequest
     * @param headers - PediaWordsQueryHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PediaWordsQueryResponse
     */
    async pediaWordsQueryWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let query = {};
        if (!tea_util_1.default.isUnset(request.userId)) {
            query["userId"] = request.userId;
        }
        if (!tea_util_1.default.isUnset(request.uuid)) {
            query["uuid"] = request.uuid;
        }
        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: "PediaWordsQuery",
            version: "pedia_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/pedia/words/query`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PediaWordsQueryResponse({}));
    }
    /**
     * 根据词条主键ID查询当前词条详情
     *
     * @param request - PediaWordsQueryRequest
     * @returns PediaWordsQueryResponse
     */
    async pediaWordsQuery(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PediaWordsQueryHeaders({});
        return await this.pediaWordsQueryWithOptions(request, headers, runtime);
    }
    /**
     * 分页获取企业词条信息
     *
     * @param request - PediaWordsSearchRequest
     * @param headers - PediaWordsSearchHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PediaWordsSearchResponse
     */
    async pediaWordsSearchWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.pageNumber)) {
            body["pageNumber"] = request.pageNumber;
        }
        if (!tea_util_1.default.isUnset(request.pageSize)) {
            body["pageSize"] = request.pageSize;
        }
        if (!tea_util_1.default.isUnset(request.status)) {
            body["status"] = request.status;
        }
        if (!tea_util_1.default.isUnset(request.userId)) {
            body["userId"] = request.userId;
        }
        if (!tea_util_1.default.isUnset(request.wordName)) {
            body["wordName"] = request.wordName;
        }
        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: "PediaWordsSearch",
            version: "pedia_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/pedia/words/search`,
            method: "POST",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PediaWordsSearchResponse({}));
    }
    /**
     * 分页获取企业词条信息
     *
     * @param request - PediaWordsSearchRequest
     * @returns PediaWordsSearchResponse
     */
    async pediaWordsSearch(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PediaWordsSearchHeaders({});
        return await this.pediaWordsSearchWithOptions(request, headers, runtime);
    }
    /**
     * 企业百科对当前已经生效词条进行编辑
     *
     * @param request - PediaWordsUpdateRequest
     * @param headers - PediaWordsUpdateHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns PediaWordsUpdateResponse
     */
    async pediaWordsUpdateWithOptions(request, headers, runtime) {
        tea_util_1.default.validateModel(request);
        let body = {};
        if (!tea_util_1.default.isUnset(request.appLink)) {
            body["appLink"] = request.appLink;
        }
        if (!tea_util_1.default.isUnset(request.contactList)) {
            body["contactList"] = request.contactList;
        }
        if (!tea_util_1.default.isUnset(request.highLightWordAlias)) {
            body["highLightWordAlias"] = request.highLightWordAlias;
        }
        if (!tea_util_1.default.isUnset(request.picList)) {
            body["picList"] = request.picList;
        }
        if (!tea_util_1.default.isUnset(request.relatedDoc)) {
            body["relatedDoc"] = request.relatedDoc;
        }
        if (!tea_util_1.default.isUnset(request.relatedLink)) {
            body["relatedLink"] = request.relatedLink;
        }
        if (!tea_util_1.default.isUnset(request.userId)) {
            body["userId"] = request.userId;
        }
        if (!tea_util_1.default.isUnset(request.uuid)) {
            body["uuid"] = request.uuid;
        }
        if (!tea_util_1.default.isUnset(request.wordAlias)) {
            body["wordAlias"] = request.wordAlias;
        }
        if (!tea_util_1.default.isUnset(request.wordName)) {
            body["wordName"] = request.wordName;
        }
        if (!tea_util_1.default.isUnset(request.wordParaphrase)) {
            body["wordParaphrase"] = request.wordParaphrase;
        }
        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: "PediaWordsUpdate",
            version: "pedia_1.0",
            protocol: "HTTP",
            pathname: `/v1.0/pedia/words`,
            method: "PUT",
            authType: "AK",
            style: "ROA",
            reqBodyType: "none",
            bodyType: "json",
        });
        return $tea.cast(await this.execute(params, req, runtime), new PediaWordsUpdateResponse({}));
    }
    /**
     * 企业百科对当前已经生效词条进行编辑
     *
     * @param request - PediaWordsUpdateRequest
     * @returns PediaWordsUpdateResponse
     */
    async pediaWordsUpdate(request) {
        let runtime = new $Util.RuntimeOptions({});
        let headers = new PediaWordsUpdateHeaders({});
        return await this.pediaWordsUpdateWithOptions(request, headers, runtime);
    }
}
exports.default = Client;
//# sourceMappingURL=client.js.map