import { ClientOptions } from '../schemas/client.mjs';
import { APIRequestInit } from '../types/api.mjs';
import 'zod';

declare class ApiService {
    private readonly options;
    constructor(options: ClientOptions);
    get<T>(path: string, options?: Omit<APIRequestInit, "method">): Promise<T>;
    post<T>(path: string, options?: Omit<APIRequestInit, "method">): Promise<T>;
    put<T>(path: string, options?: Omit<APIRequestInit, "method">): Promise<T>;
    patch<T>(path: string, options?: Omit<APIRequestInit, "method">): Promise<T>;
    delete<T>(path: string, options?: Omit<APIRequestInit, "method">): Promise<T>;
    request<T = unknown>(path: string, options?: APIRequestInit): Promise<T>;
    private makeInit;
}

export { ApiService };
