UNPKG

@tsclean/core

Version:

Plugin for API Rest Full development, based on Clean Architecture, IoC and Dependency Injection.

47 lines 3.04 kB
import { ExecutionContextHost } from '../../helpers'; import { ParamProperties } from '../../helpers/context-utils'; import { ExceptionFiltersContext } from './exception-filters-context'; import { ContextType, ControllerType } from '../../types'; import { AccessResourceConsumer, AccessResourceContextCreator } from '../../access'; import { HandlerConsumer, HandlerContextCreator, WsParamsFactory } from '../../websockets'; import { HandlerTransform, ParamsMetadataInterface } from '../../contracts'; import { InterceptorsConsumer, InterceptorsContextCreator } from '../../interceptors'; import { WsProxy } from './ws-proxy'; type WsParamProperties = ParamProperties & { metatype?: any; }; export interface WsHandlerMetadata { argsLength: number; paramtypes: any[]; getParamsMetadata: (moduleKey: string) => WsParamProperties[]; } export declare class WsContextCreator { private readonly wsProxy; private readonly exceptionFiltersContext; private readonly handlerContextCreator; private readonly handlerConsumer; private readonly guardsContextCreator; private readonly guardsConsumer; private readonly interceptorsContextCreator; private readonly interceptorsConsumer; private readonly contextUtils; private readonly wsParamsFactory; private readonly handlerMetadataStorage; constructor(wsProxy: WsProxy, exceptionFiltersContext: ExceptionFiltersContext, handlerContextCreator: HandlerContextCreator, handlerConsumer: HandlerConsumer, guardsContextCreator: AccessResourceContextCreator, guardsConsumer: AccessResourceConsumer, interceptorsContextCreator: InterceptorsContextCreator, interceptorsConsumer: InterceptorsConsumer); create<T extends ParamsMetadataInterface = ParamsMetadataInterface>(instance: ControllerType, callback: (...args: unknown[]) => void, moduleKey: string, methodName: string): (...args: any[]) => Promise<void>; reflectCallbackParamtypes(instance: ControllerType, callback: (...args: any[]) => any): any[]; reflectCallbackPattern(callback: (...args: any[]) => any): string; createGuardsFn<TContext extends string = ContextType>(guards: any[], instance: ControllerType, callback: (...args: unknown[]) => any, contextType?: TContext): Function | null; getMetadata<TMetadata, TContext extends ContextType = ContextType>(instance: ControllerType, methodName: string, contextType: TContext): WsHandlerMetadata; exchangeKeysForValues<TMetadata = any>(keys: string[], metadata: TMetadata, moduleContext: string, paramsFactory: WsParamsFactory, contextFactory: (args: unknown[]) => ExecutionContextHost): ParamProperties[]; createPipesFn(handler: HandlerTransform[], paramsOptions: (ParamProperties & { metaType?: unknown; })[]): (args: unknown[], ...params: unknown[]) => Promise<void>; getParamValue<T>(value: T, { metaType, type, data }: { metaType: any; type: any; data: any; }, pipes: HandlerTransform[]): Promise<any>; } export {}; //# sourceMappingURL=ws-context-creator.d.ts.map