import type { ThinkingLevel } from "@ch1nyzzz/pi-agent-core"; import type { CodeValidationExecutor } from "../code/worktree.ts"; import type { EvoPaths } from "../paths.ts"; import { type ApprovalTurn } from "../proposal-artifacts.ts"; import type { EvidenceReference, Proposal, ProposalApproval } from "../types.ts"; import { type EvidenceCorpus } from "./evidence.ts"; import type { ModelRunner, ModelRunResult } from "./model-runner.ts"; interface PermitModelOptions { paths: EvoPaths; runner: ModelRunner; proposalId: string; expected: ProposalApproval; cwd?: string; agentDir?: string; model?: string; thinkingLevel?: ThinkingLevel; maxCorpusBytes?: number; } export interface AskProposalQuestionOptions extends PermitModelOptions { question: string; } export interface AskProposalQuestionResult { proposal: Proposal; questionTurn: ApprovalTurn; answerTurn: ApprovalTurn; answerMarkdown: string; evidence: EvidenceReference[]; corpus: EvidenceCorpus; run: ModelRunResult; } export interface ReviseProposalFromInstructionOptions extends PermitModelOptions { instruction: string; repositoryCwd?: string; codeValidationExecutor?: CodeValidationExecutor; criticModel?: string; criticThinkingLevel?: ThinkingLevel; replayModel?: string; replayThinkingLevel?: ThinkingLevel; } export interface RecordPermitDecisionOptions { paths: EvoPaths; proposalId: string; revision: number; diffDigest: string; reason: string; until?: string; } export declare function askProposalQuestion(options: AskProposalQuestionOptions): Promise; export declare function reviseProposalFromInstruction(options: ReviseProposalFromInstructionOptions): Promise; export declare function recordPermitDefer(options: RecordPermitDecisionOptions): Promise; export declare function recordPermitReopen(options: RecordPermitDecisionOptions): Promise; export {}; //# sourceMappingURL=permit.d.ts.map