/**
 * Agent configuration definitions for atomic CLI
 */
export interface AgentConfig {
    /** Display name for the agent */
    name: string;
    /** Command to execute the agent */
    cmd: string;
    /** Flags used when spawning the agent in interactive chat mode */
    chat_flags: string[];
    /** Environment variables to set when spawning the agent (merged with process env) */
    env_vars: Record<string, string>;
    /** Config folder relative to repo root */
    folder: string;
    /** URL for installation instructions */
    install_url: string;
    /** Paths to exclude when copying (relative to folder) */
    exclude: string[];
    /** Project files applied during `atomic chat` preflight for provider onboarding */
    onboarding_files: Array<{
        source: string;
        destination: string;
        merge: boolean;
        /**
         * Top-level keys to strip from the source before copying or merging.
         * Useful when a key is project-local by design (e.g. Claude's
         * `disabledMcpjsonServers`) and must not leak into a global
         * destination like `~/.claude/settings.json`.
         */
        excludeConfigKeys?: readonly string[];
    }>;
}
declare const AGENT_KEYS: readonly ["claude", "opencode", "copilot"];
export type AgentKey = (typeof AGENT_KEYS)[number];
export declare const AGENT_CONFIG: Record<AgentKey, AgentConfig>;
/**
 * Per-provider overrides that users can set in `.atomic/settings.json`
 * (local) or `~/.atomic/settings.json` (global).
 *
 * - `chatFlags`: when set, replaces the agent's default `chat_flags` entirely.
 * - `envVars`: environment variables merged on top of the agent's default
 *   `env_vars` (user values win on conflict).
 */
export interface ProviderOverrides {
    chatFlags?: string[];
    envVars?: Record<string, string>;
}
export declare function isValidAgent(key: string): key is AgentKey;
export declare function getAgentConfig(key: AgentKey): AgentConfig;
export declare function getAgentKeys(): AgentKey[];
export {};
//# sourceMappingURL=definitions.d.ts.map