import { FSGetFileMessage, FSGetFileHandleMessage, FSGetDirectoryHandleMessage, FSWriteFileMessage, } from './fileSystem'; import { MiraMdxFileItem, FileStat } from './workspace'; export type DevServerEvent = { type: 'watcher'; data: { event: 'add' | 'unlink' | 'change'; file: MiraMdxFileItem | FileStat; }; }; export type DevServerMessage = | FSGetFileMessage | FSGetFileHandleMessage | FSGetDirectoryHandleMessage | FSWriteFileMessage; export interface DevServerWatcher { sendMessage: (message: DevServerMessage) => Promise; sendMessageWaitForResponse: ( message: DevServerMessage, ) => Promise; }