type InferProcessorResult = T extends (params: { input: any; signal?: AbortSignal; }) => { forEach: (...args: any[]) => Promise; } ? R : never; type InferProcessorEvent = T extends (params: { input: any; signal?: AbortSignal; }) => { forEach: (handler?: (args: { event: infer E; }) => void | Promise) => Promise; } ? E : never; type InferProcessor = T extends (params: { input: any; signal?: AbortSignal; }) => infer P ? P : never; export type ProcessorResult = InferProcessorResult; export type ProcessorEvent = InferProcessorEvent; export type Processor = InferProcessor; export {};