import type { Api, Model } from '@earendil-works/pi-ai'; import type { ModelSwitchSection } from './config.js'; export type CycleDirection = 'forward' | 'backward'; export interface ModelReference { provider: string; modelId: string; } export interface ModelRegistryLike { find(provider: string, modelId: string): Model | undefined; getApiKeyAndHeaders(model: Model): Promise<{ ok: true; apiKey?: string; headers?: Record; } | { ok: false; error: string; }>; } export declare function parseModelReference(value: string): ModelReference | undefined; export declare function resolveAvailableModels(references: readonly string[], registry: ModelRegistryLike): Promise[]>; export declare function findActiveSection(sections: readonly ModelSwitchSection[], current: Model | undefined): ModelSwitchSection | undefined; export declare function selectCycleTarget(current: Model | undefined, available: readonly Model[], direction: CycleDirection): Model | undefined;