import type { DivoomConfig } from '../../config'; export type DivoomStatus = 'idle' | 'working' | 'alerting'; export type DivoomEvent = { type: string; properties?: { info?: { id?: string; parentID?: string; title?: string; agent?: string; sessionID?: string; }; sessionID?: string; status?: { type: string; }; }; }; export type DivoomStatusUpdate = { status: DivoomStatus; reason: string; timestamp: number; }; export interface DivoomTransport { sendStatus(update: DivoomStatusUpdate): Promise; dispose?(): Promise | void; } export type DivoomStatusManagerOptions = { config?: DivoomConfig; transport?: DivoomTransport; storageDir?: string; registerBeforeExit?: boolean; now?: () => number; schedule?: (callback: () => void, delayMs: number) => unknown; clearSchedule?: (timer: unknown) => void; }; export type DivoomStatusFaceMap = Record; export type CommandRunner = (command: string, args: string[]) => Promise<{ stdout: string; stderr: string; }>;