/**
 * @param {Object} [metadata]
 * @returns {InternalSocket}
 */
export function createSocket(metadata?: any): InternalSocket;
export class InternalSocket extends EventEmitter {
    constructor(metadata?: {});
    regularEmitEvent(event: any, data: any): void;
    debugEmitEvent(event: any, data: any): void;
    metadata: {};
    brackets: any[];
    connected: boolean;
    dataDelegate: any;
    debug: boolean;
    emitEvent: (event: any, data: any) => void;
    from: any;
    to: any;
    connect(): void;
    disconnect(): void;
    isConnected(): boolean;
    send(data: any): void;
    post(packet: any, autoDisconnect?: boolean): void;
    beginGroup(group: any): void;
    endGroup(): void;
    setDataDelegate(delegate: any): void;
    setDebug(active: any): void;
    getId(): string;
    handleSocketEvent(event: any, payload: any, autoConnect?: boolean): void;
}
import { EventEmitter } from "events";
