export type DiscoveryInstance = {
    id: string;
    port: number;
    tfl: number;
};
export type DiscoveryServerSettings = {
    onError?: (err: Error) => void;
    onData?: (instance: DiscoveryInstance, data: unknown) => void;
    onStart?: (instance: DiscoveryInstance) => void;
    onClose?: (instance: DiscoveryInstance) => void;
    onConnect?: (instance: DiscoveryInstance) => void;
    onDisconnect?: (instance: DiscoveryInstance) => void;
};
export type DiscoveryServerApi = {
    id: string;
    port: () => number;
    send: (data: unknown, to?: DiscoveryInstance[]) => void;
    close: () => void;
};
export declare function createDiscoveryServer(settings?: DiscoveryServerSettings): DiscoveryServerApi;
