export interface ConfigType {
    CLAUDE: {
        CORE: string;
        PERMISSIONS: string;
        PATHS: {
            SETTINGS: string;
            MCP: string;
        };
    };
    KILO: {
        CORE: string;
        DEFAULT_MODEL: string;
        PATHS: {
            SETTINGS: string;
        };
    };
    HERMES: {
        CORE: string;
        DEFAULT_MODEL: string;
        PATHS: {
            SETTINGS: string;
        };
    };
    TIMEOUT_MS: number;
    HARD_TIMEOUT_MS: number;
    KEEPALIVE_INTERVAL_MS: number;
}
declare let PKG_VERSION: string;
export { PKG_VERSION };
export declare const DEFAULT_CONFIG: ConfigType;
export declare const CONFIG: ConfigType;
export declare function resetWorkspaceCache(): void;
/** Validate agent name to prevent path traversal */
export declare function isValidAgentName(name: string): boolean;
export declare function getWorkspaceDir(): string;
export declare function resolveConfigPath(configPath: string, workspaceDirOverride?: string): string;
export declare function updateConfig(newSettingsPath?: string, newMcpPath?: string): void;
/**
 * Resolve the canonical Hermes *agent home* directory for an Overmind agent.
 *
 * Overmind+Hermes uses a **single shared HERMES_HOME** rooted at
 * `<workspace>/.overmind/hermes/` (or `OVERMIND_HERMES_HOME` if explicitly set).
 * Per-agent state lives in the standard Hermes layout under that root:
 *
 *   <hermesHome>/agents/<name>/settings.json   ← per-agent env + persona
 *   <hermesHome>/agents/<name>/SOUL.md         ← per-agent system prompt
 *   <hermesHome>/config.yaml                   ← global, managed by Hermes upstream
 *   <hermesHome>/auth.json                     ← global, managed by Hermes upstream
 *   <hermesHome>/sessions/, logs/, etc.        ← global, managed by Hermes upstream
 *
 * Why a SHARED HERMES_HOME (not a per-agent .hermes dir)?
 *   1. **Hermes upstream's own layout** is `~/.hermes/agents/<name>/` (see
 *      `appdirs`-style resolution in `hermes_agent.agents.AgentConfig`).
 *      Inventing `Workflow/.overmind/hermes/agent_<name>/.hermes/` doubled the
 *      files we had to keep in sync and caused credential drift.
 *   2. **Shared config.yaml / auth.json** means a single credential pool
 *      across all agents — no need to re-pick + re-prune per agent.
 *   3. **The launcher .bat** at `C:\Users\Deamon\Desktop\launcher\Hermes-MiniMax-2.bat`
 *      proves this works with a stock `HERMES_HOME=C:\Users\Deamon\AppData\Local\hermes`
 *      + `agents/<name>/settings.json` — no polyglot, no special wrapper.
 *
 * Resolution order (deterministic, multi-OS, multi-install):
 *   1. `OVERMIND_HERMES_HOME` env var (operator-declared, e.g. via systemd
 *      EnvironmentFile) — wins if set, because the operator declared it
 *      explicitly. The runner just trusts it.
 *   2. `<workspace>/.overmind/hermes/` — dev + local install fallback.
 *      Kept as fallback for users who have existing state there.
 *   3. `~/.overmind/hermes/` (Linux/Mac) or `%LOCALAPPDATA%\overmind\hermes\`
 *      (Windows) — canonical home dir for `npm -g sudo` installs.
 *      Created if missing.
 *
 * Returns the **per-agent home** under that root: `.../agents/<name>/`.
 * Use `getSharedHermesHome()` to get the shared root.
 *
 * Safe under all install modes:
 *   - Dev local  (`pnpm dev` from source repo): uses workspace fallback
 *   - Prod npm-g (Linux/Mac, `sudo npm i -g overmind-mcp`): uses HOME
 *   - Prod npm-g (Windows): uses %LOCALAPPDATA%
 *   - Docker / systemd: operator sets OVERMIND_HERMES_HOME explicitly
 */
export declare function getAgentHermesHome(agentName: string | null | undefined): string;
/**
 * The SHARED Hermes home for this Overmind install. This is what we set as
 * the `HERMES_HOME` env var on every Hermes spawn — Hermes upstream then
 * resolves `agents/<name>/`, `config.yaml`, `auth.json`, etc. relative to it.
 */
export declare function getSharedHermesHome(): string;
/**
 * Backward-compat alias for older code that imported `getAgentOvermindHome`.
 * Returns the per-agent parent dir (= `getAgentHermesHome(name)` itself,
 * because the agent home IS the per-agent dir in the new layout).
 * @deprecated Use `getAgentHermesHome` directly.
 */
export declare function getAgentOvermindHome(agentName: string | null | undefined): string;
//# sourceMappingURL=config.d.ts.map