import { ActionMetadataArgs, ControllerMetadataArgs, InterceptorMetadataArgs, MiddlewareMetadataArgs, ModelMetadataArgs, ParamMetadataArgs, PropertyMetadataArgs, ResponseHandlerMetadataArgs, UseInterceptorMetadataArgs, UseMetadataArgs } from "@nodeboot/context"; /** * Storage all metadata read from decorators. */ export declare class MetadataArgsStorage { /** * Registered controller metadata args. */ controllers: ControllerMetadataArgs[]; /** * Registered middleware metadata args. */ middlewares: MiddlewareMetadataArgs[]; /** * Registered interceptor metadata args. */ interceptors: InterceptorMetadataArgs[]; /** * Registered models (data-classes) metadata args. */ models: ModelMetadataArgs[]; /** * Registered data-classes properties metadata args. */ modelProperties: PropertyMetadataArgs[]; /** * Registered "use middleware" metadata args. */ uses: UseMetadataArgs[]; /** * Registered "use interceptor" metadata args. */ useInterceptors: UseInterceptorMetadataArgs[]; /** * Registered action metadata args. */ actions: ActionMetadataArgs[]; /** * Registered param metadata args. */ params: ParamMetadataArgs[]; /** * Registered response handler metadata args. */ responseHandlers: ResponseHandlerMetadataArgs[]; /** * Filters registered middlewares by a given classes. */ filterMiddlewareMetadatasForClasses(classes: Function[]): MiddlewareMetadataArgs[]; /** * Filters registered interceptors by a given classes. */ filterInterceptorMetadatasForClasses(classes: Function[]): InterceptorMetadataArgs[]; /** * Filters registered controllers by a given classes. */ filterControllerMetadatasForClasses(classes: Function[]): ControllerMetadataArgs[]; /** * Filters registered actions by a given classes. */ filterActionsWithTarget(target: Function): ActionMetadataArgs[]; /** * Filters registered "use middlewares" by a given target class and method name. */ filterUsesWithTargetAndMethod(target: Function, methodName?: string): UseMetadataArgs[]; /** * Filters registered "use interceptors" by a given target class and method name. */ filterInterceptorUsesWithTargetAndMethod(target: Function, methodName?: string): UseInterceptorMetadataArgs[]; /** * Filters parameters by a given classes. */ filterParamsWithTargetAndMethod(target: Function, methodName: string): ParamMetadataArgs[]; /** * Filters response handlers by a given class. */ filterResponseHandlersWithTarget(target: Function): ResponseHandlerMetadataArgs[]; /** * Filters response handlers by a given classes. */ filterResponseHandlersWithTargetAndMethod(target: Function, methodName: string): ResponseHandlerMetadataArgs[]; /** * Filters Models (Data classes) by a given target class. */ filterModelsByTarget(target: Function): ModelMetadataArgs[]; /** * Filters Models (Data classes) properties by a given target class. */ filterPropertyByTarget(target: Function): PropertyMetadataArgs[]; /** * Removes all saved metadata. */ reset(): void; /** * Resets the global metadata storage singleton. * Useful for testing and hot-reload scenarios to prevent memory leaks. */ static reset(): void; /** * Gets metadata args storage. * Metadata args storage follows the best practices and stores metadata in a global variable. */ static get(): MetadataArgsStorage; } //# sourceMappingURL=MetadataArgsStorage.d.ts.map