import { MiddlewareFactory } from './index'; import { RegistryEntityStatic } from '../../common/registry/entityRegistry'; import { ControllerMetadata } from '../registry/decorators'; /** * Decorator for assigning before middleware method in a controller * @returns {function(any, string, TypedPropertyDescriptor): undefined} * @constructor * @param middlewareFactories */ export declare function Before(...middlewareFactories: MiddlewareFactory[]): MethodDecorator; /** * Decorator for assigning after middleware method in a controller * @returns {function(any, string, TypedPropertyDescriptor): undefined} * @constructor * @param middlewareFactories */ export declare function After(...middlewareFactories: MiddlewareFactory[]): MethodDecorator; /** * Initializes the `registeredMiddleware` property on the controller with empty stores * @param target */ export declare function initializeMiddlewareRegister(target: RegistryEntityStatic): void; /** * Decorator for assigning before middleware to all methods in a controller * @param middlewareFactories * @returns {function(AbstractController): void} * @constructor */ export declare function BeforeAll(...middlewareFactories: MiddlewareFactory[]): ClassDecorator; /** * Decorator for assigning after middleware to all methods in a controller * @param middlewareFactories * @returns {function(AbstractController): void} * @constructor */ export declare function AfterAll(...middlewareFactories: MiddlewareFactory[]): ClassDecorator;