import { InjectorContext } from '@deepkit/injector'; import { RpcControllerAccess, RpcKernel, RpcKernelBaseConnection, RpcKernelConnection, RpcMessage, RpcMessageBuilder, RpcServerAction, TransportConnection } from '@deepkit/rpc'; import { Stopwatch } from '@deepkit/stopwatch'; import { ClassType } from '@deepkit/core'; import { AppModule } from '@deepkit/app'; export declare class RpcControllers { readonly controllers: Map; }>; } export declare class RpcInjectorContext extends InjectorContext { } export declare class RpcServerActionWithStopwatch extends RpcServerAction { stopwatch?: Stopwatch; protected hasControllerAccess(controllerAccess: RpcControllerAccess, connection: RpcKernelBaseConnection): Promise; handleAction(message: RpcMessage, response: RpcMessageBuilder): Promise; } export declare class RpcKernelConnectionWithStopwatch extends RpcKernelConnection { protected actionHandler: RpcServerActionWithStopwatch; stopwatch?: Stopwatch; setStopwatch(stopwatch: Stopwatch): void; protected authenticate(message: RpcMessage, response: RpcMessageBuilder): Promise; } export declare class RpcKernelWithStopwatch extends RpcKernel { protected RpcKernelConnection: typeof RpcKernelConnectionWithStopwatch; stopwatch?: Stopwatch; createConnection(transport: TransportConnection, injector?: InjectorContext): RpcKernelBaseConnection; }