import type { CustomStageFilter } from './custom-stages'; /** Fields a stage override can carry. All optional — send only what changed. */ export interface StageOverridePatch { label?: string; color?: string; /** Extra lane conditions (same shape/ops as smart-lane filters). */ filters?: CustomStageFilter[]; } export interface UseStageOverridesResult { /** True only after a successful GET — gates the per-lane gear on declared stages. */ available: boolean; /** Upsert a declared lane's override (label/color/conditions). Throws on failure. */ save: (stageKey: string, patch: StageOverridePatch) => Promise; /** Reset a declared lane to its manifest default (drops the stored override). */ reset: (stageKey: string) => Promise; } /** * Learns whether the host wired `/stage-overrides` (so the gear can appear on * declared lanes) and exposes save/reset. A missing endpoint degrades to * `available: false`; a real save/reset failure re-throws so the caller can * surface an error + revert. The overridden VALUES themselves are read off * `metadata.stages` (the kernel applies them), so this hook doesn't cache a list. */ export declare function useStageOverrides(model: string): UseStageOverridesResult; //# sourceMappingURL=stage-overrides.d.ts.map