/// <reference types="node" />
import { Server } from './types';
import { AnySocketEpic } from '../kit';
import { BasicLogger } from '../logging';
export declare type SocketRegistry = ReturnType<typeof createSocketRegistry>;
export declare function createSocketRegistry(server: Server, epicsByPath: Map<string, AnySocketEpic>, logger: BasicLogger): {
    initialize: (newEpicsByPath: Map<string, AnySocketEpic>) => void;
    deinitialize: () => Promise<void>;
    destroy: () => Promise<void>;
};
export declare function getRegistry(server: Server & {
    registry?: SocketRegistry;
}, epicsByPath: Map<string, AnySocketEpic>, logger: BasicLogger): {
    initialize: (newEpicsByPath: Map<string, import("../kit").SocketEpic<import("..").IAction, import("..").IAction | Buffer, {}, unknown[]>>) => void;
    deinitialize: () => Promise<void>;
    destroy: () => Promise<void>;
};
