import { type BenchmarkResult } from '../infrastructure/benchmark.js'; import { type ProofReportResult } from '../infrastructure/proof-report.js'; import { saveQueryResult } from '../infrastructure/save-query-result.js'; import { generateGraph } from '../infrastructure/generate.js'; import { install as installHooks, status as hookStatus, uninstall as uninstallHooks } from '../infrastructure/hooks.js'; import { agentsInstall, agentsUninstall, claudeInstall, claudeUninstall, cursorInstall, cursorUninstall, geminiInstall, geminiUninstall, installCopilotMcp, installSkill, uninstallCopilotMcp, uninstallSkill } from '../infrastructure/install.js'; import { pushGraphToNeo4j } from '../infrastructure/neo4j.js'; import { watch as watchGraph } from '../infrastructure/watch.js'; import { serveGraph } from '../runtime/http-server.js'; import { type GraphSummary } from '../runtime/graph-summary.js'; import { serveGraphStdio } from '../runtime/stdio-server.js'; import { loadGraph, queryGraph } from '../runtime/serve.js'; import { type TelemetryEventInput, type TelemetryStatusBucket } from '../shared/telemetry.js'; import { type BenchSuiteCliOptions, type BenchmarkCliOptions, type TryCliOptions, type HandoffCliOptions, type PackCliOptions, type ProofReportCliOptions, type PromptCliOptions, type CompareCliOptions, type ReviewCompareCliOptions, type TimeTravelCliOptions } from './parser.js'; export interface CliIO { log(message?: string): void; error(message?: string): void; } export interface CompareCommandContext { options: CompareCliOptions; io: CliIO; confirm(message: string): Promise; } export interface ReviewCompareCommandContext { options: ReviewCompareCliOptions; io: CliIO; confirm(message: string): Promise; } export interface BenchmarkCommandContext { options: BenchmarkCliOptions; io: CliIO; } export interface BenchSuiteCommandContext { options: BenchSuiteCliOptions; io: CliIO; } export interface EvalCommandContext { options: BenchmarkCliOptions; io: CliIO; } export interface TimeTravelCommandContext { options: TimeTravelCliOptions; io: CliIO; } export interface ContextPackCommandContext { options: PackCliOptions; io: CliIO; } export interface TryCommandContext { options: TryCliOptions; io: CliIO; } export interface HandoffCommandContext { options: HandoffCliOptions; io: CliIO; } export interface ContextPromptCommandContext { options: PromptCliOptions; io: CliIO; } export interface ProofReportCommandContext { options: ProofReportCliOptions; } export interface CliDependencies { loadGraph: typeof loadGraph; queryGraph: typeof queryGraph; saveQueryResult: typeof saveQueryResult; runBenchmark: (context: BenchmarkCommandContext) => Promise | BenchmarkResult; runBenchSuite: (context: BenchSuiteCommandContext) => Promise | string | void; runEval: (context: EvalCommandContext) => Promise | string | void; runCompare: (context: CompareCommandContext) => Promise | string | void; runReviewCompare: (context: ReviewCompareCommandContext) => Promise | string | void; runTimeTravel: (context: TimeTravelCommandContext) => Promise | string | void; runContextPack: (context: ContextPackCommandContext) => Promise | string | void; runTry: (context: TryCommandContext) => Promise | string | void; runHandoff: (context: HandoffCommandContext) => Promise | string | void; runContextPrompt: (context: ContextPromptCommandContext) => Promise | string | void; runProofReport: (options: ProofReportCliOptions) => ProofReportResult; runDoctor: (graphPath: string) => string; runStatus: (graphPath: string) => string; runGraphSummary?: (graphPath: string) => Promise | GraphSummary; confirm: (message: string) => Promise; printBenchmark: (result: BenchmarkResult) => void; installHooks: typeof installHooks; uninstallHooks: typeof uninstallHooks; hookStatus: typeof hookStatus; geminiInstall: typeof geminiInstall; geminiUninstall: typeof geminiUninstall; installSkill: typeof installSkill; uninstallSkill: typeof uninstallSkill; cursorInstall: typeof cursorInstall; cursorUninstall: typeof cursorUninstall; installCopilotMcp: typeof installCopilotMcp; uninstallCopilotMcp: typeof uninstallCopilotMcp; pushGraphToNeo4j: typeof pushGraphToNeo4j; generateGraph: typeof generateGraph; watchGraph: typeof watchGraph; serveGraph: typeof serveGraph; serveGraphStdio: typeof serveGraphStdio; claudeInstall: typeof claudeInstall; claudeUninstall: typeof claudeUninstall; agentsInstall: typeof agentsInstall; agentsUninstall: typeof agentsUninstall; notifyUpdate?: () => Promise | string | null; readInstalledVersion?: () => string; enableTelemetry?: () => string; disableTelemetry?: () => string; readTelemetryStatus?: () => string; clearTelemetry?: () => string; readTelemetryReport?: (spoolPaths?: string[]) => string; readDoctorTelemetryBucket?: (graphPath: string) => TelemetryStatusBucket; readStatusTelemetryBucket?: (graphPath: string) => TelemetryStatusBucket; recordTelemetryEvent?: (event: TelemetryEventInput) => void; } export declare function formatHelp(binaryName?: string): string; export declare function executeCli(argv: string[], io?: CliIO, dependencies?: CliDependencies): Promise;