interface AbstractNode {
    path: string;
}
export declare class Subscription<T extends AbstractNode> {
    private _subscribedNodes;
    get subscribedNodes(): Map<string, T>;
    onWrite?: (data: any[]) => void;
    onUnsubscribed?: (data: any[]) => void;
    onUserNotify?: (data: any[]) => void;
    onError?: (error: any) => void;
    storeSubscribedNodes(nodes: T[]): void;
    deleteSubscribedNodes(nodes: T[]): void;
    fetchSubscribedNode(path: string): T | undefined;
}
export {};
