import type { ModelCapabilityConfig, ModelDefinitionConfig } from "../config/types.models.js";
export declare const VENICE_BASE_URL = "https://api.venice.ai/api/v1";
export declare const VENICE_DEFAULT_MODEL_ID = "zai-org-glm-5-1";
export declare const VENICE_DEFAULT_MODEL_REF = "venice/zai-org-glm-5-1";
export declare const VENICE_DEFAULT_COST: {
    input: number;
    output: number;
    cacheRead: number;
    cacheWrite: number;
};
export declare const VENICE_MODEL_CATALOG: ({
    id: string;
    name: string;
    reasoning: true;
    input: "text"[];
    cost: {
        input: number;
        output: number;
        cacheRead: number;
        cacheWrite: number;
    };
    contextWindow: number;
    maxTokens: number;
    capabilities: {
        thinkingMode?: import("../shared/model-thinking.ts").ModelThinkingMode | undefined;
        reasoningBudgetSupported?: boolean | undefined;
        thinkingLevels: ("off" | "low" | "medium" | "high")[];
        defaultThinkingLevel: "low";
        tools?: boolean | undefined;
        json?: boolean | undefined;
    };
} | {
    id: string;
    name: string;
    reasoning: false;
    input: ("text" | "image")[];
    cost: {
        input: number;
        output: number;
        cacheRead: number;
        cacheWrite: number;
    };
    contextWindow: number;
    maxTokens: number;
    capabilities: Pick<ModelCapabilityConfig, "tools" | "json">;
} | {
    id: string;
    name: string;
    reasoning: true;
    input: ("text" | "image")[];
    cost: {
        input: number;
        output: number;
        cacheRead: number;
        cacheWrite: number;
    };
    contextWindow: number;
    maxTokens: number;
    capabilities: {
        video: true;
        fixedReasoning: true;
        tools?: boolean | undefined;
        json?: boolean | undefined;
    };
} | {
    id: string;
    name: string;
    reasoning: true;
    input: ("text" | "image")[];
    cost: {
        input: number;
        output: number;
        cacheRead: number;
        cacheWrite: number;
    };
    contextWindow: number;
    maxTokens: number;
    capabilities: {
        thinkingMode?: import("../shared/model-thinking.ts").ModelThinkingMode | undefined;
        reasoningBudgetSupported?: boolean | undefined;
        video: true;
        thinkingLevels: ("off" | "low" | "medium" | "high")[];
        defaultThinkingLevel: "low";
        tools?: boolean | undefined;
        json?: boolean | undefined;
    };
} | {
    id: string;
    name: string;
    reasoning: true;
    input: ("text" | "image")[];
    cost: {
        input: number;
        output: number;
        cacheRead: number;
        cacheWrite: number;
    };
    contextWindow: number;
    maxTokens: number;
    capabilities: {
        fixedReasoning: true;
        tools?: boolean | undefined;
        json?: boolean | undefined;
    };
} | {
    id: string;
    name: string;
    reasoning: true;
    input: ("text" | "image")[];
    cost: {
        input: number;
        output: number;
        cacheRead: number;
        cacheWrite: number;
    };
    contextWindow: number;
    maxTokens: number;
    capabilities: {
        thinkingMode?: import("../shared/model-thinking.ts").ModelThinkingMode | undefined;
        reasoningBudgetSupported?: boolean | undefined;
        thinkingLevels: ("off" | "minimal" | "low" | "medium" | "high")[];
        defaultThinkingLevel: "high";
        tools?: boolean | undefined;
        json?: boolean | undefined;
    };
} | {
    id: string;
    name: string;
    reasoning: true;
    input: ("text" | "image")[];
    cost: {
        input: number;
        output: number;
        cacheRead: number;
        cacheWrite: number;
    };
    contextWindow: number;
    maxTokens: number;
    capabilities: {
        thinkingMode?: import("../shared/model-thinking.ts").ModelThinkingMode | undefined;
        reasoningBudgetSupported?: boolean | undefined;
        thinkingLevels: ("off" | "minimal" | "low" | "medium" | "high")[];
        defaultThinkingLevel: "medium";
        tools?: boolean | undefined;
        json?: boolean | undefined;
    };
} | {
    id: string;
    name: string;
    reasoning: true;
    input: ("text" | "image")[];
    cost: {
        input: number;
        output: number;
        cacheRead: number;
        cacheWrite: number;
    };
    contextWindow: number;
    maxTokens: number;
    capabilities: {
        thinkingMode?: import("../shared/model-thinking.ts").ModelThinkingMode | undefined;
        reasoningBudgetSupported?: boolean | undefined;
        audio: true;
        video: true;
        thinkingLevels: ("low" | "medium" | "high")[];
        defaultThinkingLevel: "low";
        tools?: boolean | undefined;
        json?: boolean | undefined;
    };
})[];
export type VeniceCatalogEntry = (typeof VENICE_MODEL_CATALOG)[number];
export declare const VENICE_MODEL_IDS: string[];
export declare const VENICE_MODEL_REFS: string[];
export declare function buildVeniceModelDefinition(model: VeniceCatalogEntry): ModelDefinitionConfig;
export declare function buildVeniceModelCapabilityOverrides(routeId?: string): Record<string, ModelCapabilityConfig>;
