import type { AgentContextLimitsConfig, AgentDefaultsConfig } from "../config/types.agent-defaults.js";
import type { OpenClawConfig } from "../config/types.js";
type AgentEntry = NonNullable<NonNullable<OpenClawConfig["agents"]>["list"]>[number];
export type ResolvedAgentConfig = {
    name?: string;
    workspace?: string;
    agentDir?: string;
    systemPromptOverride?: AgentEntry["systemPromptOverride"];
    model?: AgentEntry["model"];
    thinkingDefault?: AgentEntry["thinkingDefault"];
    verboseDefault?: AgentDefaultsConfig["verboseDefault"];
    reasoningDefault?: AgentEntry["reasoningDefault"];
    fastModeDefault?: AgentEntry["fastModeDefault"];
    skills?: AgentEntry["skills"];
    memorySearch?: AgentEntry["memorySearch"];
    humanDelay?: AgentEntry["humanDelay"];
    tts?: AgentEntry["tts"];
    contextLimits?: AgentContextLimitsConfig;
    heartbeat?: AgentEntry["heartbeat"];
    identity?: AgentEntry["identity"];
    groupChat?: AgentEntry["groupChat"];
    subagents?: AgentEntry["subagents"];
    embeddedPi?: AgentEntry["embeddedPi"];
    sandbox?: AgentEntry["sandbox"];
    tools?: AgentEntry["tools"];
};
export declare function listAgentEntries(cfg: OpenClawConfig): AgentEntry[];
export declare function listAgentIds(cfg: OpenClawConfig): string[];
export declare function resolveDefaultAgentId(cfg: OpenClawConfig): string;
export declare function resolveAgentConfig(cfg: OpenClawConfig, agentId: string): ResolvedAgentConfig | undefined;
export declare function resolveAgentContextLimits(cfg: OpenClawConfig | undefined, agentId?: string | null): AgentContextLimitsConfig | undefined;
export declare function resolveAgentWorkspaceDir(cfg: OpenClawConfig, agentId: string, env?: NodeJS.ProcessEnv): string;
export declare function resolveAgentDir(cfg: OpenClawConfig, agentId: string, env?: NodeJS.ProcessEnv): string;
export {};
