import { ApplicationConfig } from '../app';
import { ApplicationContextOptionsInterface, InjectionToken } from '../contracts';
import { ContainerIoC, InstanceWrapper } from '../core';
import { InjectableType } from '../types';
import { GraphInspector } from '../inspector/graph-inspector';
export declare class SocketModule<THttpServer = any, TAppOptions extends ApplicationContextOptionsInterface = ApplicationContextOptionsInterface> {
    private readonly socketsContainer;
    private applicationConfig;
    private webSocketsController;
    private isAdapterInitialized;
    private httpServer;
    private appOptions;
    register(container: ContainerIoC, applicationConfig: ApplicationConfig, graphInspector: GraphInspector, appOptions: TAppOptions, httpServer?: THttpServer): void;
    connectAllGateways(providers: Map<InjectionToken, InstanceWrapper<InjectableType>>, moduleName: string): void;
    connectGatewayToServer(wrapper: InstanceWrapper<InjectableType>, moduleName: string): void;
    close(): Promise<any>;
    private initializeAdapter;
    private getContextCreator;
}
//# sourceMappingURL=socket-module.d.ts.map