/// import Address from './address'; import Connection, { EventTypes } from './connection'; import * as net from 'net'; import Event from './event'; import Obfs from '../obfs/obfs'; export interface Info { version: number; address: Address; userId?: string; } export interface HandlerResolve { socket: net.Socket; address: Address; obfs: Obfs; rsv?: number; args?: any; } export type Handler = (info: Info, socket: net.Socket, obfs: Obfs, event?: Event, resolve?: (value: PromiseLike | HandlerResolve) => void, reject?: ((reason?: any) => void) | undefined) => void; /** * Inputs a callback function and return a function that accept connection and, * executes callback with function its properties * @returns function */ export declare const handler: (callback: Handler) => (connection: Connection) => void;