import { ReadonlyStore, Store } from '../data/Store';
export type GeneratorFunction = (this: ReadonlyStore, ...args: any[]) => Promise<any>;
export declare class GeneratorRegistry {
    protected store: ReadonlyStore | null;
    protected generators: Map<string, GeneratorFunction>;
    constructor(store?: ReadonlyStore);
    add(key: string, generator: GeneratorFunction): void;
    setStore(store: Store): void;
    connectRemoteStore(port: MessagePort): Promise<void>;
    invoke<T>(key: string, ...args: any[]): Promise<T>;
}
