export type Middleware = (input: T, next: (nextInput: T) => void) => void; export interface Processor { finalCallback?: Callback; process(value: T): void; addMiddleware(...middlewares: Middleware[]): Processor; removeMiddleware(...middlewares: Middleware[]): Processor; } type Callback = (input: T) => void; export declare class MiddlewareProcessor implements Processor { private stack; finalCallback?: Callback; addMiddleware(...middlewares: Middleware[]): Processor; removeMiddleware(...middlewares: Middleware[]): Processor; process(value: T): void; } export {}; //# sourceMappingURL=Middleware.d.ts.map