import type { GenerateImageParams, GenerateImageResponse, ImageToImageParams, InpaintParams, ReplaceBackgroundParams, GenerateBackgroundParams, ProcessImageParams, EraseRegionParams, ProcessImageResponse, CreateStyleParams, StyleResponse, StyleListResponse, UserResponse } from "./types.js"; export declare class RecraftApiError extends Error { readonly status: number; readonly details?: unknown | undefined; constructor(message: string, status: number, details?: unknown | undefined); } export interface RetryOptions { maxRetries: number; } export declare class RecraftClient { private readonly baseUrl; private readonly apiToken; private readonly retry; private readonly cache; private readonly cachingEnabled; constructor(apiToken: string, baseUrl?: string, cacheTtlMs?: number, retry?: RetryOptions); private cachedRequest; generateImage(params: GenerateImageParams): Promise; imageToImage(params: ImageToImageParams): Promise; inpaint(params: InpaintParams): Promise; replaceBackground(params: ReplaceBackgroundParams): Promise; generateBackground(params: GenerateBackgroundParams): Promise; removeBackground(params: ProcessImageParams): Promise; eraseRegion(params: EraseRegionParams): Promise; vectorize(params: ProcessImageParams): Promise; crispUpscale(params: ProcessImageParams): Promise; creativeUpscale(params: ProcessImageParams): Promise; createStyle(params: CreateStyleParams): Promise<{ id: string; }>; getStyle(styleId: string): Promise; listStyles(): Promise; listBasicStyles(): Promise; deleteStyle(styleId: string): Promise; getCurrentUser(): Promise; private buildFormData; private static parseBody; private jsonRequest; private multipartRequest; private request; }