import type { BackendType } from '../adapters/backend/types.js'; import { type HerdrResult } from '../setup/ensure-herdr.js'; import { type TmuxResult } from '../setup/ensure-tmux.js'; import { probeZellijFunctional } from '../setup/ensure-zellij.js'; import { probeZmxFunctional } from '../setup/ensure-zmx.js'; export type BackendAvailabilityResult = { ok: true; backendType: BackendType; version?: string; } | { ok: false; backendType: BackendType; reason: string; manualCommand?: string; }; export interface BackendAvailabilityDeps { ensureTmux(): Promise; ensureHerdr(): Promise; probeZellijFunctional(): ReturnType; probeZmxFunctional(): ReturnType; } /** * Prepare a backend before persisting a dashboard override. This keeps the UI * promise honest: a successful save means the next session can actually start * on that backend. tmux/herdr may install through their existing official * bootstrap paths; zellij/zmx are probe-only and return actionable failures. */ export declare function ensureBackendAvailable(backendType: BackendType, overrides?: Partial): Promise; //# sourceMappingURL=backend-availability.d.ts.map