import { spawnSync } from "child_process"; import { type CodexHookFeatureFlag } from "../config/codex-feature-flags.js"; export interface CodexFeatureProbeOptions { codexFeaturesProbe?: () => string | null; codexVersionProbe?: () => string | null; } type SpawnSyncLike = typeof spawnSync; export interface CodexVersionProbeOutput { output: string; truncated: boolean; lineLimitExceeded: boolean; } export type CodexVersionProbeResult = { status: "ok"; collected: CodexVersionProbeOutput; } | { status: "start-unavailable"; } | { status: "exit-failure"; } | { status: "timeout"; }; export declare function probeInstalledCodexVersionDetailed(spawnImpl?: SpawnSyncLike): CodexVersionProbeResult; export declare function probeInstalledCodexFeatureList(spawnImpl?: SpawnSyncLike): string | null; export declare function probeInstalledCodexVersion(spawnImpl?: SpawnSyncLike): string | null; export interface CodexHookFeatureSupport { hookFeatureFlag: CodexHookFeatureFlag; pluginScopedHooks: boolean; } export declare function resolveCodexHookFeatureSupportForCli(options?: CodexFeatureProbeOptions): CodexHookFeatureSupport; export declare function resolveCodexHookFeatureFlagForCli(options?: CodexFeatureProbeOptions): CodexHookFeatureFlag; export {}; //# sourceMappingURL=codex-feature-probe.d.ts.map