import type { Configuration } from '../configuration'; import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios'; import globalAxios from 'axios'; import { type RequestArgs, BaseAPI } from '../base'; import type { Client } from '../models'; import type { ClientRole } from '../models'; import type { ClientSearchCriteria } from '../models'; import type { CreditArrangement } from '../models'; import type { PatchOperation } from '../models'; export declare const ClientsApiAxiosParamCreator: (configuration?: Configuration) => { _delete: (clientId: string, options?: RawAxiosRequestConfig) => Promise; create: (client: Client, idempotencyKey?: string, options?: RawAxiosRequestConfig) => Promise; getAll: (offset?: number, limit?: number, paginationDetails?: GetAllPaginationDetailsEnum, detailsLevel?: GetAllDetailsLevelEnum, creditOfficerUsername?: string, branchId?: string, centreId?: string, firstName?: string, lastName?: string, idNumber?: string, state?: GetAllStateEnum, birthDate?: string, sortBy?: string, options?: RawAxiosRequestConfig) => Promise; getById: (clientId: string, detailsLevel?: GetByIdDetailsLevelEnum, options?: RawAxiosRequestConfig) => Promise; getCreditArrangementsByClientIdOrKey: (clientId: string, offset?: number, limit?: number, paginationDetails?: GetCreditArrangementsByClientIdOrKeyPaginationDetailsEnum, detailsLevel?: GetCreditArrangementsByClientIdOrKeyDetailsLevelEnum, options?: RawAxiosRequestConfig) => Promise; getRoleByClientId: (clientId: string, options?: RawAxiosRequestConfig) => Promise; patch: (clientId: string, patchOperation: Array, keepAssociationForAccounts?: boolean, options?: RawAxiosRequestConfig) => Promise; search: (clientSearchCriteria: ClientSearchCriteria, offset?: number, limit?: number, paginationDetails?: SearchPaginationDetailsEnum, detailsLevel?: SearchDetailsLevelEnum, options?: RawAxiosRequestConfig) => Promise; update: (clientId: string, client: Client, keepAssociationForAccounts?: boolean, options?: RawAxiosRequestConfig) => Promise; }; export declare const ClientsApiFp: (configuration?: Configuration) => { _delete(clientId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; create(client: Client, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; getAll(offset?: number, limit?: number, paginationDetails?: GetAllPaginationDetailsEnum, detailsLevel?: GetAllDetailsLevelEnum, creditOfficerUsername?: string, branchId?: string, centreId?: string, firstName?: string, lastName?: string, idNumber?: string, state?: GetAllStateEnum, birthDate?: string, sortBy?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>>; getById(clientId: string, detailsLevel?: GetByIdDetailsLevelEnum, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; getCreditArrangementsByClientIdOrKey(clientId: string, offset?: number, limit?: number, paginationDetails?: GetCreditArrangementsByClientIdOrKeyPaginationDetailsEnum, detailsLevel?: GetCreditArrangementsByClientIdOrKeyDetailsLevelEnum, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>>; getRoleByClientId(clientId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; patch(clientId: string, patchOperation: Array, keepAssociationForAccounts?: boolean, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; search(clientSearchCriteria: ClientSearchCriteria, offset?: number, limit?: number, paginationDetails?: SearchPaginationDetailsEnum, detailsLevel?: SearchDetailsLevelEnum, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>>; update(clientId: string, client: Client, keepAssociationForAccounts?: boolean, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; }; export declare const ClientsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => { _delete(clientId: string, options?: RawAxiosRequestConfig): AxiosPromise; create(client: Client, idempotencyKey?: string, options?: RawAxiosRequestConfig): AxiosPromise; getAll(offset?: number, limit?: number, paginationDetails?: GetAllPaginationDetailsEnum, detailsLevel?: GetAllDetailsLevelEnum, creditOfficerUsername?: string, branchId?: string, centreId?: string, firstName?: string, lastName?: string, idNumber?: string, state?: GetAllStateEnum, birthDate?: string, sortBy?: string, options?: RawAxiosRequestConfig): AxiosPromise>; getById(clientId: string, detailsLevel?: GetByIdDetailsLevelEnum, options?: RawAxiosRequestConfig): AxiosPromise; getCreditArrangementsByClientIdOrKey(clientId: string, offset?: number, limit?: number, paginationDetails?: GetCreditArrangementsByClientIdOrKeyPaginationDetailsEnum, detailsLevel?: GetCreditArrangementsByClientIdOrKeyDetailsLevelEnum, options?: RawAxiosRequestConfig): AxiosPromise>; getRoleByClientId(clientId: string, options?: RawAxiosRequestConfig): AxiosPromise; patch(clientId: string, patchOperation: Array, keepAssociationForAccounts?: boolean, options?: RawAxiosRequestConfig): AxiosPromise; search(clientSearchCriteria: ClientSearchCriteria, offset?: number, limit?: number, paginationDetails?: SearchPaginationDetailsEnum, detailsLevel?: SearchDetailsLevelEnum, options?: RawAxiosRequestConfig): AxiosPromise>; update(clientId: string, client: Client, keepAssociationForAccounts?: boolean, options?: RawAxiosRequestConfig): AxiosPromise; }; export declare class ClientsApi extends BaseAPI { _delete(clientId: string, options?: RawAxiosRequestConfig): Promise>; create(client: Client, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise>; getAll(offset?: number, limit?: number, paginationDetails?: GetAllPaginationDetailsEnum, detailsLevel?: GetAllDetailsLevelEnum, creditOfficerUsername?: string, branchId?: string, centreId?: string, firstName?: string, lastName?: string, idNumber?: string, state?: GetAllStateEnum, birthDate?: string, sortBy?: string, options?: RawAxiosRequestConfig): Promise>; getById(clientId: string, detailsLevel?: GetByIdDetailsLevelEnum, options?: RawAxiosRequestConfig): Promise>; getCreditArrangementsByClientIdOrKey(clientId: string, offset?: number, limit?: number, paginationDetails?: GetCreditArrangementsByClientIdOrKeyPaginationDetailsEnum, detailsLevel?: GetCreditArrangementsByClientIdOrKeyDetailsLevelEnum, options?: RawAxiosRequestConfig): Promise>; getRoleByClientId(clientId: string, options?: RawAxiosRequestConfig): Promise>; patch(clientId: string, patchOperation: Array, keepAssociationForAccounts?: boolean, options?: RawAxiosRequestConfig): Promise>; search(clientSearchCriteria: ClientSearchCriteria, offset?: number, limit?: number, paginationDetails?: SearchPaginationDetailsEnum, detailsLevel?: SearchDetailsLevelEnum, options?: RawAxiosRequestConfig): Promise>; update(clientId: string, client: Client, keepAssociationForAccounts?: boolean, options?: RawAxiosRequestConfig): Promise>; } export declare const GetAllPaginationDetailsEnum: { readonly On: "ON"; readonly Off: "OFF"; }; export type GetAllPaginationDetailsEnum = (typeof GetAllPaginationDetailsEnum)[keyof typeof GetAllPaginationDetailsEnum]; export declare const GetAllDetailsLevelEnum: { readonly Basic: "BASIC"; readonly Full: "FULL"; }; export type GetAllDetailsLevelEnum = (typeof GetAllDetailsLevelEnum)[keyof typeof GetAllDetailsLevelEnum]; export declare const GetAllStateEnum: { readonly PendingApproval: "PENDING_APPROVAL"; readonly Inactive: "INACTIVE"; readonly Active: "ACTIVE"; readonly Exited: "EXITED"; readonly Blacklisted: "BLACKLISTED"; readonly Rejected: "REJECTED"; }; export type GetAllStateEnum = (typeof GetAllStateEnum)[keyof typeof GetAllStateEnum]; export declare const GetByIdDetailsLevelEnum: { readonly Basic: "BASIC"; readonly Full: "FULL"; }; export type GetByIdDetailsLevelEnum = (typeof GetByIdDetailsLevelEnum)[keyof typeof GetByIdDetailsLevelEnum]; export declare const GetCreditArrangementsByClientIdOrKeyPaginationDetailsEnum: { readonly On: "ON"; readonly Off: "OFF"; }; export type GetCreditArrangementsByClientIdOrKeyPaginationDetailsEnum = (typeof GetCreditArrangementsByClientIdOrKeyPaginationDetailsEnum)[keyof typeof GetCreditArrangementsByClientIdOrKeyPaginationDetailsEnum]; export declare const GetCreditArrangementsByClientIdOrKeyDetailsLevelEnum: { readonly Basic: "BASIC"; readonly Full: "FULL"; }; export type GetCreditArrangementsByClientIdOrKeyDetailsLevelEnum = (typeof GetCreditArrangementsByClientIdOrKeyDetailsLevelEnum)[keyof typeof GetCreditArrangementsByClientIdOrKeyDetailsLevelEnum]; export declare const SearchPaginationDetailsEnum: { readonly On: "ON"; readonly Off: "OFF"; }; export type SearchPaginationDetailsEnum = (typeof SearchPaginationDetailsEnum)[keyof typeof SearchPaginationDetailsEnum]; export declare const SearchDetailsLevelEnum: { readonly Basic: "BASIC"; readonly Full: "FULL"; }; export type SearchDetailsLevelEnum = (typeof SearchDetailsLevelEnum)[keyof typeof SearchDetailsLevelEnum];