/** * Generated by orval v8.19.0 🍺 * Do not edit manually. * Webitel API * OpenAPI spec version: 24.04.0 */ import axios from '@aliasedDeps/api-services/axios'; import type { AxiosInstance, AxiosRequestConfig, AxiosResponse } from 'axios'; import type { CreateCloseReasonParams, ListCloseReasonsParams, LocateCloseReasonParams, UpdateCloseReason2Params, UpdateCloseReasonParams, WebitelCasesCloseReason, WebitelCasesCloseReasonList, WebitelCasesInputCloseReason, WebitelCasesLocateCloseReasonResponse, } from '../_models'; // --- header start // export const // --- title start getCloseReasons = // --- title end (axiosInstance: AxiosInstance = axios) => { // --- header end /** * @summary Retrieve a list of close reasons or search close reasons */ const listCloseReasons = ( closeReasonGroupId: string, params?: ListCloseReasonsParams, options?: AxiosRequestConfig, ): Promise> => { return axiosInstance.get( `/close_reason_groups/${closeReasonGroupId}/close_reasons`, { ...options, params: { ...params, ...options?.params, }, }, ); }; /** * @summary Create a new close reason */ const createCloseReason = ( closeReasonGroupId: string, webitelCasesInputCloseReason: WebitelCasesInputCloseReason, params?: CreateCloseReasonParams, options?: AxiosRequestConfig, ): Promise> => { return axiosInstance.post( `/close_reason_groups/${closeReasonGroupId}/close_reasons`, webitelCasesInputCloseReason, { ...options, params: { ...params, ...options?.params, }, }, ); }; /** * @summary Delete a close reason */ const deleteCloseReason = ( closeReasonGroupId: string, id: string, options?: AxiosRequestConfig, ): Promise> => { return axiosInstance.delete( `/close_reason_groups/${closeReasonGroupId}/close_reasons/${id}`, options, ); }; /** * @summary Locate a close reason by ID */ const locateCloseReason = ( closeReasonGroupId: string, id: string, params?: LocateCloseReasonParams, options?: AxiosRequestConfig, ): Promise> => { return axiosInstance.get( `/close_reason_groups/${closeReasonGroupId}/close_reasons/${id}`, { ...options, params: { ...params, ...options?.params, }, }, ); }; /** * @summary Update an existing close reason */ const updateCloseReason2 = ( closeReasonGroupId: string, id: string, webitelCasesInputCloseReason: WebitelCasesInputCloseReason, params?: UpdateCloseReason2Params, options?: AxiosRequestConfig, ): Promise> => { return axiosInstance.patch( `/close_reason_groups/${closeReasonGroupId}/close_reasons/${id}`, webitelCasesInputCloseReason, { ...options, params: { ...params, ...options?.params, }, }, ); }; /** * @summary Update an existing close reason */ const updateCloseReason = ( closeReasonGroupId: string, id: string, webitelCasesInputCloseReason: WebitelCasesInputCloseReason, params?: UpdateCloseReasonParams, options?: AxiosRequestConfig, ): Promise> => { return axiosInstance.put( `/close_reason_groups/${closeReasonGroupId}/close_reasons/${id}`, webitelCasesInputCloseReason, { ...options, params: { ...params, ...options?.params, }, }, ); }; // --- footer start return { listCloseReasons, createCloseReason, deleteCloseReason, locateCloseReason, updateCloseReason2, updateCloseReason, }; }; export type ListCloseReasonsResult = AxiosResponse; export type CreateCloseReasonResult = AxiosResponse; export type DeleteCloseReasonResult = AxiosResponse; export type LocateCloseReasonResult = AxiosResponse; export type UpdateCloseReason2Result = AxiosResponse; export type UpdateCloseReasonResult = AxiosResponse; // --- footer end