import { AxiosInstance } from "axios";
import { LogCallback, RequestInterceptors, ResponseInterceptors } from "./types";
export declare class ServiceBuilder {
    private _endpoint;
    private _standalone;
    private readonly _requestInterceptors;
    private readonly _responseInterceptors;
    private _timeout;
    private _logCallback;
    build<T>(service: new (builder: ServiceBuilder) => T): T;
    setEndpoint(endpoint: string): ServiceBuilder;
    setStandalone(standalone: boolean | AxiosInstance): ServiceBuilder;
    setRequestInterceptors(interceptors: RequestInterceptors): ServiceBuilder;
    setResponseInterceptors(interceptors: ResponseInterceptors): ServiceBuilder;
    setTimeout(timeout: number): ServiceBuilder;
    setLogCallback(logCallback: LogCallback): ServiceBuilder;
    get endpoint(): string;
    get standalone(): boolean | AxiosInstance;
    get requestInterceptors(): RequestInterceptors[];
    get responseInterceptors(): ResponseInterceptors[];
    get timeout(): number;
    get logCallback(): LogCallback | null;
}
