import type { CostClass, ModelCapability, ModelKind } from "./types.js";
export { isConversationEligibleModel, explainConversationIneligibility, } from "@oscharko-dev/keiko-contracts";
export type { ConversationIneligibilityReason } from "@oscharko-dev/keiko-contracts";
export declare const CAPABILITY_REGISTRY: readonly ModelCapability[];
export interface CapabilityQuery {
    readonly kind?: ModelKind | undefined;
    readonly toolCalling?: boolean | undefined;
    readonly structuredOutput?: boolean | undefined;
    readonly minContextWindow?: number | undefined;
    readonly supportsImageInput?: boolean | undefined;
}
export declare function findCapability(modelId: string): ModelCapability | undefined;
export declare function resolveCostClass(modelId: string): CostClass | "unknown";
export declare function listCapabilities(): readonly ModelCapability[];
export declare const EMBEDDING_ID_PATTERN: RegExp;
export declare function isLikelyEmbeddingModelId(id: string): boolean;
export declare function createDefaultEmbeddingCapability(modelId: string): ModelCapability;
export declare function createDefaultChatCapability(modelId: string): ModelCapability;
export declare function selectCheapest(query: CapabilityQuery): ModelCapability | undefined;
//# sourceMappingURL=capabilities.d.ts.map