import { ensureLoopTeamMonitor } from "./monitor-supervisor.js"; import { type TmuxApi } from "./tmux.js"; export interface VisualRegistrationInput { cwd: string; teamName: string; launchId: string; deliveryDir: string; manifestPath: string; socketPath: string; serverPid: number; serverStartedAt: number; sessionId: string; sessionCreatedAt: number; windowId: string; } export interface VisualRegisteredPane { paneId: string; laneId: string; laneName?: string; } export interface VisualTeamRegistration { schemaVersion: 1; registrationId: string; teamName: string; projectRoot: string; launchId: string; generation: string; deliveryDir: string; manifestPath: string; socketPath: string; serverPid: number; serverStartedAt: number; sessionId: string; sessionCreatedAt: number; windowId: string; panes: VisualRegisteredPane[]; registeredAt: string; updatedAt: string; } export interface VisualRegistrationDeps { tmuxForSocket?: (socketPath: string) => TmuxApi; ensure?: typeof ensureLoopTeamMonitor; now?: () => number; } export type VisualRegistrationResult = { ok: true; registration: VisualTeamRegistration; } | { ok: false; error: string; }; export declare function registerVisualTeam(input: VisualRegistrationInput, deps?: VisualRegistrationDeps): VisualRegistrationResult;