/** * Parameters for EachLabs image inference */ export interface EachLabsImageInferenceParams { /** Model slug (e.g., 'nano-banana-pro') */ model: string; /** Model version */ version: string; /** Input parameters for the model */ input: Record; } /** * Result from EachLabs image inference */ export interface EachLabsImageResult { imageURL: string; } /** * EachLabs storage interface for file uploads */ export interface EachLabsStorage { /** * Upload a file to EachLabs storage * @param file - The file to upload * @returns The URL of the uploaded file */ upload: (file: File) => Promise; } /** * EachLabs API client interface */ export interface EachLabsClient { imageInference: (params: EachLabsImageInferenceParams, abortSignal?: AbortSignal) => Promise; /** * Storage API for uploading files */ storage: EachLabsStorage; } /** * Creates an EachLabs API client * * @param proxyUrl - The proxy URL to use for API requests * @param headers - Optional additional headers * @returns EachLabs client instance */ export declare function createEachLabsClient(proxyUrl: string, headers?: Record): EachLabsClient;