/** * 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 { ContactsContactGroup, ContactsContactGroupList, ContactsInputContactGroup, DeleteContactGroupParams, DeleteContactGroupsParams, ListContactGroupsParams, LocateContactGroupParams, MergeContactGroupsParams, ResetContactGroupsParams, UpdateContactGroup2Body, UpdateContactGroup2Params, UpdateContactGroupBody, UpdateContactGroupParams, } from '../_models'; // --- header start // export const // --- title start getContactGroups = // --- title end (axiosInstance: AxiosInstance = axios) => { // --- header end /** * @summary Remove the Contact's group(s). */ const deleteContactGroups = ( contactId: string, params: DeleteContactGroupsParams, options?: AxiosRequestConfig, ): Promise> => { return axiosInstance.delete(`/contacts/${contactId}/groups`, { ...options, params: { ...params, ...options?.params, }, }); }; /** * @summary List of the Contact's group(s). */ const listContactGroups = ( contactId: string, params?: ListContactGroupsParams, options?: AxiosRequestConfig, ): Promise> => { return axiosInstance.get(`/contacts/${contactId}/groups`, { ...options, params: { ...params, ...options?.params, }, }); }; /** * @summary Associate more group(s) with the Contact. */ const mergeContactGroups = ( contactId: string, contactsInputContactGroup: ContactsInputContactGroup[], params?: MergeContactGroupsParams, options?: AxiosRequestConfig, ): Promise> => { return axiosInstance.post( `/contacts/${contactId}/groups`, contactsInputContactGroup, { ...options, params: { ...params, ...options?.params, }, }, ); }; /** * @summary Resets all groups of the contact according to the input dataset. */ const resetContactGroups = ( contactId: string, contactsInputContactGroup: ContactsInputContactGroup[], params?: ResetContactGroupsParams, options?: AxiosRequestConfig, ): Promise> => { return axiosInstance.put( `/contacts/${contactId}/groups`, contactsInputContactGroup, { ...options, params: { ...params, ...options?.params, }, }, ); }; /** * @summary Remove the Contact's group association. */ const deleteContactGroup = ( contactId: string, etag: string, params?: DeleteContactGroupParams, options?: AxiosRequestConfig, ): Promise> => { return axiosInstance.delete(`/contacts/${contactId}/groups/${etag}`, { ...options, params: { ...params, ...options?.params, }, }); }; /** * @summary Locate the Contact's group association. */ const locateContactGroup = ( contactId: string, etag: string, params?: LocateContactGroupParams, options?: AxiosRequestConfig, ): Promise> => { return axiosInstance.get(`/contacts/${contactId}/groups/${etag}`, { ...options, params: { ...params, ...options?.params, }, }); }; /** * @summary Update the Contact's group details. */ const updateContactGroup2 = ( contactId: string, etag: string, updateContactGroup2Body: UpdateContactGroup2Body, params?: UpdateContactGroup2Params, options?: AxiosRequestConfig, ): Promise> => { return axiosInstance.patch( `/contacts/${contactId}/groups/${etag}`, updateContactGroup2Body, { ...options, params: { ...params, ...options?.params, }, }, ); }; /** * @summary Update the Contact's group details. */ const updateContactGroup = ( contactId: string, etag: string, updateContactGroupBody: UpdateContactGroupBody, params?: UpdateContactGroupParams, options?: AxiosRequestConfig, ): Promise> => { return axiosInstance.put( `/contacts/${contactId}/groups/${etag}`, updateContactGroupBody, { ...options, params: { ...params, ...options?.params, }, }, ); }; // --- footer start return { deleteContactGroups, listContactGroups, mergeContactGroups, resetContactGroups, deleteContactGroup, locateContactGroup, updateContactGroup2, updateContactGroup, }; }; export type DeleteContactGroupsResult = AxiosResponse; export type ListContactGroupsResult = AxiosResponse; export type MergeContactGroupsResult = AxiosResponse; export type ResetContactGroupsResult = AxiosResponse; export type DeleteContactGroupResult = AxiosResponse; export type LocateContactGroupResult = AxiosResponse; export type UpdateContactGroup2Result = AxiosResponse; export type UpdateContactGroupResult = AxiosResponse; // --- footer end