"use strict";
/* tslint:disable */
/* eslint-disable */
/**
 * KubeBlocks Cloud API
 * KubeBlocks Cloud API is a RESTful API for managing KubeBlocks Cloud resources.  The API is organized around REST.  Our API has predictable resource-oriented URLs, accepts `JSON-encoded` request bodies, returns `JSON-encoded` responses, and uses standard HTTP response codes, authentication, and verbs.  We use standard HTTP authentication and provide API keys to identify who you are. Your API keys carry many privileges, so be sure to keep them secret! Do not share your secret API keys in publicly accessible areas such as GitHub, client-side code, and so forth.
 *
 * The version of the OpenAPI document: 1.0.0
 * Contact: support@apecloud.com
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.AIAgentApi = exports.AIAgentApiFactory = exports.AIAgentApiFp = exports.AIAgentApiAxiosParamCreator = void 0;
const axios_1 = __importDefault(require("axios"));
// Some imports not used depending on template conditions
// @ts-ignore
const common_1 = require("../common");
// @ts-ignore
const base_1 = require("../base");
/**
 * AIAgentApi - axios parameter creator
 * @export
 */
const AIAgentApiAxiosParamCreator = function (configuration) {
    return {
        /**
         *
         * @summary Approve one AI diagnosis tool confirmation
         * @param {string} orgName
         * @param {string} conversationId
         * @param {string} confirmationId
         * @param {AiAgentToolConfirmationDecisionRequest} [aiAgentToolConfirmationDecisionRequest]
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        approveAIAgentToolConfirmation: async (orgName, conversationId, confirmationId, aiAgentToolConfirmationDecisionRequest, options = {}) => {
            // verify required parameter 'orgName' is not null or undefined
            (0, common_1.assertParamExists)('approveAIAgentToolConfirmation', 'orgName', orgName);
            // verify required parameter 'conversationId' is not null or undefined
            (0, common_1.assertParamExists)('approveAIAgentToolConfirmation', 'conversationId', conversationId);
            // verify required parameter 'confirmationId' is not null or undefined
            (0, common_1.assertParamExists)('approveAIAgentToolConfirmation', 'confirmationId', confirmationId);
            const localVarPath = `/api/v1/organizations/{orgName}/ai-agent/conversations/{conversationId}/tool-confirmations/{confirmationId}/approve`
                .replace(`{${"orgName"}}`, encodeURIComponent(String(orgName)))
                .replace(`{${"conversationId"}}`, encodeURIComponent(String(conversationId)))
                .replace(`{${"confirmationId"}}`, encodeURIComponent(String(confirmationId)));
            // use dummy base URL string because the URL constructor only accepts absolute URLs.
            const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
            let baseOptions;
            if (configuration) {
                baseOptions = configuration.baseOptions;
            }
            const localVarRequestOptions = Object.assign(Object.assign({ method: 'POST' }, baseOptions), options);
            const localVarHeaderParameter = {};
            const localVarQueryParameter = {};
            // authentication BearerToken required
            // http bearer authentication required
            await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
            // authentication DigestAuth required
            await (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "Authorization", configuration);
            localVarHeaderParameter['Content-Type'] = 'application/json';
            (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
            let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
            localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
            localVarRequestOptions.data = (0, common_1.serializeDataIfNeeded)(aiAgentToolConfirmationDecisionRequest, localVarRequestOptions, configuration);
            return {
                url: (0, common_1.toPathString)(localVarUrlObj),
                options: localVarRequestOptions,
            };
        },
        /**
         *
         * @summary Browse a generated AI diagnosis report artifact
         * @param {string} orgName
         * @param {string} conversationId
         * @param {string} actionId
         * @param {string} artifactId
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        browseAIAgentTurnActionArtifact: async (orgName, conversationId, actionId, artifactId, options = {}) => {
            // verify required parameter 'orgName' is not null or undefined
            (0, common_1.assertParamExists)('browseAIAgentTurnActionArtifact', 'orgName', orgName);
            // verify required parameter 'conversationId' is not null or undefined
            (0, common_1.assertParamExists)('browseAIAgentTurnActionArtifact', 'conversationId', conversationId);
            // verify required parameter 'actionId' is not null or undefined
            (0, common_1.assertParamExists)('browseAIAgentTurnActionArtifact', 'actionId', actionId);
            // verify required parameter 'artifactId' is not null or undefined
            (0, common_1.assertParamExists)('browseAIAgentTurnActionArtifact', 'artifactId', artifactId);
            const localVarPath = `/api/v1/organizations/{orgName}/ai-agent/conversations/{conversationId}/turn-actions/{actionId}/artifacts/{artifactId}/browse`
                .replace(`{${"orgName"}}`, encodeURIComponent(String(orgName)))
                .replace(`{${"conversationId"}}`, encodeURIComponent(String(conversationId)))
                .replace(`{${"actionId"}}`, encodeURIComponent(String(actionId)))
                .replace(`{${"artifactId"}}`, encodeURIComponent(String(artifactId)));
            // use dummy base URL string because the URL constructor only accepts absolute URLs.
            const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
            let baseOptions;
            if (configuration) {
                baseOptions = configuration.baseOptions;
            }
            const localVarRequestOptions = Object.assign(Object.assign({ method: 'GET' }, baseOptions), options);
            const localVarHeaderParameter = {};
            const localVarQueryParameter = {};
            // authentication BearerToken required
            // http bearer authentication required
            await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
            // authentication DigestAuth required
            await (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "Authorization", configuration);
            (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
            let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
            localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
            return {
                url: (0, common_1.toPathString)(localVarUrlObj),
                options: localVarRequestOptions,
            };
        },
        /**
         *
         * @summary Create an AI diagnosis conversation
         * @param {string} orgName
         * @param {AiAgentCreateConversationRequest} aiAgentCreateConversationRequest
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        createAIAgentConversation: async (orgName, aiAgentCreateConversationRequest, options = {}) => {
            // verify required parameter 'orgName' is not null or undefined
            (0, common_1.assertParamExists)('createAIAgentConversation', 'orgName', orgName);
            // verify required parameter 'aiAgentCreateConversationRequest' is not null or undefined
            (0, common_1.assertParamExists)('createAIAgentConversation', 'aiAgentCreateConversationRequest', aiAgentCreateConversationRequest);
            const localVarPath = `/api/v1/organizations/{orgName}/ai-agent/conversations`
                .replace(`{${"orgName"}}`, encodeURIComponent(String(orgName)));
            // use dummy base URL string because the URL constructor only accepts absolute URLs.
            const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
            let baseOptions;
            if (configuration) {
                baseOptions = configuration.baseOptions;
            }
            const localVarRequestOptions = Object.assign(Object.assign({ method: 'POST' }, baseOptions), options);
            const localVarHeaderParameter = {};
            const localVarQueryParameter = {};
            // authentication BearerToken required
            // http bearer authentication required
            await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
            // authentication DigestAuth required
            await (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "Authorization", configuration);
            localVarHeaderParameter['Content-Type'] = 'application/json';
            (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
            let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
            localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
            localVarRequestOptions.data = (0, common_1.serializeDataIfNeeded)(aiAgentCreateConversationRequest, localVarRequestOptions, configuration);
            return {
                url: (0, common_1.toPathString)(localVarUrlObj),
                options: localVarRequestOptions,
            };
        },
        /**
         *
         * @summary Delete an AI diagnosis conversation
         * @param {string} orgName
         * @param {string} conversationId
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        deleteAIAgentConversation: async (orgName, conversationId, options = {}) => {
            // verify required parameter 'orgName' is not null or undefined
            (0, common_1.assertParamExists)('deleteAIAgentConversation', 'orgName', orgName);
            // verify required parameter 'conversationId' is not null or undefined
            (0, common_1.assertParamExists)('deleteAIAgentConversation', 'conversationId', conversationId);
            const localVarPath = `/api/v1/organizations/{orgName}/ai-agent/conversations/{conversationId}`
                .replace(`{${"orgName"}}`, encodeURIComponent(String(orgName)))
                .replace(`{${"conversationId"}}`, encodeURIComponent(String(conversationId)));
            // use dummy base URL string because the URL constructor only accepts absolute URLs.
            const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
            let baseOptions;
            if (configuration) {
                baseOptions = configuration.baseOptions;
            }
            const localVarRequestOptions = Object.assign(Object.assign({ method: 'DELETE' }, baseOptions), options);
            const localVarHeaderParameter = {};
            const localVarQueryParameter = {};
            // authentication BearerToken required
            // http bearer authentication required
            await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
            // authentication DigestAuth required
            await (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "Authorization", configuration);
            (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
            let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
            localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
            return {
                url: (0, common_1.toPathString)(localVarUrlObj),
                options: localVarRequestOptions,
            };
        },
        /**
         *
         * @summary Download a generated AI diagnosis report artifact
         * @param {string} orgName
         * @param {string} conversationId
         * @param {string} actionId
         * @param {string} artifactId
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        downloadAIAgentTurnActionArtifact: async (orgName, conversationId, actionId, artifactId, options = {}) => {
            // verify required parameter 'orgName' is not null or undefined
            (0, common_1.assertParamExists)('downloadAIAgentTurnActionArtifact', 'orgName', orgName);
            // verify required parameter 'conversationId' is not null or undefined
            (0, common_1.assertParamExists)('downloadAIAgentTurnActionArtifact', 'conversationId', conversationId);
            // verify required parameter 'actionId' is not null or undefined
            (0, common_1.assertParamExists)('downloadAIAgentTurnActionArtifact', 'actionId', actionId);
            // verify required parameter 'artifactId' is not null or undefined
            (0, common_1.assertParamExists)('downloadAIAgentTurnActionArtifact', 'artifactId', artifactId);
            const localVarPath = `/api/v1/organizations/{orgName}/ai-agent/conversations/{conversationId}/turn-actions/{actionId}/artifacts/{artifactId}/download`
                .replace(`{${"orgName"}}`, encodeURIComponent(String(orgName)))
                .replace(`{${"conversationId"}}`, encodeURIComponent(String(conversationId)))
                .replace(`{${"actionId"}}`, encodeURIComponent(String(actionId)))
                .replace(`{${"artifactId"}}`, encodeURIComponent(String(artifactId)));
            // use dummy base URL string because the URL constructor only accepts absolute URLs.
            const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
            let baseOptions;
            if (configuration) {
                baseOptions = configuration.baseOptions;
            }
            const localVarRequestOptions = Object.assign(Object.assign({ method: 'GET' }, baseOptions), options);
            const localVarHeaderParameter = {};
            const localVarQueryParameter = {};
            // authentication BearerToken required
            // http bearer authentication required
            await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
            // authentication DigestAuth required
            await (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "Authorization", configuration);
            (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
            let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
            localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
            return {
                url: (0, common_1.toPathString)(localVarUrlObj),
                options: localVarRequestOptions,
            };
        },
        /**
         *
         * @summary Get an AI diagnosis conversation
         * @param {string} orgName
         * @param {string} conversationId
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        getAIAgentConversation: async (orgName, conversationId, options = {}) => {
            // verify required parameter 'orgName' is not null or undefined
            (0, common_1.assertParamExists)('getAIAgentConversation', 'orgName', orgName);
            // verify required parameter 'conversationId' is not null or undefined
            (0, common_1.assertParamExists)('getAIAgentConversation', 'conversationId', conversationId);
            const localVarPath = `/api/v1/organizations/{orgName}/ai-agent/conversations/{conversationId}`
                .replace(`{${"orgName"}}`, encodeURIComponent(String(orgName)))
                .replace(`{${"conversationId"}}`, encodeURIComponent(String(conversationId)));
            // use dummy base URL string because the URL constructor only accepts absolute URLs.
            const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
            let baseOptions;
            if (configuration) {
                baseOptions = configuration.baseOptions;
            }
            const localVarRequestOptions = Object.assign(Object.assign({ method: 'GET' }, baseOptions), options);
            const localVarHeaderParameter = {};
            const localVarQueryParameter = {};
            // authentication BearerToken required
            // http bearer authentication required
            await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
            // authentication DigestAuth required
            await (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "Authorization", configuration);
            (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
            let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
            localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
            return {
                url: (0, common_1.toPathString)(localVarUrlObj),
                options: localVarRequestOptions,
            };
        },
        /**
         *
         * @summary Get AI diagnosis agent status
         * @param {string} orgName
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        getAIAgentStatus: async (orgName, options = {}) => {
            // verify required parameter 'orgName' is not null or undefined
            (0, common_1.assertParamExists)('getAIAgentStatus', 'orgName', orgName);
            const localVarPath = `/api/v1/organizations/{orgName}/ai-agent/status`
                .replace(`{${"orgName"}}`, encodeURIComponent(String(orgName)));
            // use dummy base URL string because the URL constructor only accepts absolute URLs.
            const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
            let baseOptions;
            if (configuration) {
                baseOptions = configuration.baseOptions;
            }
            const localVarRequestOptions = Object.assign(Object.assign({ method: 'GET' }, baseOptions), options);
            const localVarHeaderParameter = {};
            const localVarQueryParameter = {};
            // authentication BearerToken required
            // http bearer authentication required
            await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
            // authentication DigestAuth required
            await (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "Authorization", configuration);
            (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
            let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
            localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
            return {
                url: (0, common_1.toPathString)(localVarUrlObj),
                options: localVarRequestOptions,
            };
        },
        /**
         *
         * @summary Get one stable AI diagnosis turn process action
         * @param {string} orgName
         * @param {string} conversationId
         * @param {string} actionId
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        getAIAgentTurnAction: async (orgName, conversationId, actionId, options = {}) => {
            // verify required parameter 'orgName' is not null or undefined
            (0, common_1.assertParamExists)('getAIAgentTurnAction', 'orgName', orgName);
            // verify required parameter 'conversationId' is not null or undefined
            (0, common_1.assertParamExists)('getAIAgentTurnAction', 'conversationId', conversationId);
            // verify required parameter 'actionId' is not null or undefined
            (0, common_1.assertParamExists)('getAIAgentTurnAction', 'actionId', actionId);
            const localVarPath = `/api/v1/organizations/{orgName}/ai-agent/conversations/{conversationId}/turn-actions/{actionId}`
                .replace(`{${"orgName"}}`, encodeURIComponent(String(orgName)))
                .replace(`{${"conversationId"}}`, encodeURIComponent(String(conversationId)))
                .replace(`{${"actionId"}}`, encodeURIComponent(String(actionId)));
            // use dummy base URL string because the URL constructor only accepts absolute URLs.
            const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
            let baseOptions;
            if (configuration) {
                baseOptions = configuration.baseOptions;
            }
            const localVarRequestOptions = Object.assign(Object.assign({ method: 'GET' }, baseOptions), options);
            const localVarHeaderParameter = {};
            const localVarQueryParameter = {};
            // authentication BearerToken required
            // http bearer authentication required
            await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
            // authentication DigestAuth required
            await (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "Authorization", configuration);
            (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
            let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
            localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
            return {
                url: (0, common_1.toPathString)(localVarUrlObj),
                options: localVarRequestOptions,
            };
        },
        /**
         *
         * @summary List AI diagnosis conversations
         * @param {string} orgName
         * @param {number} [limit]
         * @param {string} [after]
         * @param {string} [clusterName]
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        listAIAgentConversations: async (orgName, limit, after, clusterName, options = {}) => {
            // verify required parameter 'orgName' is not null or undefined
            (0, common_1.assertParamExists)('listAIAgentConversations', 'orgName', orgName);
            const localVarPath = `/api/v1/organizations/{orgName}/ai-agent/conversations`
                .replace(`{${"orgName"}}`, encodeURIComponent(String(orgName)));
            // use dummy base URL string because the URL constructor only accepts absolute URLs.
            const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
            let baseOptions;
            if (configuration) {
                baseOptions = configuration.baseOptions;
            }
            const localVarRequestOptions = Object.assign(Object.assign({ method: 'GET' }, baseOptions), options);
            const localVarHeaderParameter = {};
            const localVarQueryParameter = {};
            // authentication BearerToken required
            // http bearer authentication required
            await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
            // authentication DigestAuth required
            await (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "Authorization", configuration);
            if (limit !== undefined) {
                localVarQueryParameter['limit'] = limit;
            }
            if (after !== undefined) {
                localVarQueryParameter['after'] = after;
            }
            if (clusterName !== undefined) {
                localVarQueryParameter['clusterName'] = clusterName;
            }
            (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
            let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
            localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
            return {
                url: (0, common_1.toPathString)(localVarUrlObj),
                options: localVarRequestOptions,
            };
        },
        /**
         *
         * @summary List AI diagnosis conversation messages
         * @param {string} orgName
         * @param {string} conversationId
         * @param {string} [after]
         * @param {number} [limit]
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        listAIAgentMessages: async (orgName, conversationId, after, limit, options = {}) => {
            // verify required parameter 'orgName' is not null or undefined
            (0, common_1.assertParamExists)('listAIAgentMessages', 'orgName', orgName);
            // verify required parameter 'conversationId' is not null or undefined
            (0, common_1.assertParamExists)('listAIAgentMessages', 'conversationId', conversationId);
            const localVarPath = `/api/v1/organizations/{orgName}/ai-agent/conversations/{conversationId}/messages`
                .replace(`{${"orgName"}}`, encodeURIComponent(String(orgName)))
                .replace(`{${"conversationId"}}`, encodeURIComponent(String(conversationId)));
            // use dummy base URL string because the URL constructor only accepts absolute URLs.
            const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
            let baseOptions;
            if (configuration) {
                baseOptions = configuration.baseOptions;
            }
            const localVarRequestOptions = Object.assign(Object.assign({ method: 'GET' }, baseOptions), options);
            const localVarHeaderParameter = {};
            const localVarQueryParameter = {};
            // authentication BearerToken required
            // http bearer authentication required
            await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
            // authentication DigestAuth required
            await (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "Authorization", configuration);
            if (after !== undefined) {
                localVarQueryParameter['after'] = after;
            }
            if (limit !== undefined) {
                localVarQueryParameter['limit'] = limit;
            }
            (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
            let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
            localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
            return {
                url: (0, common_1.toPathString)(localVarUrlObj),
                options: localVarRequestOptions,
            };
        },
        /**
         *
         * @summary List stable AI diagnosis turn process actions
         * @param {string} orgName
         * @param {string} conversationId
         * @param {string} [turnId]
         * @param {string} [after]
         * @param {number} [limit]
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        listAIAgentTurnActions: async (orgName, conversationId, turnId, after, limit, options = {}) => {
            // verify required parameter 'orgName' is not null or undefined
            (0, common_1.assertParamExists)('listAIAgentTurnActions', 'orgName', orgName);
            // verify required parameter 'conversationId' is not null or undefined
            (0, common_1.assertParamExists)('listAIAgentTurnActions', 'conversationId', conversationId);
            const localVarPath = `/api/v1/organizations/{orgName}/ai-agent/conversations/{conversationId}/turn-actions`
                .replace(`{${"orgName"}}`, encodeURIComponent(String(orgName)))
                .replace(`{${"conversationId"}}`, encodeURIComponent(String(conversationId)));
            // use dummy base URL string because the URL constructor only accepts absolute URLs.
            const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
            let baseOptions;
            if (configuration) {
                baseOptions = configuration.baseOptions;
            }
            const localVarRequestOptions = Object.assign(Object.assign({ method: 'GET' }, baseOptions), options);
            const localVarHeaderParameter = {};
            const localVarQueryParameter = {};
            // authentication BearerToken required
            // http bearer authentication required
            await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
            // authentication DigestAuth required
            await (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "Authorization", configuration);
            if (turnId !== undefined) {
                localVarQueryParameter['turnId'] = turnId;
            }
            if (after !== undefined) {
                localVarQueryParameter['after'] = after;
            }
            if (limit !== undefined) {
                localVarQueryParameter['limit'] = limit;
            }
            (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
            let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
            localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
            return {
                url: (0, common_1.toPathString)(localVarUrlObj),
                options: localVarRequestOptions,
            };
        },
        /**
         *
         * @summary Reject one AI diagnosis tool confirmation
         * @param {string} orgName
         * @param {string} conversationId
         * @param {string} confirmationId
         * @param {AiAgentToolConfirmationDecisionRequest} [aiAgentToolConfirmationDecisionRequest]
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        rejectAIAgentToolConfirmation: async (orgName, conversationId, confirmationId, aiAgentToolConfirmationDecisionRequest, options = {}) => {
            // verify required parameter 'orgName' is not null or undefined
            (0, common_1.assertParamExists)('rejectAIAgentToolConfirmation', 'orgName', orgName);
            // verify required parameter 'conversationId' is not null or undefined
            (0, common_1.assertParamExists)('rejectAIAgentToolConfirmation', 'conversationId', conversationId);
            // verify required parameter 'confirmationId' is not null or undefined
            (0, common_1.assertParamExists)('rejectAIAgentToolConfirmation', 'confirmationId', confirmationId);
            const localVarPath = `/api/v1/organizations/{orgName}/ai-agent/conversations/{conversationId}/tool-confirmations/{confirmationId}/reject`
                .replace(`{${"orgName"}}`, encodeURIComponent(String(orgName)))
                .replace(`{${"conversationId"}}`, encodeURIComponent(String(conversationId)))
                .replace(`{${"confirmationId"}}`, encodeURIComponent(String(confirmationId)));
            // use dummy base URL string because the URL constructor only accepts absolute URLs.
            const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
            let baseOptions;
            if (configuration) {
                baseOptions = configuration.baseOptions;
            }
            const localVarRequestOptions = Object.assign(Object.assign({ method: 'POST' }, baseOptions), options);
            const localVarHeaderParameter = {};
            const localVarQueryParameter = {};
            // authentication BearerToken required
            // http bearer authentication required
            await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
            // authentication DigestAuth required
            await (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "Authorization", configuration);
            localVarHeaderParameter['Content-Type'] = 'application/json';
            (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
            let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
            localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
            localVarRequestOptions.data = (0, common_1.serializeDataIfNeeded)(aiAgentToolConfirmationDecisionRequest, localVarRequestOptions, configuration);
            return {
                url: (0, common_1.toPathString)(localVarUrlObj),
                options: localVarRequestOptions,
            };
        },
        /**
         *
         * @summary Send a user message and start or continue AI diagnosis
         * @param {string} orgName
         * @param {string} conversationId
         * @param {AiAgentSendMessageRequest} aiAgentSendMessageRequest
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        sendAIAgentMessage: async (orgName, conversationId, aiAgentSendMessageRequest, options = {}) => {
            // verify required parameter 'orgName' is not null or undefined
            (0, common_1.assertParamExists)('sendAIAgentMessage', 'orgName', orgName);
            // verify required parameter 'conversationId' is not null or undefined
            (0, common_1.assertParamExists)('sendAIAgentMessage', 'conversationId', conversationId);
            // verify required parameter 'aiAgentSendMessageRequest' is not null or undefined
            (0, common_1.assertParamExists)('sendAIAgentMessage', 'aiAgentSendMessageRequest', aiAgentSendMessageRequest);
            const localVarPath = `/api/v1/organizations/{orgName}/ai-agent/conversations/{conversationId}/messages`
                .replace(`{${"orgName"}}`, encodeURIComponent(String(orgName)))
                .replace(`{${"conversationId"}}`, encodeURIComponent(String(conversationId)));
            // use dummy base URL string because the URL constructor only accepts absolute URLs.
            const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
            let baseOptions;
            if (configuration) {
                baseOptions = configuration.baseOptions;
            }
            const localVarRequestOptions = Object.assign(Object.assign({ method: 'POST' }, baseOptions), options);
            const localVarHeaderParameter = {};
            const localVarQueryParameter = {};
            // authentication BearerToken required
            // http bearer authentication required
            await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
            // authentication DigestAuth required
            await (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "Authorization", configuration);
            localVarHeaderParameter['Content-Type'] = 'application/json';
            (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
            let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
            localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
            localVarRequestOptions.data = (0, common_1.serializeDataIfNeeded)(aiAgentSendMessageRequest, localVarRequestOptions, configuration);
            return {
                url: (0, common_1.toPathString)(localVarUrlObj),
                options: localVarRequestOptions,
            };
        },
        /**
         *
         * @summary Stop the current AI diagnosis turn
         * @param {string} orgName
         * @param {string} conversationId
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        stopAIAgentConversation: async (orgName, conversationId, options = {}) => {
            // verify required parameter 'orgName' is not null or undefined
            (0, common_1.assertParamExists)('stopAIAgentConversation', 'orgName', orgName);
            // verify required parameter 'conversationId' is not null or undefined
            (0, common_1.assertParamExists)('stopAIAgentConversation', 'conversationId', conversationId);
            const localVarPath = `/api/v1/organizations/{orgName}/ai-agent/conversations/{conversationId}/stop`
                .replace(`{${"orgName"}}`, encodeURIComponent(String(orgName)))
                .replace(`{${"conversationId"}}`, encodeURIComponent(String(conversationId)));
            // use dummy base URL string because the URL constructor only accepts absolute URLs.
            const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
            let baseOptions;
            if (configuration) {
                baseOptions = configuration.baseOptions;
            }
            const localVarRequestOptions = Object.assign(Object.assign({ method: 'POST' }, baseOptions), options);
            const localVarHeaderParameter = {};
            const localVarQueryParameter = {};
            // authentication BearerToken required
            // http bearer authentication required
            await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
            // authentication DigestAuth required
            await (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "Authorization", configuration);
            (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
            let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
            localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
            return {
                url: (0, common_1.toPathString)(localVarUrlObj),
                options: localVarRequestOptions,
            };
        },
        /**
         *
         * @summary Subscribe to AI diagnosis conversation events
         * @param {string} orgName
         * @param {string} conversationId
         * @param {string} [after]
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        subscribeAIAgentConversationEvents: async (orgName, conversationId, after, options = {}) => {
            // verify required parameter 'orgName' is not null or undefined
            (0, common_1.assertParamExists)('subscribeAIAgentConversationEvents', 'orgName', orgName);
            // verify required parameter 'conversationId' is not null or undefined
            (0, common_1.assertParamExists)('subscribeAIAgentConversationEvents', 'conversationId', conversationId);
            const localVarPath = `/api/v1/organizations/{orgName}/ai-agent/conversations/{conversationId}/events`
                .replace(`{${"orgName"}}`, encodeURIComponent(String(orgName)))
                .replace(`{${"conversationId"}}`, encodeURIComponent(String(conversationId)));
            // use dummy base URL string because the URL constructor only accepts absolute URLs.
            const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
            let baseOptions;
            if (configuration) {
                baseOptions = configuration.baseOptions;
            }
            const localVarRequestOptions = Object.assign(Object.assign({ method: 'GET' }, baseOptions), options);
            const localVarHeaderParameter = {};
            const localVarQueryParameter = {};
            // authentication BearerToken required
            // http bearer authentication required
            await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
            // authentication DigestAuth required
            await (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "Authorization", configuration);
            if (after !== undefined) {
                localVarQueryParameter['after'] = after;
            }
            (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
            let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
            localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
            return {
                url: (0, common_1.toPathString)(localVarUrlObj),
                options: localVarRequestOptions,
            };
        },
    };
};
exports.AIAgentApiAxiosParamCreator = AIAgentApiAxiosParamCreator;
/**
 * AIAgentApi - functional programming interface
 * @export
 */
const AIAgentApiFp = function (configuration) {
    const localVarAxiosParamCreator = (0, exports.AIAgentApiAxiosParamCreator)(configuration);
    return {
        /**
         *
         * @summary Approve one AI diagnosis tool confirmation
         * @param {string} orgName
         * @param {string} conversationId
         * @param {string} confirmationId
         * @param {AiAgentToolConfirmationDecisionRequest} [aiAgentToolConfirmationDecisionRequest]
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        async approveAIAgentToolConfirmation(orgName, conversationId, confirmationId, aiAgentToolConfirmationDecisionRequest, options) {
            var _a, _b, _c;
            const localVarAxiosArgs = await localVarAxiosParamCreator.approveAIAgentToolConfirmation(orgName, conversationId, confirmationId, aiAgentToolConfirmationDecisionRequest, options);
            const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
            const localVarOperationServerBasePath = (_c = (_b = base_1.operationServerMap['AIAgentApi.approveAIAgentToolConfirmation']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
            return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
        },
        /**
         *
         * @summary Browse a generated AI diagnosis report artifact
         * @param {string} orgName
         * @param {string} conversationId
         * @param {string} actionId
         * @param {string} artifactId
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        async browseAIAgentTurnActionArtifact(orgName, conversationId, actionId, artifactId, options) {
            var _a, _b, _c;
            const localVarAxiosArgs = await localVarAxiosParamCreator.browseAIAgentTurnActionArtifact(orgName, conversationId, actionId, artifactId, options);
            const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
            const localVarOperationServerBasePath = (_c = (_b = base_1.operationServerMap['AIAgentApi.browseAIAgentTurnActionArtifact']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
            return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
        },
        /**
         *
         * @summary Create an AI diagnosis conversation
         * @param {string} orgName
         * @param {AiAgentCreateConversationRequest} aiAgentCreateConversationRequest
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        async createAIAgentConversation(orgName, aiAgentCreateConversationRequest, options) {
            var _a, _b, _c;
            const localVarAxiosArgs = await localVarAxiosParamCreator.createAIAgentConversation(orgName, aiAgentCreateConversationRequest, options);
            const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
            const localVarOperationServerBasePath = (_c = (_b = base_1.operationServerMap['AIAgentApi.createAIAgentConversation']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
            return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
        },
        /**
         *
         * @summary Delete an AI diagnosis conversation
         * @param {string} orgName
         * @param {string} conversationId
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        async deleteAIAgentConversation(orgName, conversationId, options) {
            var _a, _b, _c;
            const localVarAxiosArgs = await localVarAxiosParamCreator.deleteAIAgentConversation(orgName, conversationId, options);
            const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
            const localVarOperationServerBasePath = (_c = (_b = base_1.operationServerMap['AIAgentApi.deleteAIAgentConversation']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
            return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
        },
        /**
         *
         * @summary Download a generated AI diagnosis report artifact
         * @param {string} orgName
         * @param {string} conversationId
         * @param {string} actionId
         * @param {string} artifactId
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        async downloadAIAgentTurnActionArtifact(orgName, conversationId, actionId, artifactId, options) {
            var _a, _b, _c;
            const localVarAxiosArgs = await localVarAxiosParamCreator.downloadAIAgentTurnActionArtifact(orgName, conversationId, actionId, artifactId, options);
            const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
            const localVarOperationServerBasePath = (_c = (_b = base_1.operationServerMap['AIAgentApi.downloadAIAgentTurnActionArtifact']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
            return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
        },
        /**
         *
         * @summary Get an AI diagnosis conversation
         * @param {string} orgName
         * @param {string} conversationId
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        async getAIAgentConversation(orgName, conversationId, options) {
            var _a, _b, _c;
            const localVarAxiosArgs = await localVarAxiosParamCreator.getAIAgentConversation(orgName, conversationId, options);
            const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
            const localVarOperationServerBasePath = (_c = (_b = base_1.operationServerMap['AIAgentApi.getAIAgentConversation']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
            return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
        },
        /**
         *
         * @summary Get AI diagnosis agent status
         * @param {string} orgName
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        async getAIAgentStatus(orgName, options) {
            var _a, _b, _c;
            const localVarAxiosArgs = await localVarAxiosParamCreator.getAIAgentStatus(orgName, options);
            const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
            const localVarOperationServerBasePath = (_c = (_b = base_1.operationServerMap['AIAgentApi.getAIAgentStatus']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
            return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
        },
        /**
         *
         * @summary Get one stable AI diagnosis turn process action
         * @param {string} orgName
         * @param {string} conversationId
         * @param {string} actionId
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        async getAIAgentTurnAction(orgName, conversationId, actionId, options) {
            var _a, _b, _c;
            const localVarAxiosArgs = await localVarAxiosParamCreator.getAIAgentTurnAction(orgName, conversationId, actionId, options);
            const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
            const localVarOperationServerBasePath = (_c = (_b = base_1.operationServerMap['AIAgentApi.getAIAgentTurnAction']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
            return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
        },
        /**
         *
         * @summary List AI diagnosis conversations
         * @param {string} orgName
         * @param {number} [limit]
         * @param {string} [after]
         * @param {string} [clusterName]
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        async listAIAgentConversations(orgName, limit, after, clusterName, options) {
            var _a, _b, _c;
            const localVarAxiosArgs = await localVarAxiosParamCreator.listAIAgentConversations(orgName, limit, after, clusterName, options);
            const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
            const localVarOperationServerBasePath = (_c = (_b = base_1.operationServerMap['AIAgentApi.listAIAgentConversations']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
            return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
        },
        /**
         *
         * @summary List AI diagnosis conversation messages
         * @param {string} orgName
         * @param {string} conversationId
         * @param {string} [after]
         * @param {number} [limit]
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        async listAIAgentMessages(orgName, conversationId, after, limit, options) {
            var _a, _b, _c;
            const localVarAxiosArgs = await localVarAxiosParamCreator.listAIAgentMessages(orgName, conversationId, after, limit, options);
            const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
            const localVarOperationServerBasePath = (_c = (_b = base_1.operationServerMap['AIAgentApi.listAIAgentMessages']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
            return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
        },
        /**
         *
         * @summary List stable AI diagnosis turn process actions
         * @param {string} orgName
         * @param {string} conversationId
         * @param {string} [turnId]
         * @param {string} [after]
         * @param {number} [limit]
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        async listAIAgentTurnActions(orgName, conversationId, turnId, after, limit, options) {
            var _a, _b, _c;
            const localVarAxiosArgs = await localVarAxiosParamCreator.listAIAgentTurnActions(orgName, conversationId, turnId, after, limit, options);
            const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
            const localVarOperationServerBasePath = (_c = (_b = base_1.operationServerMap['AIAgentApi.listAIAgentTurnActions']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
            return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
        },
        /**
         *
         * @summary Reject one AI diagnosis tool confirmation
         * @param {string} orgName
         * @param {string} conversationId
         * @param {string} confirmationId
         * @param {AiAgentToolConfirmationDecisionRequest} [aiAgentToolConfirmationDecisionRequest]
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        async rejectAIAgentToolConfirmation(orgName, conversationId, confirmationId, aiAgentToolConfirmationDecisionRequest, options) {
            var _a, _b, _c;
            const localVarAxiosArgs = await localVarAxiosParamCreator.rejectAIAgentToolConfirmation(orgName, conversationId, confirmationId, aiAgentToolConfirmationDecisionRequest, options);
            const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
            const localVarOperationServerBasePath = (_c = (_b = base_1.operationServerMap['AIAgentApi.rejectAIAgentToolConfirmation']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
            return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
        },
        /**
         *
         * @summary Send a user message and start or continue AI diagnosis
         * @param {string} orgName
         * @param {string} conversationId
         * @param {AiAgentSendMessageRequest} aiAgentSendMessageRequest
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        async sendAIAgentMessage(orgName, conversationId, aiAgentSendMessageRequest, options) {
            var _a, _b, _c;
            const localVarAxiosArgs = await localVarAxiosParamCreator.sendAIAgentMessage(orgName, conversationId, aiAgentSendMessageRequest, options);
            const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
            const localVarOperationServerBasePath = (_c = (_b = base_1.operationServerMap['AIAgentApi.sendAIAgentMessage']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
            return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
        },
        /**
         *
         * @summary Stop the current AI diagnosis turn
         * @param {string} orgName
         * @param {string} conversationId
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        async stopAIAgentConversation(orgName, conversationId, options) {
            var _a, _b, _c;
            const localVarAxiosArgs = await localVarAxiosParamCreator.stopAIAgentConversation(orgName, conversationId, options);
            const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
            const localVarOperationServerBasePath = (_c = (_b = base_1.operationServerMap['AIAgentApi.stopAIAgentConversation']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
            return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
        },
        /**
         *
         * @summary Subscribe to AI diagnosis conversation events
         * @param {string} orgName
         * @param {string} conversationId
         * @param {string} [after]
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        async subscribeAIAgentConversationEvents(orgName, conversationId, after, options) {
            var _a, _b, _c;
            const localVarAxiosArgs = await localVarAxiosParamCreator.subscribeAIAgentConversationEvents(orgName, conversationId, after, options);
            const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
            const localVarOperationServerBasePath = (_c = (_b = base_1.operationServerMap['AIAgentApi.subscribeAIAgentConversationEvents']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
            return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
        },
    };
};
exports.AIAgentApiFp = AIAgentApiFp;
/**
 * AIAgentApi - factory interface
 * @export
 */
const AIAgentApiFactory = function (configuration, basePath, axios) {
    const localVarFp = (0, exports.AIAgentApiFp)(configuration);
    return {
        /**
         *
         * @summary Approve one AI diagnosis tool confirmation
         * @param {AIAgentApiApproveAIAgentToolConfirmationRequest} requestParameters Request parameters.
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        approveAIAgentToolConfirmation(requestParameters, options) {
            return localVarFp.approveAIAgentToolConfirmation(requestParameters.orgName, requestParameters.conversationId, requestParameters.confirmationId, requestParameters.aiAgentToolConfirmationDecisionRequest, options).then((request) => request(axios, basePath));
        },
        /**
         *
         * @summary Browse a generated AI diagnosis report artifact
         * @param {AIAgentApiBrowseAIAgentTurnActionArtifactRequest} requestParameters Request parameters.
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        browseAIAgentTurnActionArtifact(requestParameters, options) {
            return localVarFp.browseAIAgentTurnActionArtifact(requestParameters.orgName, requestParameters.conversationId, requestParameters.actionId, requestParameters.artifactId, options).then((request) => request(axios, basePath));
        },
        /**
         *
         * @summary Create an AI diagnosis conversation
         * @param {AIAgentApiCreateAIAgentConversationRequest} requestParameters Request parameters.
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        createAIAgentConversation(requestParameters, options) {
            return localVarFp.createAIAgentConversation(requestParameters.orgName, requestParameters.aiAgentCreateConversationRequest, options).then((request) => request(axios, basePath));
        },
        /**
         *
         * @summary Delete an AI diagnosis conversation
         * @param {AIAgentApiDeleteAIAgentConversationRequest} requestParameters Request parameters.
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        deleteAIAgentConversation(requestParameters, options) {
            return localVarFp.deleteAIAgentConversation(requestParameters.orgName, requestParameters.conversationId, options).then((request) => request(axios, basePath));
        },
        /**
         *
         * @summary Download a generated AI diagnosis report artifact
         * @param {AIAgentApiDownloadAIAgentTurnActionArtifactRequest} requestParameters Request parameters.
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        downloadAIAgentTurnActionArtifact(requestParameters, options) {
            return localVarFp.downloadAIAgentTurnActionArtifact(requestParameters.orgName, requestParameters.conversationId, requestParameters.actionId, requestParameters.artifactId, options).then((request) => request(axios, basePath));
        },
        /**
         *
         * @summary Get an AI diagnosis conversation
         * @param {AIAgentApiGetAIAgentConversationRequest} requestParameters Request parameters.
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        getAIAgentConversation(requestParameters, options) {
            return localVarFp.getAIAgentConversation(requestParameters.orgName, requestParameters.conversationId, options).then((request) => request(axios, basePath));
        },
        /**
         *
         * @summary Get AI diagnosis agent status
         * @param {AIAgentApiGetAIAgentStatusRequest} requestParameters Request parameters.
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        getAIAgentStatus(requestParameters, options) {
            return localVarFp.getAIAgentStatus(requestParameters.orgName, options).then((request) => request(axios, basePath));
        },
        /**
         *
         * @summary Get one stable AI diagnosis turn process action
         * @param {AIAgentApiGetAIAgentTurnActionRequest} requestParameters Request parameters.
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        getAIAgentTurnAction(requestParameters, options) {
            return localVarFp.getAIAgentTurnAction(requestParameters.orgName, requestParameters.conversationId, requestParameters.actionId, options).then((request) => request(axios, basePath));
        },
        /**
         *
         * @summary List AI diagnosis conversations
         * @param {AIAgentApiListAIAgentConversationsRequest} requestParameters Request parameters.
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        listAIAgentConversations(requestParameters, options) {
            return localVarFp.listAIAgentConversations(requestParameters.orgName, requestParameters.limit, requestParameters.after, requestParameters.clusterName, options).then((request) => request(axios, basePath));
        },
        /**
         *
         * @summary List AI diagnosis conversation messages
         * @param {AIAgentApiListAIAgentMessagesRequest} requestParameters Request parameters.
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        listAIAgentMessages(requestParameters, options) {
            return localVarFp.listAIAgentMessages(requestParameters.orgName, requestParameters.conversationId, requestParameters.after, requestParameters.limit, options).then((request) => request(axios, basePath));
        },
        /**
         *
         * @summary List stable AI diagnosis turn process actions
         * @param {AIAgentApiListAIAgentTurnActionsRequest} requestParameters Request parameters.
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        listAIAgentTurnActions(requestParameters, options) {
            return localVarFp.listAIAgentTurnActions(requestParameters.orgName, requestParameters.conversationId, requestParameters.turnId, requestParameters.after, requestParameters.limit, options).then((request) => request(axios, basePath));
        },
        /**
         *
         * @summary Reject one AI diagnosis tool confirmation
         * @param {AIAgentApiRejectAIAgentToolConfirmationRequest} requestParameters Request parameters.
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        rejectAIAgentToolConfirmation(requestParameters, options) {
            return localVarFp.rejectAIAgentToolConfirmation(requestParameters.orgName, requestParameters.conversationId, requestParameters.confirmationId, requestParameters.aiAgentToolConfirmationDecisionRequest, options).then((request) => request(axios, basePath));
        },
        /**
         *
         * @summary Send a user message and start or continue AI diagnosis
         * @param {AIAgentApiSendAIAgentMessageRequest} requestParameters Request parameters.
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        sendAIAgentMessage(requestParameters, options) {
            return localVarFp.sendAIAgentMessage(requestParameters.orgName, requestParameters.conversationId, requestParameters.aiAgentSendMessageRequest, options).then((request) => request(axios, basePath));
        },
        /**
         *
         * @summary Stop the current AI diagnosis turn
         * @param {AIAgentApiStopAIAgentConversationRequest} requestParameters Request parameters.
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        stopAIAgentConversation(requestParameters, options) {
            return localVarFp.stopAIAgentConversation(requestParameters.orgName, requestParameters.conversationId, options).then((request) => request(axios, basePath));
        },
        /**
         *
         * @summary Subscribe to AI diagnosis conversation events
         * @param {AIAgentApiSubscribeAIAgentConversationEventsRequest} requestParameters Request parameters.
         * @param {*} [options] Override http request option.
         * @throws {RequiredError}
         */
        subscribeAIAgentConversationEvents(requestParameters, options) {
            return localVarFp.subscribeAIAgentConversationEvents(requestParameters.orgName, requestParameters.conversationId, requestParameters.after, options).then((request) => request(axios, basePath));
        },
    };
};
exports.AIAgentApiFactory = AIAgentApiFactory;
/**
 * AIAgentApi - object-oriented interface
 * @export
 * @class AIAgentApi
 * @extends {BaseAPI}
 */
class AIAgentApi extends base_1.BaseAPI {
    /**
     *
     * @summary Approve one AI diagnosis tool confirmation
     * @param {AIAgentApiApproveAIAgentToolConfirmationRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AIAgentApi
     */
    approveAIAgentToolConfirmation(requestParameters, options) {
        return (0, exports.AIAgentApiFp)(this.configuration).approveAIAgentToolConfirmation(requestParameters.orgName, requestParameters.conversationId, requestParameters.confirmationId, requestParameters.aiAgentToolConfirmationDecisionRequest, options).then((request) => request(this.axios, this.basePath));
    }
    /**
     *
     * @summary Browse a generated AI diagnosis report artifact
     * @param {AIAgentApiBrowseAIAgentTurnActionArtifactRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AIAgentApi
     */
    browseAIAgentTurnActionArtifact(requestParameters, options) {
        return (0, exports.AIAgentApiFp)(this.configuration).browseAIAgentTurnActionArtifact(requestParameters.orgName, requestParameters.conversationId, requestParameters.actionId, requestParameters.artifactId, options).then((request) => request(this.axios, this.basePath));
    }
    /**
     *
     * @summary Create an AI diagnosis conversation
     * @param {AIAgentApiCreateAIAgentConversationRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AIAgentApi
     */
    createAIAgentConversation(requestParameters, options) {
        return (0, exports.AIAgentApiFp)(this.configuration).createAIAgentConversation(requestParameters.orgName, requestParameters.aiAgentCreateConversationRequest, options).then((request) => request(this.axios, this.basePath));
    }
    /**
     *
     * @summary Delete an AI diagnosis conversation
     * @param {AIAgentApiDeleteAIAgentConversationRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AIAgentApi
     */
    deleteAIAgentConversation(requestParameters, options) {
        return (0, exports.AIAgentApiFp)(this.configuration).deleteAIAgentConversation(requestParameters.orgName, requestParameters.conversationId, options).then((request) => request(this.axios, this.basePath));
    }
    /**
     *
     * @summary Download a generated AI diagnosis report artifact
     * @param {AIAgentApiDownloadAIAgentTurnActionArtifactRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AIAgentApi
     */
    downloadAIAgentTurnActionArtifact(requestParameters, options) {
        return (0, exports.AIAgentApiFp)(this.configuration).downloadAIAgentTurnActionArtifact(requestParameters.orgName, requestParameters.conversationId, requestParameters.actionId, requestParameters.artifactId, options).then((request) => request(this.axios, this.basePath));
    }
    /**
     *
     * @summary Get an AI diagnosis conversation
     * @param {AIAgentApiGetAIAgentConversationRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AIAgentApi
     */
    getAIAgentConversation(requestParameters, options) {
        return (0, exports.AIAgentApiFp)(this.configuration).getAIAgentConversation(requestParameters.orgName, requestParameters.conversationId, options).then((request) => request(this.axios, this.basePath));
    }
    /**
     *
     * @summary Get AI diagnosis agent status
     * @param {AIAgentApiGetAIAgentStatusRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AIAgentApi
     */
    getAIAgentStatus(requestParameters, options) {
        return (0, exports.AIAgentApiFp)(this.configuration).getAIAgentStatus(requestParameters.orgName, options).then((request) => request(this.axios, this.basePath));
    }
    /**
     *
     * @summary Get one stable AI diagnosis turn process action
     * @param {AIAgentApiGetAIAgentTurnActionRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AIAgentApi
     */
    getAIAgentTurnAction(requestParameters, options) {
        return (0, exports.AIAgentApiFp)(this.configuration).getAIAgentTurnAction(requestParameters.orgName, requestParameters.conversationId, requestParameters.actionId, options).then((request) => request(this.axios, this.basePath));
    }
    /**
     *
     * @summary List AI diagnosis conversations
     * @param {AIAgentApiListAIAgentConversationsRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AIAgentApi
     */
    listAIAgentConversations(requestParameters, options) {
        return (0, exports.AIAgentApiFp)(this.configuration).listAIAgentConversations(requestParameters.orgName, requestParameters.limit, requestParameters.after, requestParameters.clusterName, options).then((request) => request(this.axios, this.basePath));
    }
    /**
     *
     * @summary List AI diagnosis conversation messages
     * @param {AIAgentApiListAIAgentMessagesRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AIAgentApi
     */
    listAIAgentMessages(requestParameters, options) {
        return (0, exports.AIAgentApiFp)(this.configuration).listAIAgentMessages(requestParameters.orgName, requestParameters.conversationId, requestParameters.after, requestParameters.limit, options).then((request) => request(this.axios, this.basePath));
    }
    /**
     *
     * @summary List stable AI diagnosis turn process actions
     * @param {AIAgentApiListAIAgentTurnActionsRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AIAgentApi
     */
    listAIAgentTurnActions(requestParameters, options) {
        return (0, exports.AIAgentApiFp)(this.configuration).listAIAgentTurnActions(requestParameters.orgName, requestParameters.conversationId, requestParameters.turnId, requestParameters.after, requestParameters.limit, options).then((request) => request(this.axios, this.basePath));
    }
    /**
     *
     * @summary Reject one AI diagnosis tool confirmation
     * @param {AIAgentApiRejectAIAgentToolConfirmationRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AIAgentApi
     */
    rejectAIAgentToolConfirmation(requestParameters, options) {
        return (0, exports.AIAgentApiFp)(this.configuration).rejectAIAgentToolConfirmation(requestParameters.orgName, requestParameters.conversationId, requestParameters.confirmationId, requestParameters.aiAgentToolConfirmationDecisionRequest, options).then((request) => request(this.axios, this.basePath));
    }
    /**
     *
     * @summary Send a user message and start or continue AI diagnosis
     * @param {AIAgentApiSendAIAgentMessageRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AIAgentApi
     */
    sendAIAgentMessage(requestParameters, options) {
        return (0, exports.AIAgentApiFp)(this.configuration).sendAIAgentMessage(requestParameters.orgName, requestParameters.conversationId, requestParameters.aiAgentSendMessageRequest, options).then((request) => request(this.axios, this.basePath));
    }
    /**
     *
     * @summary Stop the current AI diagnosis turn
     * @param {AIAgentApiStopAIAgentConversationRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AIAgentApi
     */
    stopAIAgentConversation(requestParameters, options) {
        return (0, exports.AIAgentApiFp)(this.configuration).stopAIAgentConversation(requestParameters.orgName, requestParameters.conversationId, options).then((request) => request(this.axios, this.basePath));
    }
    /**
     *
     * @summary Subscribe to AI diagnosis conversation events
     * @param {AIAgentApiSubscribeAIAgentConversationEventsRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof AIAgentApi
     */
    subscribeAIAgentConversationEvents(requestParameters, options) {
        return (0, exports.AIAgentApiFp)(this.configuration).subscribeAIAgentConversationEvents(requestParameters.orgName, requestParameters.conversationId, requestParameters.after, options).then((request) => request(this.axios, this.basePath));
    }
}
exports.AIAgentApi = AIAgentApi;
//# sourceMappingURL=aiagent-api.js.map