export type CapabilityState = "available" | "missing" | "not-installed" | "unsupported"; export interface CapabilityCheck { id: string; label: string; state: CapabilityState; requiredFor: string[]; detail: string; path?: string; version?: string; } export interface DependencyPin { ecosystem: "npm" | "python"; package: string; version: string; status: "locked" | "candidate-until-integration-tested"; } export interface OfficeStatusReport { schemaVersion: 1; stage: "stage-3-word-pdf"; generatedAt: string; platform: NodeJS.Platform; cwd: string; projectRoot: string; installationPerformed: false; capabilities: CapabilityCheck[]; dependencyPlan: DependencyPin[]; nextSteps: string[]; } export interface ExecResultLike { stdout: string; stderr: string; code: number; killed?: boolean; } export type ProbeExecutor = ( command: string, args: string[], options?: { cwd?: string; signal?: AbortSignal; timeout?: number }, ) => Promise;