export type ModelType = "completion" | "embedding" | "image" | "audio" | "video" | "transaction" | "live";
export interface ModelPricing {
    input?: number;
    output?: number;
    cached_input?: number;
    cache_write?: number;
    cache_hit?: number;
    input_audio?: number;
    output_audio?: number;
    input_gt_200k?: number;
    output_gt_200k?: number;
    image_generation?: number;
    image_generation_per_1m_tokens?: number;
    video_generation?: number;
    output_image_per_1m_tokens?: number;
    deprecated?: boolean;
    deprecationDate?: string;
    limitedAvailability?: boolean;
    replacedBy?: string;
    reasoningLevels?: string[];
    useResponsesApi?: boolean;
}
export interface ModelCatalogEntry {
    id: string;
    provider: string;
    type: ModelType;
    pricing: ModelPricing;
    deprecated?: boolean;
    deprecationDate?: string;
    limitedAvailability?: boolean;
    replacedBy?: string;
}
export interface DeprecationOptions {
    deprecated?: boolean;
    deprecationDate?: string;
    limitedAvailability?: boolean;
    replacedBy?: string;
}
export declare const completions: (ids: string[], provider: string, pricing: Record<string, ModelPricing>, dep?: DeprecationOptions) => ModelCatalogEntry[];
export declare const embeddings: (ids: string[], provider: string, pricing: Record<string, ModelPricing>, dep?: DeprecationOptions) => ModelCatalogEntry[];
export declare const images: (ids: string[], provider: string, pricing: Record<string, ModelPricing>, dep?: DeprecationOptions) => ModelCatalogEntry[];
export declare const videos: (ids: string[], provider: string, pricing: Record<string, ModelPricing>, dep?: DeprecationOptions) => ModelCatalogEntry[];
export declare const audios: (ids: string[], provider: string, pricing: Record<string, ModelPricing>, dep?: DeprecationOptions) => ModelCatalogEntry[];
export declare const transactions: (ids: string[], provider: string, pricing: Record<string, ModelPricing>, dep?: DeprecationOptions) => ModelCatalogEntry[];
export declare const liveApi: (ids: string[], provider: string, pricing: Record<string, ModelPricing>, dep?: DeprecationOptions) => ModelCatalogEntry[];
export declare function completion(id: string, provider: string, pricing?: Partial<ModelPricing>, deprecation?: DeprecationOptions): ModelCatalogEntry;
