UNPKG

fastcomments-sdk

Version:

FastComments API Client - A SDK for interacting with the FastComments API

2,054 lines 104 kB
"use strict";
/* tslint:disable */
/* eslint-disable */
/**
 * fastcomments
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: 0.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
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;
    };
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.UpdateUserNotificationStatusNewStatusEnum = exports.UpdateUserNotificationPageSubscriptionStatusSubscribedOrUnsubscribedEnum = exports.UpdateUserNotificationCommentSubscriptionStatusOptedInOrOutEnum = exports.SearchUsersSearchSectionEnum = exports.PublicApi = void 0;
const runtime = __importStar(require("../runtime"));
const index_1 = require("../models/index");
/**
 *
 */
class PublicApi extends runtime.BaseAPI {
    /**
     */
    async blockFromCommentPublicRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling blockFromCommentPublic().');
        }
        if (requestParameters['commentId'] == null) {
            throw new runtime.RequiredError('commentId', 'Required parameter "commentId" was null or undefined when calling blockFromCommentPublic().');
        }
        if (requestParameters['publicBlockFromCommentParams'] == null) {
            throw new runtime.RequiredError('publicBlockFromCommentParams', 'Required parameter "publicBlockFromCommentParams" was null or undefined when calling blockFromCommentPublic().');
        }
        const queryParameters = {};
        if (requestParameters['tenantId'] != null) {
            queryParameters['tenantId'] = requestParameters['tenantId'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        headerParameters['Content-Type'] = 'application/json';
        const response = await this.request({
            path: `/block-from-comment/{commentId}`.replace(`{${"commentId"}}`, encodeURIComponent(String(requestParameters['commentId']))),
            method: 'POST',
            headers: headerParameters,
            query: queryParameters,
            body: (0, index_1.PublicBlockFromCommentParamsToJSON)(requestParameters['publicBlockFromCommentParams']),
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.BlockFromCommentPublicResponseFromJSON)(jsonValue));
    }
    /**
     */
    async blockFromCommentPublic(requestParameters, initOverrides) {
        const response = await this.blockFromCommentPublicRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async checkedCommentsForBlockedRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling checkedCommentsForBlocked().');
        }
        if (requestParameters['commentIds'] == null) {
            throw new runtime.RequiredError('commentIds', 'Required parameter "commentIds" was null or undefined when calling checkedCommentsForBlocked().');
        }
        const queryParameters = {};
        if (requestParameters['tenantId'] != null) {
            queryParameters['tenantId'] = requestParameters['tenantId'];
        }
        if (requestParameters['commentIds'] != null) {
            queryParameters['commentIds'] = requestParameters['commentIds'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/check-blocked-comments`,
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.CheckedCommentsForBlockedResponseFromJSON)(jsonValue));
    }
    /**
     */
    async checkedCommentsForBlocked(requestParameters, initOverrides) {
        const response = await this.checkedCommentsForBlockedRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async createCommentPublicRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling createCommentPublic().');
        }
        if (requestParameters['urlId'] == null) {
            throw new runtime.RequiredError('urlId', 'Required parameter "urlId" was null or undefined when calling createCommentPublic().');
        }
        if (requestParameters['broadcastId'] == null) {
            throw new runtime.RequiredError('broadcastId', 'Required parameter "broadcastId" was null or undefined when calling createCommentPublic().');
        }
        if (requestParameters['commentData'] == null) {
            throw new runtime.RequiredError('commentData', 'Required parameter "commentData" was null or undefined when calling createCommentPublic().');
        }
        const queryParameters = {};
        if (requestParameters['urlId'] != null) {
            queryParameters['urlId'] = requestParameters['urlId'];
        }
        if (requestParameters['broadcastId'] != null) {
            queryParameters['broadcastId'] = requestParameters['broadcastId'];
        }
        if (requestParameters['sessionId'] != null) {
            queryParameters['sessionId'] = requestParameters['sessionId'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        headerParameters['Content-Type'] = 'application/json';
        const response = await this.request({
            path: `/comments/{tenantId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'POST',
            headers: headerParameters,
            query: queryParameters,
            body: (0, index_1.CommentDataToJSON)(requestParameters['commentData']),
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.CreateCommentPublicResponseFromJSON)(jsonValue));
    }
    /**
     */
    async createCommentPublic(requestParameters, initOverrides) {
        const response = await this.createCommentPublicRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async createFeedPostPublicRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling createFeedPostPublic().');
        }
        if (requestParameters['createFeedPostParams'] == null) {
            throw new runtime.RequiredError('createFeedPostParams', 'Required parameter "createFeedPostParams" was null or undefined when calling createFeedPostPublic().');
        }
        const queryParameters = {};
        if (requestParameters['broadcastId'] != null) {
            queryParameters['broadcastId'] = requestParameters['broadcastId'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        headerParameters['Content-Type'] = 'application/json';
        const response = await this.request({
            path: `/feed-posts/{tenantId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'POST',
            headers: headerParameters,
            query: queryParameters,
            body: (0, index_1.CreateFeedPostParamsToJSON)(requestParameters['createFeedPostParams']),
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.CreateFeedPostPublicResponseFromJSON)(jsonValue));
    }
    /**
     */
    async createFeedPostPublic(requestParameters, initOverrides) {
        const response = await this.createFeedPostPublicRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async createV1PageReactRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling createV1PageReact().');
        }
        if (requestParameters['urlId'] == null) {
            throw new runtime.RequiredError('urlId', 'Required parameter "urlId" was null or undefined when calling createV1PageReact().');
        }
        const queryParameters = {};
        if (requestParameters['urlId'] != null) {
            queryParameters['urlId'] = requestParameters['urlId'];
        }
        if (requestParameters['title'] != null) {
            queryParameters['title'] = requestParameters['title'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/page-reacts/v1/likes/{tenantId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'POST',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.CreateV1PageReactResponseFromJSON)(jsonValue));
    }
    /**
     */
    async createV1PageReact(requestParameters, initOverrides) {
        const response = await this.createV1PageReactRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async createV2PageReactRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling createV2PageReact().');
        }
        if (requestParameters['urlId'] == null) {
            throw new runtime.RequiredError('urlId', 'Required parameter "urlId" was null or undefined when calling createV2PageReact().');
        }
        if (requestParameters['id'] == null) {
            throw new runtime.RequiredError('id', 'Required parameter "id" was null or undefined when calling createV2PageReact().');
        }
        const queryParameters = {};
        if (requestParameters['urlId'] != null) {
            queryParameters['urlId'] = requestParameters['urlId'];
        }
        if (requestParameters['id'] != null) {
            queryParameters['id'] = requestParameters['id'];
        }
        if (requestParameters['title'] != null) {
            queryParameters['title'] = requestParameters['title'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/page-reacts/v2/{tenantId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'POST',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.CreateV2PageReactResponseFromJSON)(jsonValue));
    }
    /**
     */
    async createV2PageReact(requestParameters, initOverrides) {
        const response = await this.createV2PageReactRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async deleteCommentPublicRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling deleteCommentPublic().');
        }
        if (requestParameters['commentId'] == null) {
            throw new runtime.RequiredError('commentId', 'Required parameter "commentId" was null or undefined when calling deleteCommentPublic().');
        }
        if (requestParameters['broadcastId'] == null) {
            throw new runtime.RequiredError('broadcastId', 'Required parameter "broadcastId" was null or undefined when calling deleteCommentPublic().');
        }
        const queryParameters = {};
        if (requestParameters['broadcastId'] != null) {
            queryParameters['broadcastId'] = requestParameters['broadcastId'];
        }
        if (requestParameters['editKey'] != null) {
            queryParameters['editKey'] = requestParameters['editKey'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/comments/{tenantId}/{commentId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))).replace(`{${"commentId"}}`, encodeURIComponent(String(requestParameters['commentId']))),
            method: 'DELETE',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.DeleteCommentPublicResponseFromJSON)(jsonValue));
    }
    /**
     */
    async deleteCommentPublic(requestParameters, initOverrides) {
        const response = await this.deleteCommentPublicRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async deleteCommentVoteRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling deleteCommentVote().');
        }
        if (requestParameters['commentId'] == null) {
            throw new runtime.RequiredError('commentId', 'Required parameter "commentId" was null or undefined when calling deleteCommentVote().');
        }
        if (requestParameters['voteId'] == null) {
            throw new runtime.RequiredError('voteId', 'Required parameter "voteId" was null or undefined when calling deleteCommentVote().');
        }
        if (requestParameters['urlId'] == null) {
            throw new runtime.RequiredError('urlId', 'Required parameter "urlId" was null or undefined when calling deleteCommentVote().');
        }
        if (requestParameters['broadcastId'] == null) {
            throw new runtime.RequiredError('broadcastId', 'Required parameter "broadcastId" was null or undefined when calling deleteCommentVote().');
        }
        const queryParameters = {};
        if (requestParameters['urlId'] != null) {
            queryParameters['urlId'] = requestParameters['urlId'];
        }
        if (requestParameters['broadcastId'] != null) {
            queryParameters['broadcastId'] = requestParameters['broadcastId'];
        }
        if (requestParameters['editKey'] != null) {
            queryParameters['editKey'] = requestParameters['editKey'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/comments/{tenantId}/{commentId}/vote/{voteId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))).replace(`{${"commentId"}}`, encodeURIComponent(String(requestParameters['commentId']))).replace(`{${"voteId"}}`, encodeURIComponent(String(requestParameters['voteId']))),
            method: 'DELETE',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.DeleteCommentVoteResponseFromJSON)(jsonValue));
    }
    /**
     */
    async deleteCommentVote(requestParameters, initOverrides) {
        const response = await this.deleteCommentVoteRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async deleteFeedPostPublicRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling deleteFeedPostPublic().');
        }
        if (requestParameters['postId'] == null) {
            throw new runtime.RequiredError('postId', 'Required parameter "postId" was null or undefined when calling deleteFeedPostPublic().');
        }
        const queryParameters = {};
        if (requestParameters['broadcastId'] != null) {
            queryParameters['broadcastId'] = requestParameters['broadcastId'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/feed-posts/{tenantId}/{postId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))).replace(`{${"postId"}}`, encodeURIComponent(String(requestParameters['postId']))),
            method: 'DELETE',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.DeleteFeedPostPublicResponseFromJSON)(jsonValue));
    }
    /**
     */
    async deleteFeedPostPublic(requestParameters, initOverrides) {
        const response = await this.deleteFeedPostPublicRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async deleteV1PageReactRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling deleteV1PageReact().');
        }
        if (requestParameters['urlId'] == null) {
            throw new runtime.RequiredError('urlId', 'Required parameter "urlId" was null or undefined when calling deleteV1PageReact().');
        }
        const queryParameters = {};
        if (requestParameters['urlId'] != null) {
            queryParameters['urlId'] = requestParameters['urlId'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/page-reacts/v1/likes/{tenantId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'DELETE',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.DeleteV1PageReactResponseFromJSON)(jsonValue));
    }
    /**
     */
    async deleteV1PageReact(requestParameters, initOverrides) {
        const response = await this.deleteV1PageReactRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async deleteV2PageReactRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling deleteV2PageReact().');
        }
        if (requestParameters['urlId'] == null) {
            throw new runtime.RequiredError('urlId', 'Required parameter "urlId" was null or undefined when calling deleteV2PageReact().');
        }
        if (requestParameters['id'] == null) {
            throw new runtime.RequiredError('id', 'Required parameter "id" was null or undefined when calling deleteV2PageReact().');
        }
        const queryParameters = {};
        if (requestParameters['urlId'] != null) {
            queryParameters['urlId'] = requestParameters['urlId'];
        }
        if (requestParameters['id'] != null) {
            queryParameters['id'] = requestParameters['id'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/page-reacts/v2/{tenantId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'DELETE',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.DeleteV2PageReactResponseFromJSON)(jsonValue));
    }
    /**
     */
    async deleteV2PageReact(requestParameters, initOverrides) {
        const response = await this.deleteV2PageReactRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async flagCommentPublicRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling flagCommentPublic().');
        }
        if (requestParameters['commentId'] == null) {
            throw new runtime.RequiredError('commentId', 'Required parameter "commentId" was null or undefined when calling flagCommentPublic().');
        }
        if (requestParameters['isFlagged'] == null) {
            throw new runtime.RequiredError('isFlagged', 'Required parameter "isFlagged" was null or undefined when calling flagCommentPublic().');
        }
        const queryParameters = {};
        if (requestParameters['tenantId'] != null) {
            queryParameters['tenantId'] = requestParameters['tenantId'];
        }
        if (requestParameters['isFlagged'] != null) {
            queryParameters['isFlagged'] = requestParameters['isFlagged'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/flag-comment/{commentId}`.replace(`{${"commentId"}}`, encodeURIComponent(String(requestParameters['commentId']))),
            method: 'POST',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.FlagCommentPublicResponseFromJSON)(jsonValue));
    }
    /**
     */
    async flagCommentPublic(requestParameters, initOverrides) {
        const response = await this.flagCommentPublicRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async getCommentTextRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getCommentText().');
        }
        if (requestParameters['commentId'] == null) {
            throw new runtime.RequiredError('commentId', 'Required parameter "commentId" was null or undefined when calling getCommentText().');
        }
        const queryParameters = {};
        if (requestParameters['editKey'] != null) {
            queryParameters['editKey'] = requestParameters['editKey'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/comments/{tenantId}/{commentId}/text`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))).replace(`{${"commentId"}}`, encodeURIComponent(String(requestParameters['commentId']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetCommentTextResponse1FromJSON)(jsonValue));
    }
    /**
     */
    async getCommentText(requestParameters, initOverrides) {
        const response = await this.getCommentTextRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async getCommentVoteUserNamesRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getCommentVoteUserNames().');
        }
        if (requestParameters['commentId'] == null) {
            throw new runtime.RequiredError('commentId', 'Required parameter "commentId" was null or undefined when calling getCommentVoteUserNames().');
        }
        if (requestParameters['dir'] == null) {
            throw new runtime.RequiredError('dir', 'Required parameter "dir" was null or undefined when calling getCommentVoteUserNames().');
        }
        const queryParameters = {};
        if (requestParameters['dir'] != null) {
            queryParameters['dir'] = requestParameters['dir'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/comments/{tenantId}/{commentId}/votes`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))).replace(`{${"commentId"}}`, encodeURIComponent(String(requestParameters['commentId']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetCommentVoteUserNamesResponseFromJSON)(jsonValue));
    }
    /**
     */
    async getCommentVoteUserNames(requestParameters, initOverrides) {
        const response = await this.getCommentVoteUserNamesRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async getCommentsForUserRaw(requestParameters, initOverrides) {
        const queryParameters = {};
        if (requestParameters['userId'] != null) {
            queryParameters['userId'] = requestParameters['userId'];
        }
        if (requestParameters['direction'] != null) {
            queryParameters['direction'] = requestParameters['direction'];
        }
        if (requestParameters['repliesToUserId'] != null) {
            queryParameters['repliesToUserId'] = requestParameters['repliesToUserId'];
        }
        if (requestParameters['page'] != null) {
            queryParameters['page'] = requestParameters['page'];
        }
        if (requestParameters['includei10n'] != null) {
            queryParameters['includei10n'] = requestParameters['includei10n'];
        }
        if (requestParameters['locale'] != null) {
            queryParameters['locale'] = requestParameters['locale'];
        }
        if (requestParameters['isCrawler'] != null) {
            queryParameters['isCrawler'] = requestParameters['isCrawler'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/comments-for-user`,
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetCommentsForUserResponse1FromJSON)(jsonValue));
    }
    /**
     */
    async getCommentsForUser(requestParameters = {}, initOverrides) {
        const response = await this.getCommentsForUserRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     *  req tenantId urlId
     */
    async getCommentsPublicRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getCommentsPublic().');
        }
        if (requestParameters['urlId'] == null) {
            throw new runtime.RequiredError('urlId', 'Required parameter "urlId" was null or undefined when calling getCommentsPublic().');
        }
        const queryParameters = {};
        if (requestParameters['urlId'] != null) {
            queryParameters['urlId'] = requestParameters['urlId'];
        }
        if (requestParameters['page'] != null) {
            queryParameters['page'] = requestParameters['page'];
        }
        if (requestParameters['direction'] != null) {
            queryParameters['direction'] = requestParameters['direction'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        if (requestParameters['skip'] != null) {
            queryParameters['skip'] = requestParameters['skip'];
        }
        if (requestParameters['skipChildren'] != null) {
            queryParameters['skipChildren'] = requestParameters['skipChildren'];
        }
        if (requestParameters['limit'] != null) {
            queryParameters['limit'] = requestParameters['limit'];
        }
        if (requestParameters['limitChildren'] != null) {
            queryParameters['limitChildren'] = requestParameters['limitChildren'];
        }
        if (requestParameters['countChildren'] != null) {
            queryParameters['countChildren'] = requestParameters['countChildren'];
        }
        if (requestParameters['fetchPageForCommentId'] != null) {
            queryParameters['fetchPageForCommentId'] = requestParameters['fetchPageForCommentId'];
        }
        if (requestParameters['includeConfig'] != null) {
            queryParameters['includeConfig'] = requestParameters['includeConfig'];
        }
        if (requestParameters['countAll'] != null) {
            queryParameters['countAll'] = requestParameters['countAll'];
        }
        if (requestParameters['includei10n'] != null) {
            queryParameters['includei10n'] = requestParameters['includei10n'];
        }
        if (requestParameters['locale'] != null) {
            queryParameters['locale'] = requestParameters['locale'];
        }
        if (requestParameters['modules'] != null) {
            queryParameters['modules'] = requestParameters['modules'];
        }
        if (requestParameters['isCrawler'] != null) {
            queryParameters['isCrawler'] = requestParameters['isCrawler'];
        }
        if (requestParameters['includeNotificationCount'] != null) {
            queryParameters['includeNotificationCount'] = requestParameters['includeNotificationCount'];
        }
        if (requestParameters['asTree'] != null) {
            queryParameters['asTree'] = requestParameters['asTree'];
        }
        if (requestParameters['maxTreeDepth'] != null) {
            queryParameters['maxTreeDepth'] = requestParameters['maxTreeDepth'];
        }
        if (requestParameters['useFullTranslationIds'] != null) {
            queryParameters['useFullTranslationIds'] = requestParameters['useFullTranslationIds'];
        }
        if (requestParameters['parentId'] != null) {
            queryParameters['parentId'] = requestParameters['parentId'];
        }
        if (requestParameters['searchText'] != null) {
            queryParameters['searchText'] = requestParameters['searchText'];
        }
        if (requestParameters['hashTags'] != null) {
            queryParameters['hashTags'] = requestParameters['hashTags'];
        }
        if (requestParameters['userId'] != null) {
            queryParameters['userId'] = requestParameters['userId'];
        }
        if (requestParameters['customConfigStr'] != null) {
            queryParameters['customConfigStr'] = requestParameters['customConfigStr'];
        }
        if (requestParameters['afterCommentId'] != null) {
            queryParameters['afterCommentId'] = requestParameters['afterCommentId'];
        }
        if (requestParameters['beforeCommentId'] != null) {
            queryParameters['beforeCommentId'] = requestParameters['beforeCommentId'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/comments/{tenantId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetCommentsPublicResponseFromJSON)(jsonValue));
    }
    /**
     *  req tenantId urlId
     */
    async getCommentsPublic(requestParameters, initOverrides) {
        const response = await this.getCommentsPublicRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     *  req tenantId urlId userIdWS
     */
    async getEventLogRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getEventLog().');
        }
        if (requestParameters['urlId'] == null) {
            throw new runtime.RequiredError('urlId', 'Required parameter "urlId" was null or undefined when calling getEventLog().');
        }
        if (requestParameters['userIdWS'] == null) {
            throw new runtime.RequiredError('userIdWS', 'Required parameter "userIdWS" was null or undefined when calling getEventLog().');
        }
        if (requestParameters['startTime'] == null) {
            throw new runtime.RequiredError('startTime', 'Required parameter "startTime" was null or undefined when calling getEventLog().');
        }
        const queryParameters = {};
        if (requestParameters['urlId'] != null) {
            queryParameters['urlId'] = requestParameters['urlId'];
        }
        if (requestParameters['userIdWS'] != null) {
            queryParameters['userIdWS'] = requestParameters['userIdWS'];
        }
        if (requestParameters['startTime'] != null) {
            queryParameters['startTime'] = requestParameters['startTime'];
        }
        if (requestParameters['endTime'] != null) {
            queryParameters['endTime'] = requestParameters['endTime'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/event-log/{tenantId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetEventLogResponse1FromJSON)(jsonValue));
    }
    /**
     *  req tenantId urlId userIdWS
     */
    async getEventLog(requestParameters, initOverrides) {
        const response = await this.getEventLogRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     *  req tenantId afterId
     */
    async getFeedPostsPublicRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getFeedPostsPublic().');
        }
        const queryParameters = {};
        if (requestParameters['afterId'] != null) {
            queryParameters['afterId'] = requestParameters['afterId'];
        }
        if (requestParameters['limit'] != null) {
            queryParameters['limit'] = requestParameters['limit'];
        }
        if (requestParameters['tags'] != null) {
            queryParameters['tags'] = requestParameters['tags'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        if (requestParameters['isCrawler'] != null) {
            queryParameters['isCrawler'] = requestParameters['isCrawler'];
        }
        if (requestParameters['includeUserInfo'] != null) {
            queryParameters['includeUserInfo'] = requestParameters['includeUserInfo'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/feed-posts/{tenantId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetFeedPostsPublicResponseFromJSON)(jsonValue));
    }
    /**
     *  req tenantId afterId
     */
    async getFeedPostsPublic(requestParameters, initOverrides) {
        const response = await this.getFeedPostsPublicRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async getFeedPostsStatsRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getFeedPostsStats().');
        }
        if (requestParameters['postIds'] == null) {
            throw new runtime.RequiredError('postIds', 'Required parameter "postIds" was null or undefined when calling getFeedPostsStats().');
        }
        const queryParameters = {};
        if (requestParameters['postIds'] != null) {
            queryParameters['postIds'] = requestParameters['postIds'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/feed-posts/{tenantId}/stats`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetFeedPostsStatsResponseFromJSON)(jsonValue));
    }
    /**
     */
    async getFeedPostsStats(requestParameters, initOverrides) {
        const response = await this.getFeedPostsStatsRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async getGifLargeRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getGifLarge().');
        }
        if (requestParameters['largeInternalURLSanitized'] == null) {
            throw new runtime.RequiredError('largeInternalURLSanitized', 'Required parameter "largeInternalURLSanitized" was null or undefined when calling getGifLarge().');
        }
        const queryParameters = {};
        if (requestParameters['largeInternalURLSanitized'] != null) {
            queryParameters['largeInternalURLSanitized'] = requestParameters['largeInternalURLSanitized'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/gifs/get-large/{tenantId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetGifLargeResponseFromJSON)(jsonValue));
    }
    /**
     */
    async getGifLarge(requestParameters, initOverrides) {
        const response = await this.getGifLargeRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async getGifsSearchRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getGifsSearch().');
        }
        if (requestParameters['search'] == null) {
            throw new runtime.RequiredError('search', 'Required parameter "search" was null or undefined when calling getGifsSearch().');
        }
        const queryParameters = {};
        if (requestParameters['search'] != null) {
            queryParameters['search'] = requestParameters['search'];
        }
        if (requestParameters['locale'] != null) {
            queryParameters['locale'] = requestParameters['locale'];
        }
        if (requestParameters['rating'] != null) {
            queryParameters['rating'] = requestParameters['rating'];
        }
        if (requestParameters['page'] != null) {
            queryParameters['page'] = requestParameters['page'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/gifs/search/{tenantId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetGifsSearchResponseFromJSON)(jsonValue));
    }
    /**
     */
    async getGifsSearch(requestParameters, initOverrides) {
        const response = await this.getGifsSearchRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async getGifsTrendingRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getGifsTrending().');
        }
        const queryParameters = {};
        if (requestParameters['locale'] != null) {
            queryParameters['locale'] = requestParameters['locale'];
        }
        if (requestParameters['rating'] != null) {
            queryParameters['rating'] = requestParameters['rating'];
        }
        if (requestParameters['page'] != null) {
            queryParameters['page'] = requestParameters['page'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/gifs/trending/{tenantId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetGifsTrendingResponseFromJSON)(jsonValue));
    }
    /**
     */
    async getGifsTrending(requestParameters, initOverrides) {
        const response = await this.getGifsTrendingRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     *  req tenantId urlId userIdWS
     */
    async getGlobalEventLogRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getGlobalEventLog().');
        }
        if (requestParameters['urlId'] == null) {
            throw new runtime.RequiredError('urlId', 'Required parameter "urlId" was null or undefined when calling getGlobalEventLog().');
        }
        if (requestParameters['userIdWS'] == null) {
            throw new runtime.RequiredError('userIdWS', 'Required parameter "userIdWS" was null or undefined when calling getGlobalEventLog().');
        }
        if (requestParameters['startTime'] == null) {
            throw new runtime.RequiredError('startTime', 'Required parameter "startTime" was null or undefined when calling getGlobalEventLog().');
        }
        const queryParameters = {};
        if (requestParameters['urlId'] != null) {
            queryParameters['urlId'] = requestParameters['urlId'];
        }
        if (requestParameters['userIdWS'] != null) {
            queryParameters['userIdWS'] = requestParameters['userIdWS'];
        }
        if (requestParameters['startTime'] != null) {
            queryParameters['startTime'] = requestParameters['startTime'];
        }
        if (requestParameters['endTime'] != null) {
            queryParameters['endTime'] = requestParameters['endTime'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/event-log/global/{tenantId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetGlobalEventLogResponseFromJSON)(jsonValue));
    }
    /**
     *  req tenantId urlId userIdWS
     */
    async getGlobalEventLog(requestParameters, initOverrides) {
        const response = await this.getGlobalEventLogRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     * Past commenters on the page who are NOT currently online. Sorted by displayName. Use this after exhausting /users/online to render a \"Members\" section. Cursor pagination on commenterName: server walks the partial {tenantId, urlId, commenterName} index from afterName forward via $gt, no $skip cost.
     */
    async getOfflineUsersRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getOfflineUsers().');
        }
        if (requestParameters['urlId'] == null) {
            throw new runtime.RequiredError('urlId', 'Required parameter "urlId" was null or undefined when calling getOfflineUsers().');
        }
        const queryParameters = {};
        if (requestParameters['urlId'] != null) {
            queryParameters['urlId'] = requestParameters['urlId'];
        }
        if (requestParameters['afterName'] != null) {
            queryParameters['afterName'] = requestParameters['afterName'];
        }
        if (requestParameters['afterUserId'] != null) {
            queryParameters['afterUserId'] = requestParameters['afterUserId'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/pages/{tenantId}/users/offline`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetOfflineUsersResponseFromJSON)(jsonValue));
    }
    /**
     * Past commenters on the page who are NOT currently online. Sorted by displayName. Use this after exhausting /users/online to render a \"Members\" section. Cursor pagination on commenterName: server walks the partial {tenantId, urlId, commenterName} index from afterName forward via $gt, no $skip cost.
     */
    async getOfflineUsers(requestParameters, initOverrides) {
        const response = await this.getOfflineUsersRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     * Currently-online viewers of a page: people whose websocket session is subscribed to the page right now. Returns anonCount + totalCount (room-wide subscribers, including anon viewers we don\'t enumerate).
     */
    async getOnlineUsersRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getOnlineUsers().');
        }
        if (requestParameters['urlId'] == null) {
            throw new runtime.RequiredError('urlId', 'Required parameter "urlId" was null or undefined when calling getOnlineUsers().');
        }
        const queryParameters = {};
        if (requestParameters['urlId'] != null) {
            queryParameters['urlId'] = requestParameters['urlId'];
        }
        if (requestParameters['afterName'] != null) {
            queryParameters['afterName'] = requestParameters['afterName'];
        }
        if (requestParameters['afterUserId'] != null) {
            queryParameters['afterUserId'] = requestParameters['afterUserId'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/pages/{tenantId}/users/online`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetOnlineUsersResponseFromJSON)(jsonValue));
    }
    /**
     * Currently-online viewers of a page: people whose websocket session is subscribed to the page right now. Returns anonCount + totalCount (room-wide subscribers, including anon viewers we don\'t enumerate).
     */
    async getOnlineUsers(requestParameters, initOverrides) {
        const response = await this.getOnlineUsersRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     * List pages for a tenant. Used by the FChat desktop client to populate its room list. Requires `enableFChat` to be true on the resolved custom config for each page. Pages that require SSO are filtered against the requesting user\'s group access.
     */
    async getPagesPublicRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getPagesPublic().');
        }
        const queryParameters = {};
        if (requestParameters['cursor'] != null) {
            queryParameters['cursor'] = requestParameters['cursor'];
        }
        if (requestParameters['limit'] != null) {
            queryParameters['limit'] = requestParameters['limit'];
        }
        if (requestParameters['q'] != null) {
            queryParameters['q'] = requestParameters['q'];
        }
        if (requestParameters['sortBy'] != null) {
            queryParameters['sortBy'] = requestParameters['sortBy'];
        }
        if (requestParameters['hasComments'] != null) {
            queryParameters['hasComments'] = requestParameters['hasComments'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/pages/{tenantId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetPagesPublicResponseFromJSON)(jsonValue));
    }
    /**
     * List pages for a tenant. Used by the FChat desktop client to populate its room list. Requires `enableFChat` to be true on the resolved custom config for each page. Pages that require SSO are filtered against the requesting user\'s group access.
     */
    async getPagesPublic(requestParameters, initOverrides) {
        const response = await this.getPagesPublicRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async getTranslationsRaw(requestParameters, initOverrides) {
        if (requestParameters['namespace'] == null) {
            throw new runtime.RequiredError('namespace', 'Required parameter "namespace" was null or undefined when calling getTranslations().');
        }
        if (requestParameters['component'] == null) {
            throw new runtime.RequiredError('component', 'Required parameter "component" was null or undefined when calling getTranslations().');
        }
        const queryParameters = {};
        if (requestParameters['locale'] != null) {
            queryParameters['locale'] = requestParameters['locale'];
        }
        if (requestParameters['useFullTranslationIds'] != null) {
            queryParameters['useFullTranslationIds'] = requestParameters['useFullTranslationIds'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/translations/{namespace}/{component}`.replace(`{${"namespace"}}`, encodeURIComponent(String(requestParameters['namespace']))).replace(`{${"component"}}`, encodeURIComponent(String(requestParameters['component']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetTranslationsResponse1FromJSON)(jsonValue));
    }
    /**
     */
    async getTranslations(requestParameters, initOverrides) {
        const response = await this.getTranslationsRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async getUserNotificationCountRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getUserNotificationCount().');
        }
        const queryParameters = {};
        if (requestParameters['tenantId'] != null) {
            queryParameters['tenantId'] = requestParameters['tenantId'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/user-notifications/get-count`,
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetUserNotificationCountResponse1FromJSON)(jsonValue));
    }
    /**
     */
    async getUserNotificationCount(requestParameters, initOverrides) {
        const response = await this.getUserNotificationCountRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async getUserNotificationsRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getUserNotifications().');
        }
        const queryParameters = {};
        if (requestParameters['tenantId'] != null) {
            queryParameters['tenantId'] = requestParameters['tenantId'];
        }
        if (requestParameters['urlId'] != null) {
            queryParameters['urlId'] = requestParameters['urlId'];
        }
        if (requestParameters['pageSize'] != null) {
            queryParameters['pageSize'] = requestParameters['pageSize'];
        }
        if (requestParameters['afterId'] != null) {
            queryParameters['afterId'] = requestParameters['afterId'];
        }
        if (requestParameters['includeContext'] != null) {
            queryParameters['includeContext'] = requestParameters['includeContext'];
        }
        if (requestParameters['afterCreatedAt'] != null) {
            queryParameters['afterCreatedAt'] = requestParameters['afterCreatedAt'];
        }
        if (requestParameters['unreadOnly'] != null) {
            queryParameters['unreadOnly'] = requestParameters['unreadOnly'];
        }
        if (requestParameters['dmOnly'] != null) {
            queryParameters['dmOnly'] = requestParameters['dmOnly'];
        }
        if (requestParameters['noDm'] != null) {
            queryParameters['noDm'] = requestParameters['noDm'];
        }
        if (requestParameters['includeTranslations'] != null) {
            queryParameters['includeTranslations'] = requestParameters['includeTranslations'];
        }
        if (requestParameters['includeTenantNotifications'] != null) {
            queryParameters['includeTenantNotifications'] = requestParameters['includeTenantNotifications'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/user-notifications`,
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetUserNotificationsResponseFromJSON)(jsonValue));
    }
    /**
     */
    async getUserNotifications(requestParameters, initOverrides) {
        const response = await this.getUserNotificationsRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async getUserPresenceStatusesRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getUserPresenceStatuses().');
        }
        if (requestParameters['urlIdWS'] == null) {
            throw new runtime.RequiredError('urlIdWS', 'Required parameter "urlIdWS" was null or undefined when calling getUserPresenceStatuses().');
        }
        if (requestParameters['userIds'] == null) {
            throw new runtime.RequiredError('userIds', 'Required parameter "userIds" was null or undefined when calling getUserPresenceStatuses().');
        }
        const queryParameters = {};
        if (requestParameters['tenantId'] != null) {
            queryParameters['tenantId'] = requestParameters['tenantId'];
        }
        if (requestParameters['urlIdWS'] != null) {
            queryParameters['urlIdWS'] = requestParameters['urlIdWS'];
        }
        if (requestParameters['userIds'] != null) {
            queryParameters['userIds'] = requestParameters['userIds'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/user-presence-status`,
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetUserPresenceStatusesResponse1FromJSON)(jsonValue));
    }
    /**
     */
    async getUserPresenceStatuses(requestParameters, initOverrides) {
        const response = await this.getUserPresenceStatusesRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async getUserReactsPublicRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getUserReactsPublic().');
        }
        const queryParameters = {};
        if (requestParameters['postIds'] != null) {
            queryParameters['postIds'] = requestParameters['postIds'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/feed-posts/{tenantId}/user-reacts`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetUserReactsPublicResponseFromJSON)(jsonValue));
    }
    /**
     */
    async getUserReactsPublic(requestParameters, initOverrides) {
        const response = await this.getUserReactsPublicRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     * Bulk user info for a tenant. Given userIds, return display info from User / SSOUser. Used by the comment widget to enrich users that just appeared via a presence event. No page context: privacy is enforced uniformly (private profiles are masked).
     */
    async getUsersInfoRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getUsersInfo().');
        }
        if (requestParameters['ids'] == null) {
            throw new runtime.RequiredError('ids', 'Required parameter "ids" was null or undefined when calling getUsersInfo().');
        }
        const queryParameters = {};
        if (requestParameters['ids'] != null) {
            queryParameters['ids'] = requestParameters['ids'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/pages/{tenantId}/users/info`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetUsersInfoResponseFromJSON)(jsonValue));
    }
    /**
     * Bulk user info for a tenant. Given userIds, return display info from User / SSOUser. Used by the comment widget to enrich users that just appeared via a presence event. No page context: privacy is enforced uniformly (private profiles are masked).
     */
    async getUsersInfo(requestParameters, initOverrides) {
        const response = await this.getUsersInfoRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async getV1PageLikesRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getV1PageLikes().');
        }
        if (requestParameters['urlId'] == null) {
            throw new runtime.RequiredError('urlId', 'Required parameter "urlId" was null or undefined when calling getV1PageLikes().');
        }
        const queryParameters = {};
        if (requestParameters['urlId'] != null) {
            queryParameters['urlId'] = requestParameters['urlId'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/page-reacts/v1/likes/{tenantId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetV1PageLikesResponseFromJSON)(jsonValue));
    }
    /**
     */
    async getV1PageLikes(requestParameters, initOverrides) {
        const response = await this.getV1PageLikesRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async getV2PageReactUsersRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getV2PageReactUsers().');
        }
        if (requestParameters['urlId'] == null) {
            throw new runtime.RequiredError('urlId', 'Required parameter "urlId" was null or undefined when calling getV2PageReactUsers().');
        }
        if (requestParameters['id'] == null) {
            throw new runtime.RequiredError('id', 'Required parameter "id" was null or undefined when calling getV2PageReactUsers().');
        }
        const queryParameters = {};
        if (requestParameters['urlId'] != null) {
            queryParameters['urlId'] = requestParameters['urlId'];
        }
        if (requestParameters['id'] != null) {
            queryParameters['id'] = requestParameters['id'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/page-reacts/v2/{tenantId}/list`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetV2PageReactUsersResponse1FromJSON)(jsonValue));
    }
    /**
     */
    async getV2PageReactUsers(requestParameters, initOverrides) {
        const response = await this.getV2PageReactUsersRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async getV2PageReactsRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getV2PageReacts().');
        }
        if (requestParameters['urlId'] == null) {
            throw new runtime.RequiredError('urlId', 'Required parameter "urlId" was null or undefined when calling getV2PageReacts().');
        }
        const queryParameters = {};
        if (requestParameters['urlId'] != null) {
            queryParameters['urlId'] = requestParameters['urlId'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/page-reacts/v2/{tenantId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetV2PageReactsResponseFromJSON)(jsonValue));
    }
    /**
     */
    async getV2PageReacts(requestParameters, initOverrides) {
        const response = await this.getV2PageReactsRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async lockCommentRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling lockComment().');
        }
        if (requestParameters['commentId'] == null) {
            throw new runtime.RequiredError('commentId', 'Required parameter "commentId" was null or undefined when calling lockComment().');
        }
        if (requestParameters['broadcastId'] == null) {
            throw new runtime.RequiredError('broadcastId', 'Required parameter "broadcastId" was null or undefined when calling lockComment().');
        }
        const queryParameters = {};
        if (requestParameters['broadcastId'] != null) {
            queryParameters['broadcastId'] = requestParameters['broadcastId'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/comments/{tenantId}/{commentId}/lock`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))).replace(`{${"commentId"}}`, encodeURIComponent(String(requestParameters['commentId']))),
            method: 'POST',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.LockCommentResponseFromJSON)(jsonValue));
    }
    /**
     */
    async lockComment(requestParameters, initOverrides) {
        const response = await this.lockCommentRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async logoutPublicRaw(initOverrides) {
        const queryParameters = {};
        const headerParameters = {};
        const response = await this.request({
            path: `/auth/logout`,
            method: 'PUT',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.APIEmptyResponseFromJSON)(jsonValue));
    }
    /**
     */
    async logoutPublic(initOverrides) {
        const response = await this.logoutPublicRaw(initOverrides);
        return await response.value();
    }
    /**
     */
    async pinCommentRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling pinComment().');
        }
        if (requestParameters['commentId'] == null) {
            throw new runtime.RequiredError('commentId', 'Required parameter "commentId" was null or undefined when calling pinComment().');
        }
        if (requestParameters['broadcastId'] == null) {
            throw new runtime.RequiredError('broadcastId', 'Required parameter "broadcastId" was null or undefined when calling pinComment().');
        }
        const queryParameters = {};
        if (requestParameters['broadcastId'] != null) {
            queryParameters['broadcastId'] = requestParameters['broadcastId'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/comments/{tenantId}/{commentId}/pin`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))).replace(`{${"commentId"}}`, encodeURIComponent(String(requestParameters['commentId']))),
            method: 'POST',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.PinCommentResponseFromJSON)(jsonValue));
    }
    /**
     */
    async pinComment(requestParameters, initOverrides) {
        const response = await this.pinCommentRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async reactFeedPostPublicRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling reactFeedPostPublic().');
        }
        if (requestParameters['postId'] == null) {
            throw new runtime.RequiredError('postId', 'Required parameter "postId" was null or undefined when calling reactFeedPostPublic().');
        }
        if (requestParameters['reactBodyParams'] == null) {
            throw new runtime.RequiredError('reactBodyParams', 'Required parameter "reactBodyParams" was null or undefined when calling reactFeedPostPublic().');
        }
        const queryParameters = {};
        if (requestParameters['isUndo'] != null) {
            queryParameters['isUndo'] = requestParameters['isUndo'];
        }
        if (requestParameters['broadcastId'] != null) {
            queryParameters['broadcastId'] = requestParameters['broadcastId'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        headerParameters['Content-Type'] = 'application/json';
        const response = await this.request({
            path: `/feed-posts/{tenantId}/react/{postId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))).replace(`{${"postId"}}`, encodeURIComponent(String(requestParameters['postId']))),
            method: 'POST',
            headers: headerParameters,
            query: queryParameters,
            body: (0, index_1.ReactBodyParamsToJSON)(requestParameters['reactBodyParams']),
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.ReactFeedPostPublicResponseFromJSON)(jsonValue));
    }
    /**
     */
    async reactFeedPostPublic(requestParameters, initOverrides) {
        const response = await this.reactFeedPostPublicRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async resetUserNotificationCountRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling resetUserNotificationCount().');
        }
        const queryParameters = {};
        if (requestParameters['tenantId'] != null) {
            queryParameters['tenantId'] = requestParameters['tenantId'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/user-notifications/reset-count`,
            method: 'POST',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.ResetUserNotificationCountResponseFromJSON)(jsonValue));
    }
    /**
     */
    async resetUserNotificationCount(requestParameters, initOverrides) {
        const response = await this.resetUserNotificationCountRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async resetUserNotificationsRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling resetUserNotifications().');
        }
        const queryParameters = {};
        if (requestParameters['tenantId'] != null) {
            queryParameters['tenantId'] = requestParameters['tenantId'];
        }
        if (requestParameters['afterId'] != null) {
            queryParameters['afterId'] = requestParameters['afterId'];
        }
        if (requestParameters['afterCreatedAt'] != null) {
            queryParameters['afterCreatedAt'] = requestParameters['afterCreatedAt'];
        }
        if (requestParameters['unreadOnly'] != null) {
            queryParameters['unreadOnly'] = requestParameters['unreadOnly'];
        }
        if (requestParameters['dmOnly'] != null) {
            queryParameters['dmOnly'] = requestParameters['dmOnly'];
        }
        if (requestParameters['noDm'] != null) {
            queryParameters['noDm'] = requestParameters['noDm'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/user-notifications/reset`,
            method: 'POST',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.ResetUserNotificationsResponse1FromJSON)(jsonValue));
    }
    /**
     */
    async resetUserNotifications(requestParameters, initOverrides) {
        const response = await this.resetUserNotificationsRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async searchUsersRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling searchUsers().');
        }
        if (requestParameters['urlId'] == null) {
            throw new runtime.RequiredError('urlId', 'Required parameter "urlId" was null or undefined when calling searchUsers().');
        }
        const queryParameters = {};
        if (requestParameters['urlId'] != null) {
            queryParameters['urlId'] = requestParameters['urlId'];
        }
        if (requestParameters['usernameStartsWith'] != null) {
            queryParameters['usernameStartsWith'] = requestParameters['usernameStartsWith'];
        }
        if (requestParameters['mentionGroupIds'] != null) {
            queryParameters['mentionGroupIds'] = requestParameters['mentionGroupIds'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        if (requestParameters['searchSection'] != null) {
            queryParameters['searchSection'] = requestParameters['searchSection'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/user-search/{tenantId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'GET',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.SearchUsersResponse1FromJSON)(jsonValue));
    }
    /**
     */
    async searchUsers(requestParameters, initOverrides) {
        const response = await this.searchUsersRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async setCommentTextRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling setCommentText().');
        }
        if (requestParameters['commentId'] == null) {
            throw new runtime.RequiredError('commentId', 'Required parameter "commentId" was null or undefined when calling setCommentText().');
        }
        if (requestParameters['broadcastId'] == null) {
            throw new runtime.RequiredError('broadcastId', 'Required parameter "broadcastId" was null or undefined when calling setCommentText().');
        }
        if (requestParameters['commentTextUpdateRequest'] == null) {
            throw new runtime.RequiredError('commentTextUpdateRequest', 'Required parameter "commentTextUpdateRequest" was null or undefined when calling setCommentText().');
        }
        const queryParameters = {};
        if (requestParameters['broadcastId'] != null) {
            queryParameters['broadcastId'] = requestParameters['broadcastId'];
        }
        if (requestParameters['editKey'] != null) {
            queryParameters['editKey'] = requestParameters['editKey'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        headerParameters['Content-Type'] = 'application/json';
        const response = await this.request({
            path: `/comments/{tenantId}/{commentId}/update-text`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))).replace(`{${"commentId"}}`, encodeURIComponent(String(requestParameters['commentId']))),
            method: 'POST',
            headers: headerParameters,
            query: queryParameters,
            body: (0, index_1.CommentTextUpdateRequestToJSON)(requestParameters['commentTextUpdateRequest']),
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.SetCommentTextResponse1FromJSON)(jsonValue));
    }
    /**
     */
    async setCommentText(requestParameters, initOverrides) {
        const response = await this.setCommentTextRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async unBlockCommentPublicRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling unBlockCommentPublic().');
        }
        if (requestParameters['commentId'] == null) {
            throw new runtime.RequiredError('commentId', 'Required parameter "commentId" was null or undefined when calling unBlockCommentPublic().');
        }
        if (requestParameters['publicBlockFromCommentParams'] == null) {
            throw new runtime.RequiredError('publicBlockFromCommentParams', 'Required parameter "publicBlockFromCommentParams" was null or undefined when calling unBlockCommentPublic().');
        }
        const queryParameters = {};
        if (requestParameters['tenantId'] != null) {
            queryParameters['tenantId'] = requestParameters['tenantId'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        headerParameters['Content-Type'] = 'application/json';
        const response = await this.request({
            path: `/block-from-comment/{commentId}`.replace(`{${"commentId"}}`, encodeURIComponent(String(requestParameters['commentId']))),
            method: 'DELETE',
            headers: headerParameters,
            query: queryParameters,
            body: (0, index_1.PublicBlockFromCommentParamsToJSON)(requestParameters['publicBlockFromCommentParams']),
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.UnBlockCommentPublicResponseFromJSON)(jsonValue));
    }
    /**
     */
    async unBlockCommentPublic(requestParameters, initOverrides) {
        const response = await this.unBlockCommentPublicRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async unLockCommentRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling unLockComment().');
        }
        if (requestParameters['commentId'] == null) {
            throw new runtime.RequiredError('commentId', 'Required parameter "commentId" was null or undefined when calling unLockComment().');
        }
        if (requestParameters['broadcastId'] == null) {
            throw new runtime.RequiredError('broadcastId', 'Required parameter "broadcastId" was null or undefined when calling unLockComment().');
        }
        const queryParameters = {};
        if (requestParameters['broadcastId'] != null) {
            queryParameters['broadcastId'] = requestParameters['broadcastId'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/comments/{tenantId}/{commentId}/unlock`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))).replace(`{${"commentId"}}`, encodeURIComponent(String(requestParameters['commentId']))),
            method: 'POST',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.UnLockCommentResponseFromJSON)(jsonValue));
    }
    /**
     */
    async unLockComment(requestParameters, initOverrides) {
        const response = await this.unLockCommentRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async unPinCommentRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling unPinComment().');
        }
        if (requestParameters['commentId'] == null) {
            throw new runtime.RequiredError('commentId', 'Required parameter "commentId" was null or undefined when calling unPinComment().');
        }
        if (requestParameters['broadcastId'] == null) {
            throw new runtime.RequiredError('broadcastId', 'Required parameter "broadcastId" was null or undefined when calling unPinComment().');
        }
        const queryParameters = {};
        if (requestParameters['broadcastId'] != null) {
            queryParameters['broadcastId'] = requestParameters['broadcastId'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/comments/{tenantId}/{commentId}/unpin`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))).replace(`{${"commentId"}}`, encodeURIComponent(String(requestParameters['commentId']))),
            method: 'POST',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.UnPinCommentResponseFromJSON)(jsonValue));
    }
    /**
     */
    async unPinComment(requestParameters, initOverrides) {
        const response = await this.unPinCommentRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async updateFeedPostPublicRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling updateFeedPostPublic().');
        }
        if (requestParameters['postId'] == null) {
            throw new runtime.RequiredError('postId', 'Required parameter "postId" was null or undefined when calling updateFeedPostPublic().');
        }
        if (requestParameters['updateFeedPostParams'] == null) {
            throw new runtime.RequiredError('updateFeedPostParams', 'Required parameter "updateFeedPostParams" was null or undefined when calling updateFeedPostPublic().');
        }
        const queryParameters = {};
        if (requestParameters['broadcastId'] != null) {
            queryParameters['broadcastId'] = requestParameters['broadcastId'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        headerParameters['Content-Type'] = 'application/json';
        const response = await this.request({
            path: `/feed-posts/{tenantId}/{postId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))).replace(`{${"postId"}}`, encodeURIComponent(String(requestParameters['postId']))),
            method: 'PUT',
            headers: headerParameters,
            query: queryParameters,
            body: (0, index_1.UpdateFeedPostParamsToJSON)(requestParameters['updateFeedPostParams']),
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.UpdateFeedPostPublicResponseFromJSON)(jsonValue));
    }
    /**
     */
    async updateFeedPostPublic(requestParameters, initOverrides) {
        const response = await this.updateFeedPostPublicRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     * Enable or disable notifications for a specific comment.
     */
    async updateUserNotificationCommentSubscriptionStatusRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling updateUserNotificationCommentSubscriptionStatus().');
        }
        if (requestParameters['notificationId'] == null) {
            throw new runtime.RequiredError('notificationId', 'Required parameter "notificationId" was null or undefined when calling updateUserNotificationCommentSubscriptionStatus().');
        }
        if (requestParameters['optedInOrOut'] == null) {
            throw new runtime.RequiredError('optedInOrOut', 'Required parameter "optedInOrOut" was null or undefined when calling updateUserNotificationCommentSubscriptionStatus().');
        }
        if (requestParameters['commentId'] == null) {
            throw new runtime.RequiredError('commentId', 'Required parameter "commentId" was null or undefined when calling updateUserNotificationCommentSubscriptionStatus().');
        }
        const queryParameters = {};
        if (requestParameters['tenantId'] != null) {
            queryParameters['tenantId'] = requestParameters['tenantId'];
        }
        if (requestParameters['commentId'] != null) {
            queryParameters['commentId'] = requestParameters['commentId'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/user-notifications/{notificationId}/mark-opted/{optedInOrOut}`.replace(`{${"notificationId"}}`, encodeURIComponent(String(requestParameters['notificationId']))).replace(`{${"optedInOrOut"}}`, encodeURIComponent(String(requestParameters['optedInOrOut']))),
            method: 'POST',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.UpdateUserNotificationCommentSubscriptionStatusResponseFromJSON)(jsonValue));
    }
    /**
     * Enable or disable notifications for a specific comment.
     */
    async updateUserNotificationCommentSubscriptionStatus(requestParameters, initOverrides) {
        const response = await this.updateUserNotificationCommentSubscriptionStatusRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     * Enable or disable notifications for a page. When users are subscribed to a page, notifications are created for new root comments, and also
     */
    async updateUserNotificationPageSubscriptionStatusRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling updateUserNotificationPageSubscriptionStatus().');
        }
        if (requestParameters['urlId'] == null) {
            throw new runtime.RequiredError('urlId', 'Required parameter "urlId" was null or undefined when calling updateUserNotificationPageSubscriptionStatus().');
        }
        if (requestParameters['url'] == null) {
            throw new runtime.RequiredError('url', 'Required parameter "url" was null or undefined when calling updateUserNotificationPageSubscriptionStatus().');
        }
        if (requestParameters['pageTitle'] == null) {
            throw new runtime.RequiredError('pageTitle', 'Required parameter "pageTitle" was null or undefined when calling updateUserNotificationPageSubscriptionStatus().');
        }
        if (requestParameters['subscribedOrUnsubscribed'] == null) {
            throw new runtime.RequiredError('subscribedOrUnsubscribed', 'Required parameter "subscribedOrUnsubscribed" was null or undefined when calling updateUserNotificationPageSubscriptionStatus().');
        }
        const queryParameters = {};
        if (requestParameters['tenantId'] != null) {
            queryParameters['tenantId'] = requestParameters['tenantId'];
        }
        if (requestParameters['urlId'] != null) {
            queryParameters['urlId'] = requestParameters['urlId'];
        }
        if (requestParameters['url'] != null) {
            queryParameters['url'] = requestParameters['url'];
        }
        if (requestParameters['pageTitle'] != null) {
            queryParameters['pageTitle'] = requestParameters['pageTitle'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/user-notifications/set-subscription-state/{subscribedOrUnsubscribed}`.replace(`{${"subscribedOrUnsubscribed"}}`, encodeURIComponent(String(requestParameters['subscribedOrUnsubscribed']))),
            method: 'POST',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.UpdateUserNotificationPageSubscriptionStatusResponseFromJSON)(jsonValue));
    }
    /**
     * Enable or disable notifications for a page. When users are subscribed to a page, notifications are created for new root comments, and also
     */
    async updateUserNotificationPageSubscriptionStatus(requestParameters, initOverrides) {
        const response = await this.updateUserNotificationPageSubscriptionStatusRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async updateUserNotificationStatusRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling updateUserNotificationStatus().');
        }
        if (requestParameters['notificationId'] == null) {
            throw new runtime.RequiredError('notificationId', 'Required parameter "notificationId" was null or undefined when calling updateUserNotificationStatus().');
        }
        if (requestParameters['newStatus'] == null) {
            throw new runtime.RequiredError('newStatus', 'Required parameter "newStatus" was null or undefined when calling updateUserNotificationStatus().');
        }
        const queryParameters = {};
        if (requestParameters['tenantId'] != null) {
            queryParameters['tenantId'] = requestParameters['tenantId'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        const response = await this.request({
            path: `/user-notifications/{notificationId}/mark/{newStatus}`.replace(`{${"notificationId"}}`, encodeURIComponent(String(requestParameters['notificationId']))).replace(`{${"newStatus"}}`, encodeURIComponent(String(requestParameters['newStatus']))),
            method: 'POST',
            headers: headerParameters,
            query: queryParameters,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.UpdateUserNotificationStatusResponseFromJSON)(jsonValue));
    }
    /**
     */
    async updateUserNotificationStatus(requestParameters, initOverrides) {
        const response = await this.updateUserNotificationStatusRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     * Upload and resize an image
     */
    async uploadImageRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling uploadImage().');
        }
        if (requestParameters['file'] == null) {
            throw new runtime.RequiredError('file', 'Required parameter "file" was null or undefined when calling uploadImage().');
        }
        const queryParameters = {};
        if (requestParameters['sizePreset'] != null) {
            queryParameters['sizePreset'] = requestParameters['sizePreset'];
        }
        if (requestParameters['urlId'] != null) {
            queryParameters['urlId'] = requestParameters['urlId'];
        }
        const headerParameters = {};
        const consumes = [
            { contentType: 'multipart/form-data' },
        ];
        // @ts-ignore: canConsumeForm may be unused
        const canConsumeForm = runtime.canConsumeForm(consumes);
        let formParams;
        let useForm = false;
        // use FormData to transmit files using content-type "multipart/form-data"
        useForm = canConsumeForm;
        if (useForm) {
            formParams = new FormData();
        }
        else {
            formParams = new URLSearchParams();
        }
        if (requestParameters['file'] != null) {
            formParams.append('file', requestParameters['file']);
        }
        const response = await this.request({
            path: `/upload-image/{tenantId}`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))),
            method: 'POST',
            headers: headerParameters,
            query: queryParameters,
            body: formParams,
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.UploadImageResponseFromJSON)(jsonValue));
    }
    /**
     * Upload and resize an image
     */
    async uploadImage(requestParameters, initOverrides) {
        const response = await this.uploadImageRaw(requestParameters, initOverrides);
        return await response.value();
    }
    /**
     */
    async voteCommentRaw(requestParameters, initOverrides) {
        if (requestParameters['tenantId'] == null) {
            throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling voteComment().');
        }
        if (requestParameters['commentId'] == null) {
            throw new runtime.RequiredError('commentId', 'Required parameter "commentId" was null or undefined when calling voteComment().');
        }
        if (requestParameters['urlId'] == null) {
            throw new runtime.RequiredError('urlId', 'Required parameter "urlId" was null or undefined when calling voteComment().');
        }
        if (requestParameters['broadcastId'] == null) {
            throw new runtime.RequiredError('broadcastId', 'Required parameter "broadcastId" was null or undefined when calling voteComment().');
        }
        if (requestParameters['voteBodyParams'] == null) {
            throw new runtime.RequiredError('voteBodyParams', 'Required parameter "voteBodyParams" was null or undefined when calling voteComment().');
        }
        const queryParameters = {};
        if (requestParameters['urlId'] != null) {
            queryParameters['urlId'] = requestParameters['urlId'];
        }
        if (requestParameters['broadcastId'] != null) {
            queryParameters['broadcastId'] = requestParameters['broadcastId'];
        }
        if (requestParameters['sessionId'] != null) {
            queryParameters['sessionId'] = requestParameters['sessionId'];
        }
        if (requestParameters['sso'] != null) {
            queryParameters['sso'] = requestParameters['sso'];
        }
        const headerParameters = {};
        headerParameters['Content-Type'] = 'application/json';
        const response = await this.request({
            path: `/comments/{tenantId}/{commentId}/vote`.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId']))).replace(`{${"commentId"}}`, encodeURIComponent(String(requestParameters['commentId']))),
            method: 'POST',
            headers: headerParameters,
            query: queryParameters,
            body: (0, index_1.VoteBodyParamsToJSON)(requestParameters['voteBodyParams']),
        }, initOverrides);
        return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.VoteCommentResponseFromJSON)(jsonValue));
    }
    /**
     */
    async voteComment(requestParameters, initOverrides) {
        const response = await this.voteCommentRaw(requestParameters, initOverrides);
        return await response.value();
    }
}
exports.PublicApi = PublicApi;
/**
  * @export
  * @enum {string}
  */
var SearchUsersSearchSectionEnum;
(function (SearchUsersSearchSectionEnum) {
    SearchUsersSearchSectionEnum["fast"] = "fast";
    SearchUsersSearchSectionEnum["site"] = "site";
})(SearchUsersSearchSectionEnum || (exports.SearchUsersSearchSectionEnum = SearchUsersSearchSectionEnum = {}));
/**
  * @export
  * @enum {string}
  */
var UpdateUserNotificationCommentSubscriptionStatusOptedInOrOutEnum;
(function (UpdateUserNotificationCommentSubscriptionStatusOptedInOrOutEnum) {
    UpdateUserNotificationCommentSubscriptionStatusOptedInOrOutEnum["in"] = "in";
    UpdateUserNotificationCommentSubscriptionStatusOptedInOrOutEnum["out"] = "out";
})(UpdateUserNotificationCommentSubscriptionStatusOptedInOrOutEnum || (exports.UpdateUserNotificationCommentSubscriptionStatusOptedInOrOutEnum = UpdateUserNotificationCommentSubscriptionStatusOptedInOrOutEnum = {}));
/**
  * @export
  * @enum {string}
  */
var UpdateUserNotificationPageSubscriptionStatusSubscribedOrUnsubscribedEnum;
(function (UpdateUserNotificationPageSubscriptionStatusSubscribedOrUnsubscribedEnum) {
    UpdateUserNotificationPageSubscriptionStatusSubscribedOrUnsubscribedEnum["subscribe"] = "subscribe";
    UpdateUserNotificationPageSubscriptionStatusSubscribedOrUnsubscribedEnum["unsubscribe"] = "unsubscribe";
})(UpdateUserNotificationPageSubscriptionStatusSubscribedOrUnsubscribedEnum || (exports.UpdateUserNotificationPageSubscriptionStatusSubscribedOrUnsubscribedEnum = UpdateUserNotificationPageSubscriptionStatusSubscribedOrUnsubscribedEnum = {}));
/**
  * @export
  * @enum {string}
  */
var UpdateUserNotificationStatusNewStatusEnum;
(function (UpdateUserNotificationStatusNewStatusEnum) {
    UpdateUserNotificationStatusNewStatusEnum["read"] = "read";
    UpdateUserNotificationStatusNewStatusEnum["unread"] = "unread";
})(UpdateUserNotificationStatusNewStatusEnum || (exports.UpdateUserNotificationStatusNewStatusEnum = UpdateUserNotificationStatusNewStatusEnum = {}));
//# sourceMappingURL=PublicApi.js.map