/**
 * Type definitions for the GPT-Image-1 MCP Server
 */
export interface ImageGenerationRequest {
    prompt: string;
    n?: number;
    size?: '1024x1024' | '1024x1536' | '1536x1024' | 'auto';
    quality?: 'high' | 'medium' | 'low';
    background?: 'transparent' | 'opaque' | 'auto';
    output_compression?: number;
    output_format?: 'png' | 'jpeg' | 'webp';
    moderation?: 'auto' | 'low';
}
export interface ImageEditRequest {
    image: string;
    prompt: string;
    mask?: string;
    n?: number;
    size?: '1024x1024' | '1024x1536' | '1536x1024' | 'auto';
    quality?: 'high' | 'medium' | 'low';
    background?: 'transparent' | 'opaque' | 'auto';
    output_compression?: number;
    output_format?: 'png' | 'jpeg' | 'webp';
    moderation?: 'auto' | 'low';
}
export interface ImageGenerationResponse {
    id: string;
    created: number;
    data: Array<{
        url?: string;
        b64_json?: string;
        revised_prompt?: string;
    }>;
    usage?: {
        prompt_tokens: number;
        completion_tokens: number;
        total_tokens: number;
    };
}
export interface ImageMetadata {
    id: string;
    created: number;
    prompt: string;
    revised_prompt?: string;
    size: string;
    quality: string;
    background?: string;
    output_format?: string;
    output_compression?: number;
    url?: string;
    b64_json?: string;
    moderation_result?: string;
}
export interface ServerConfig {
    openai_api_key: string;
    openai_org_id?: string;
    default_size: string;
    default_quality: string;
    default_moderation: string;
    image_storage_path: string;
    max_stored_images: number;
}
export interface GenerationHistory {
    images: ImageMetadata[];
    total_count: number;
    last_updated: number;
}
export interface ErrorResponse {
    error: {
        type: string;
        message: string;
        code?: string;
        details?: any;
    };
}
