export interface Params { getState: () => Record<string, any>; setState: (key: string, val: any) => void; } export interface State { id: string; start: (params: Params) => Promise<void>; close: () => void; } export interface Action { type: string; payload: any; } export declare type Listener = (action: Action) => void; export declare class DataServer { private states; private state; private listeners; constructor(); register(states: State[]): DataServer; start(): Promise<void>; close(): void; onStateChange(listener: Listener): () => void; getState(): Map<string, any>; private setState; private writeDbFile; private mapToObject; }