import path from 'node:path'; import type * as fs from 'node:fs'; import { type InitProviderTemplate } from './init-provider-catalog.js'; export type InitConfigIo = { fsImpl: Pick; pathImpl?: Pick; getHomeDir?: () => string; }; export type InitConfigPrompt = { prompt: (question: string) => Promise; }; export type InitConfigOptions = { configPath: string; force: boolean; host?: string; port?: number; providers?: string[]; defaultProvider?: string; }; export type InitConfigResult = { ok: true; configPath: string; selectedProviders: string[]; defaultProvider: string; backupPath?: string; } | { ok: false; reason: 'exists' | 'invalid_selection' | 'no_providers' | 'write_failed'; message: string; }; export declare function buildInitConfigObject(selection: { providers: InitProviderTemplate[]; defaultProviderId: string; host: string; port: number; }): Record; export declare function initializeConfigV1(io: InitConfigIo, opts: InitConfigOptions, interactive?: InitConfigPrompt): Promise; export declare function parseProvidersArg(raw: string | undefined): string[] | undefined;