import type { SegmindApiResponse } from '../types/index.js';
interface RequestOptions {
    method?: 'GET' | 'POST' | 'PUT' | 'DELETE';
    body?: unknown;
    headers?: Record<string, string>;
    timeout?: number;
    retries?: number;
    responseType?: 'json' | 'buffer' | 'auto';
}
export declare class SegmindApiClient {
    private readonly baseUrl;
    private readonly apiKey;
    private readonly defaultTimeout;
    private readonly retryConfig;
    constructor();
    request<T = unknown>(endpoint: string, options?: RequestOptions): Promise<SegmindApiResponse<T>>;
    private executeWithRetry;
    private calculateRetryDelay;
    private delay;
    healthCheck(): Promise<boolean>;
    getCredits(): Promise<{
        remaining: number;
        used: number;
    }>;
    generateImage(model: string, params: any): Promise<SegmindApiResponse<any>>;
}
export declare const apiClient: SegmindApiClient;
export {};
//# sourceMappingURL=client.d.ts.map