import type { IdeAdapter } from '../ide-types.js'; /** * Helper exported for tests + internal use: the default location of the * z-code v2 config file on the host filesystem. */ export declare function defaultZcodeConfigPath(): string; /** * Resolve the active model id from a parsed z-code config payload * (the `~/.zcode/v2/config.json` root object). Pure / exported for * unit tests so the file-IO seam and the resolution seam are * independently verifiable. * * Resolution order (Slice C §"z-code config 解析路径"): * P1. env var `PEAKS_ZCODE_ACTIVE_PROVIDER_UUID` (test seam + * manual pin for the user). * P2. The provider whose top-level UUID key is NOT prefixed * `builtin:` — this matches the user-installed provider * pattern. Within that provider, prefer its `models` first * key (insertion order — z-code writes the active model * first in the picker). * P3. The first provider with `enabled: true`. * P4. The first provider in the object (insertion order) — last * resort. Returns undefined if there are zero providers. * * Returns `undefined` when nothing matches. */ export declare function resolveZcodeCurrentModel(config: unknown, envOverride?: string | undefined): string | undefined; /** * The async adapter method that `detectCurrentIdeModel()` calls. * * Resolution order: * 1. `PEAKS_ZCODE_ACTIVE_PROVIDER_UUID` env var override (test seam * + manual pin). * 2. `PEAKS_ZCODE_CONFIG_PATH` env var override (test seam for a * fixture file). Falls back to `~/.zcode/v2/config.json`. * 3. Returns `undefined` when the file is missing / malformed * (consistent with the cross-IDE contract). */ export declare function detectZcodeCurrentModel(): Promise; export declare const ZCODE_ADAPTER: IdeAdapter;