/** * Configuration Wizard for pi-router * Interactive setup with channel classification and smart sorting */ interface WizardConfig { strategy: "channelFirst" | "custom"; sortBy: "capabilityFirst" | "cost" | "latency" | "manual"; autoSync: boolean; healthProbe: { enabled: boolean; intervalMs?: number; timeoutMs?: number; probeMessage?: string; }; sticky: boolean; } interface ChannelClassification { category: "oauth" | "free" | "aggregator"; reason: string; } interface DiscoveredChannel { name: string; category: "oauth" | "free" | "aggregator"; reason: string; } interface ModelWithChannels { id: string; channels: Array<{ name: string; reason: string; category: string; score: number; }>; } type WizardPiModel = { id: string; provider: string; baseUrl?: string; }; /** * Scan and classify all channels from flattened PiModel[] returned by loadModelsJson(). */ export declare function scanAndClassifyChannels(models: WizardPiModel[], authDataOverride?: Record): Map; interface ChannelScore { channel: string; score: number; reason: string; category: string; /** Exact upstream model id when this channel entry targets a model-name variant. */ upstreamModel?: string; /** Stable route key; differs from channel when the same provider appears more than once. */ routeKey?: string; /** Display-only label, e.g. `wx-api (oc/deepseek-v4-flash-free)`. */ label?: string; } /** * Smart sort channels based on strategy */ export declare function smartSortChannels(channels: string[], classifications: Map, sortBy: string): ChannelScore[]; export type { WizardConfig, ChannelClassification, DiscoveredChannel, ModelWithChannels, ChannelScore }; //# sourceMappingURL=config-wizard.d.ts.map