export interface AIImageResult { success: boolean; images?: Array<{ url: string; width?: number; height?: number; }>; error?: string; metadata?: Record; requestId?: string; credits?: Record; } export interface AIVideoResult { success: boolean; videos?: Array<{ url: string; duration?: number; width?: number; height?: number; }>; error?: string; metadata?: Record; requestId?: string; credits?: Record; } export interface BaseAIClientConfig { apiKey: string; baseUrl?: string; debug?: boolean; } export declare abstract class BaseAIClient { protected apiKey: string; protected baseUrl?: string; protected debug: boolean; constructor(config: BaseAIClientConfig); abstract get providerName(): string; protected log(message: string, level?: "info" | "warn" | "error" | "debug"): void; protected ensureApiKey(envVarName: string): void; protected downloadMedia(url: string, outputDir: string, prefix: string): Promise; protected openInDefaultViewer(filepath: string): Promise; protected getMimeType(filename: string): string; protected downloadAndOpen(result: T, mediaType: "image" | "video", fileExtension: string, openInViewer?: boolean): Promise; protected extractCreditsFromResponse(response: any): any; } //# sourceMappingURL=ai-client-base.d.ts.map