import "@solumjs/core"; import { SolumjsRequest, SolumjsResponse } from "./http-types"; export interface ExecutionContextLike { classRef?: Function; handlerName?: string; request: SolumjsRequest; response: SolumjsResponse; } export interface HandlerInterceptor { preHandle?(request: SolumjsRequest, response: SolumjsResponse): boolean | Promise; postHandle?(request: SolumjsRequest, response: SolumjsResponse): void | Promise; afterCompletion?(request: SolumjsRequest, response: SolumjsResponse, error?: unknown): void | Promise; } export type InterceptorClass = new (...args: any[]) => HandlerInterceptor; export interface InterceptorRegistrationOptions { patterns?: string[]; excludePatterns?: string[]; methods?: string[]; } export declare function addInterceptors(interceptorOrClass: HandlerInterceptor | InterceptorClass, options?: InterceptorRegistrationOptions): void; export declare function resetInterceptors(): void; export declare function resolveInterceptors(method: string, path: string): HandlerInterceptor[]; export declare function UseInterceptors(...interceptors: (HandlerInterceptor | InterceptorClass)[]): MethodDecorator & ClassDecorator; export declare function getControllerInterceptors(target: Function): HandlerInterceptor[]; export declare function getHandlerInterceptors(target: Function, handlerName: string): HandlerInterceptor[]; //# sourceMappingURL=interceptor.d.ts.map