import type { UnknownRecord } from '../config/virtual-router-types.js'; export type ProviderUpdateAuth = { type: 'apikey' | 'oauth'; apiKey?: string; headerName?: string; prefix?: string; tokenFile?: string; clientId?: string; clientSecret?: string; tokenUrl?: string; deviceCodeUrl?: string; scopes?: string[]; }; export type ProviderUpdateInput = { providerId: string; type: string; baseUrl?: string; baseURL?: string; auth?: ProviderUpdateAuth; }; export declare function resolveProviderRoot(customRoot?: string): string; export declare function ensureDir(p: string): Promise; export declare function fileExists(p: string): Promise; export declare function ask(question: string, defaultValue?: string): Promise; export declare function askYesNo(question: string, defaultYes?: boolean): Promise; export declare function splitCsv(raw?: unknown): string[]; export declare function splitTokenThresholds(raw?: unknown): number[]; export declare function parseUniqueModelIds(raw: string, fallback?: string): string[]; export declare function normalizeEnvVarName(providerId: string): string; export declare function readString(value: unknown): string | undefined; export declare function readStringArray(value: unknown): string[] | undefined; export declare function isRecord(value: unknown): value is Record; export declare function extractApiKeyFromAuthNode(authNode: Record): string | undefined; export declare function normalizeAuthForProviderUpdate(authNodeValue: unknown): ProviderUpdateAuth | undefined; export declare function buildProviderUpdateInputFromV2(providerId: string, provider: UnknownRecord): ProviderUpdateInput; export declare function authTypeUsesCredentialFile(authTypeRaw: string): boolean; export declare function readCredentialFileFromAuthNode(authNode: UnknownRecord): string; export declare function normalizeModelsNode(node: unknown): Record; export declare function countRouteTargets(routeNode: unknown): number; export declare const __providerUpdateTestables: { splitCsv: typeof splitCsv; splitTokenThresholds: typeof splitTokenThresholds; parseUniqueModelIds: typeof parseUniqueModelIds; normalizeEnvVarName: typeof normalizeEnvVarName; readString: typeof readString; readStringArray: typeof readStringArray; isRecord: typeof isRecord; extractApiKeyFromAuthNode: typeof extractApiKeyFromAuthNode; normalizeAuthForProviderUpdate: typeof normalizeAuthForProviderUpdate; buildProviderUpdateInputFromV2: typeof buildProviderUpdateInputFromV2; authTypeUsesCredentialFile: typeof authTypeUsesCredentialFile; readCredentialFileFromAuthNode: typeof readCredentialFileFromAuthNode; normalizeModelsNode: typeof normalizeModelsNode; };