export declare const provider2TTSAgent: {
    openai: {
        agentName: string;
        hasLimitedConcurrency: boolean;
        defaultModel: string;
        defaultVoice: string;
        keyName: string;
        baseURLKeyName: string;
    };
    google: {
        agentName: string;
        hasLimitedConcurrency: boolean;
        keyName: string;
    };
    gemini: {
        agentName: string;
        hasLimitedConcurrency: boolean;
        defaultModel: string;
        defaultVoice: string;
        models: string[];
        keyName: string;
    };
    elevenlabs: {
        agentName: string;
        hasLimitedConcurrency: boolean;
        defaultModel: string;
        models: string[];
        keyName: string;
    };
    kotodama: {
        agentName: string;
        hasLimitedConcurrency: boolean;
        defaultVoice: string;
        defaultDecoration: string;
        keyName: string;
    };
    mock: {
        agentName: string;
        hasLimitedConcurrency: boolean;
        defaultModel: string;
        models: string[];
    };
};
export declare const gptImages: string[];
export declare const deprecatedOpenAIImageModelHints: {
    readonly "dall-e-2": "Use 'gpt-image-1' or another supported model.";
    readonly "dall-e-3": "Use 'gpt-image-1' or another supported model.";
};
export type DeprecatedOpenAIImageModel = keyof typeof deprecatedOpenAIImageModelHints;
export declare const deprecatedGoogleImageModelHints: {
    readonly "imagen-3.0-generate-002": "Use 'gemini-2.5-flash-image' or 'gemini-3-pro-image-preview' instead.";
    readonly "imagen-4.0-generate-001": "Use 'gemini-2.5-flash-image' or 'gemini-3-pro-image-preview' instead.";
    readonly "imagen-4.0-ultra-generate-001": "Use 'gemini-2.5-flash-image' or 'gemini-3-pro-image-preview' instead.";
    readonly "imagen-4.0-fast-generate-001": "Use 'gemini-2.5-flash-image' or 'gemini-3-pro-image-preview' instead.";
    readonly "imagen-4.0-generate-preview-06-06": "Use 'gemini-2.5-flash-image' or 'gemini-3-pro-image-preview' instead.";
    readonly "imagen-4.0-ultra-generate-preview-06-06": "Use 'gemini-2.5-flash-image' or 'gemini-3-pro-image-preview' instead.";
};
export type DeprecatedGoogleImageModel = keyof typeof deprecatedGoogleImageModelHints;
export declare const vertexAIGlobalOnlyImageModels: ReadonlySet<string>;
export declare const provider2ImageAgent: {
    openai: {
        agentName: string;
        defaultModel: string;
        models: string[];
        keyName: string;
        baseURLKeyName: string;
    };
    google: {
        agentName: string;
        defaultModel: string;
        models: string[];
        keyName: string;
    };
    replicate: {
        agentName: string;
        defaultModel: string;
        models: string[];
        keyName: string;
    };
    mock: {
        agentName: string;
        defaultModel: string;
        models: string[];
        keyName: string;
    };
};
export type ReplicateModel = `${string}/${string}`;
export declare const AUDIO_MODE_NEVER: "never";
export declare const AUDIO_MODE_ALWAYS: "always";
export declare const AUDIO_MODE_OPTIONAL: "optional";
type MovieAudioSpec = {
    mode: typeof AUDIO_MODE_NEVER;
} | {
    mode: typeof AUDIO_MODE_ALWAYS;
} | {
    mode: typeof AUDIO_MODE_OPTIONAL;
    param: string;
};
type ReplicateMovieModelParams = {
    durations: number[];
    start_image: string | undefined;
    start_image_required?: boolean;
    last_image?: string;
    reference_images_param?: string;
    audio: MovieAudioSpec;
    price_per_sec: number;
};
type GoogleMovieModelParams = {
    durations: number[];
    supportsDuration: boolean;
    supportsLastFrame: boolean;
    supportsReferenceImages: boolean;
    supportsPersonGeneration: boolean;
    audio: MovieAudioSpec;
};
export declare const provider2MovieAgent: {
    replicate: {
        agentName: string;
        defaultModel: ReplicateModel;
        keyName: string;
        models: string[];
        modelParams: Record<ReplicateModel, ReplicateMovieModelParams>;
    };
    google: {
        agentName: string;
        defaultModel: string;
        models: string[];
        keyName: string;
        modelParams: Record<string, GoogleMovieModelParams>;
    };
    mock: {
        agentName: string;
        defaultModel: string;
        models: string[];
        keyName: string;
        modelParams: {};
    };
};
export declare const provider2SoundEffectAgent: {
    replicate: {
        agentName: string;
        defaultModel: ReplicateModel;
        keyName: string;
        models: ReplicateModel[];
        modelParams: Record<ReplicateModel, {
            identifier?: `${string}/${string}:${string}`;
        }>;
    };
};
export declare const provider2LipSyncAgent: {
    replicate: {
        agentName: string;
        defaultModel: ReplicateModel;
        keyName: string;
        models: ReplicateModel[];
        modelParams: Record<ReplicateModel, {
            identifier?: `${string}/${string}:${string}` | `${string}/${string}`;
            video?: string;
            audio: string;
            image?: string;
        }>;
    };
};
export declare const provider2LLMAgent: {
    readonly openai: {
        readonly agentName: "openAIAgent";
        readonly defaultModel: "gpt-5";
        readonly keyName: "OPENAI_API_KEY";
        readonly baseURLKeyName: "OPENAI_BASE_URL";
        readonly apiVersionKeyName: "OPENAI_API_VERSION";
        readonly max_tokens: 8192;
        readonly models: readonly ["gpt-5", "gpt-5-nano", "gpt-5-mini", "gpt-4.1", "gpt-4.1-mini", "gpt-4.1-nano", "o3", "o3-mini", "o3-pro", "o1", "o1-pro", "gpt-4o", "gpt-4o-mini"];
    };
    readonly anthropic: {
        readonly agentName: "anthropicAgent";
        readonly defaultModel: "claude-sonnet-4-5-20250929";
        readonly max_tokens: 8192;
        readonly models: readonly ["claude-opus-4-1-20250805", "claude-opus-4-20250514", "claude-sonnet-4-20250514", "claude-sonnet-4-5-20250929", "claude-haiku-4-5-20251001"];
        readonly keyName: "ANTHROPIC_API_KEY";
        readonly apiKeyNameOverride: "ANTHROPIC_API_TOKEN";
    };
    readonly gemini: {
        readonly agentName: "geminiAgent";
        readonly defaultModel: "gemini-2.5-flash";
        readonly max_tokens: 8192;
        readonly models: readonly ["gemini-3.1-pro-preview", "gemini-3-flash-preview", "gemini-2.5-pro", "gemini-2.5-flash", "gemini-2.5-flash-lite"];
        readonly keyName: "GEMINI_API_KEY";
    };
    readonly groq: {
        readonly agentName: "groqAgent";
        readonly defaultModel: "llama-3.1-8b-instant";
        readonly keyName: "GROQ_API_KEY";
        readonly max_tokens: 4096;
        readonly models: readonly ["llama-3.1-8b-instant", "llama-3.3-70b-versatile", "deepseek-r1-distill-llama-70b", "openai/gpt-oss-120b", "openai/gpt-oss-20b"];
    };
    readonly mock: {
        readonly agentName: "mediaMockAgent";
        readonly defaultModel: "mock";
        readonly max_tokens: 4096;
        readonly models: readonly ["mock"];
    };
};
export declare const defaultProviders: {
    tts: keyof typeof provider2TTSAgent;
    text2image: keyof typeof provider2ImageAgent;
    text2movie: keyof typeof provider2MovieAgent;
    text2Html: keyof typeof provider2LLMAgent;
    llm: keyof typeof provider2LLMAgent;
    soundEffect: keyof typeof provider2SoundEffectAgent;
    lipSync: keyof typeof provider2LipSyncAgent;
};
export declare const llm: (keyof typeof provider2LLMAgent)[];
export type LLM = keyof typeof provider2LLMAgent;
export declare const htmlLLMProvider: string[];
export declare const getModelDuration: (provider: keyof typeof provider2MovieAgent, model: string, movieDuration?: number) => number | undefined;
export {};
