import { R as RiddleProofAgentAdapter } from './engine-harness-CMACHP6A.js';
import { RiddleProofBlocker } from './types.js';
import './public-state.js';

interface CodexExecAgentConfig {
    codexCommand?: string;
    codexHome?: string;
    codexModel?: string;
    codexTimeoutMs?: number;
    codexSandbox?: "read-only" | "workspace-write" | "danger-full-access";
    codexFullAuto?: boolean;
}
interface CodexJsonRequest {
    purpose: string;
    workdir: string;
    prompt: string;
    schema: Record<string, unknown>;
}
interface CodexJsonResult {
    ok: boolean;
    json?: Record<string, unknown>;
    stdout?: string;
    stderr?: string;
    blocker?: RiddleProofBlocker;
    metrics?: Record<string, unknown>;
}
type CodexJsonRunner = (request: CodexJsonRequest) => Promise<CodexJsonResult> | CodexJsonResult;
declare function createCodexExecJsonRunner(config?: CodexExecAgentConfig): CodexJsonRunner;
declare function createCodexExecAgentAdapter(config?: CodexExecAgentConfig, runner?: CodexJsonRunner): RiddleProofAgentAdapter;
declare function runCodexExecAgentDoctor(config?: CodexExecAgentConfig, runner?: CodexJsonRunner): Promise<{
    ok: boolean;
    status: string;
    blocker: {
        code: string;
        message: string;
        details: {
            error: string;
            workdir: string;
            changedFiles?: undefined;
            gitStatus?: undefined;
            targetContent?: undefined;
        };
    };
    workdir?: undefined;
    changedFiles?: undefined;
    implementationSummary?: undefined;
    implementationNotes?: undefined;
    gitStatus?: undefined;
    targetContent?: undefined;
} | {
    ok: boolean;
    status: string;
    blocker: {
        details: {
            workdir: string;
            error?: undefined;
            changedFiles?: undefined;
            gitStatus?: undefined;
            targetContent?: undefined;
        };
        code: string;
        message: string;
        checkpoint?: string | null;
    };
    workdir?: undefined;
    changedFiles?: undefined;
    implementationSummary?: undefined;
    implementationNotes?: undefined;
    gitStatus?: undefined;
    targetContent?: undefined;
} | {
    ok: boolean;
    status: string;
    workdir: string;
    changedFiles: string[];
    implementationSummary: {} | null;
    implementationNotes: {} | null;
    gitStatus: string;
    targetContent: string;
    blocker: {
        code: string;
        message: string;
        details: {
            workdir: string;
            changedFiles: string[];
            gitStatus: string;
            targetContent: string;
            error?: undefined;
        };
    } | null;
}>;

export { type CodexExecAgentConfig, type CodexJsonRequest, type CodexJsonResult, type CodexJsonRunner, createCodexExecAgentAdapter, createCodexExecJsonRunner, runCodexExecAgentDoctor };
