///
import type { SimpleObject } from '../types';
import type { AxiosInstance, Method, AxiosRequestConfig, AxiosResponse } from 'axios';
import type { IParseOptions } from 'qs';
export default class BaseService {
readonly endpoint: string;
parameters: SimpleObject;
errors: import("./Validator").ValidatorType;
static $http: AxiosInstance;
static $errorProperty: string;
static $resetParameter?: boolean | undefined;
static $parsedQs: IParseOptions;
constructor(endpoint: string, parameters?: SimpleObject);
get $http(): AxiosInstance;
get $errorProperty(): string;
get $resetParameter(): boolean | undefined;
get $parsedQs(): IParseOptions;
all(): Promise;
find(id: number | string): Promise;
post(payload: any, config?: AxiosRequestConfig): Promise;
store(payload: any, config?: AxiosRequestConfig): Promise;
put(id: any, payload?: any, config?: AxiosRequestConfig): Promise;
patch(id: any, payload?: any, config?: AxiosRequestConfig): Promise;
update(id: string | number, payload: any): Promise;
delete(id: string | number): Promise;
remove(id: string | number): Promise;
$submit(method: Method, param?: string | number, form?: F, config?: AxiosRequestConfig): Promise>;
submit(method: Method, url?: string | number, form?: F, config?: AxiosRequestConfig): Promise;
private __getParameterString;
setParameters(parameters: SimpleObject): this;
setParameter(parameter: string, value?: any): this;
removeParameters(parameters?: string[]): this;
removeParameter(parameter: string): this;
onFail(errors: SimpleObject): void;
beforeSubmit(): void;
onSuccess(): void;
}