import type { Logger } from "pino";
import type { AgentManager } from "./agent-manager.js";
import { generateStructuredAgentResponseWithFallback } from "./agent-response-loop.js";
import { getCheckoutStatus, renameCurrentBranch } from "../../utils/checkout-git.js";
export type AgentMetadataGeneratorDeps = {
    generateStructuredAgentResponseWithFallback?: typeof generateStructuredAgentResponseWithFallback;
    getCheckoutStatus?: typeof getCheckoutStatus;
    renameCurrentBranch?: typeof renameCurrentBranch;
};
export type AgentMetadataGenerationOptions = {
    agentManager: AgentManager;
    agentId: string;
    cwd: string;
    initialPrompt?: string | null;
    explicitTitle?: string | null;
    seaworkHome?: string;
    logger: Logger;
    deps?: AgentMetadataGeneratorDeps;
};
type AgentMetadataNeeds = {
    prompt: string | null;
    needsTitle: boolean;
    needsBranch: boolean;
};
export declare function determineAgentMetadataNeeds(options: Pick<AgentMetadataGenerationOptions, "initialPrompt" | "explicitTitle" | "cwd" | "seaworkHome" | "deps">): Promise<AgentMetadataNeeds>;
export declare function generateAndApplyAgentMetadata(options: AgentMetadataGenerationOptions): Promise<void>;
export declare function scheduleAgentMetadataGeneration(options: AgentMetadataGenerationOptions): void;
export {};
//# sourceMappingURL=agent-metadata-generator.d.ts.map