export type DialogContext = { open(id: string, data?: T): void; close(id: string, data?: T): void; get(id: string): T; update(id: string, data: T | ((prevData: T) => T)): void; reset(id: string): void; subscribe(id: string, callback: (data: unknown) => void): () => void; unsubscribe(id: string, callback: (data: unknown) => void): void; }; export type DialogWrapperContext = { id?: string | null; };