/// <reference types="@cloudflare/workers-types" />
import { Context, ContextWithRes } from "./base";
export declare enum InterceptorType {
    Request = 0,
    Response = 1
}
export interface IInterceptor<T = unknown, U = unknown> {
    type: InterceptorType;
    intercept(ctx: T): Promise<U>;
}
export type IRequestInterceptor = IInterceptor<Context, Request>;
export type IResponseInterceptor = IInterceptor<ContextWithRes, Response>;
