import type { ImplementedProcedure } from './runtime.js'; export type CallInterceptor = (ctx: { procedure: ImplementedProcedure; path: string[]; input: unknown; context: unknown; signal?: AbortSignal; next: (opts?: { input?: unknown; /** Replaces context entirely; does not merge. */ context?: unknown; signal?: AbortSignal; }) => Promise; }) => Promise; type CallState = { input: unknown; context: unknown; signal?: AbortSignal; }; export declare function runCallInterceptors(interceptors: readonly CallInterceptor[], ctx: { procedure: ImplementedProcedure; path: string[]; input: unknown; context: unknown; signal?: AbortSignal; }, execute: (current: CallState) => Promise): Promise; export {}; //# sourceMappingURL=call-interceptor.d.ts.map