import type { Constructor } from '@cratis/fundamentals'; import type { ActivatedArtifact } from '../artifacts/ActivatedArtifact.js'; import type { EventContext } from '../events/EventContext.js'; import type { ReactorServices } from './ReactorServices.js'; import type { ReactorDelivery } from './ReactorDelivery.js'; /** Internal handler catalog shared by live observations and in-process deliveries. */ export interface ReactorEventTypeEntry { readonly id: string; readonly generation: number; readonly methodName?: string; readonly replayMethodName?: string; } export declare function getReactorEventTypes(reactorType: Constructor, registeredTypes: readonly Constructor[]): ReactorEventTypeEntry[]; export declare function selectReactorHandler(entries: readonly ReactorEventTypeEntry[], reactorType: Constructor, instance: Record | undefined, id: string | undefined, observationState: number): { methodName: string | undefined; isReplay: boolean; skipReplay: boolean; } | undefined; /** Handler and returned effects execute in the same production activation boundary. */ export declare function invokeReactorHandler(artifact: ActivatedArtifact>, methodName: string, content: Record, context: EventContext, services: ReactorServices | undefined, handleResult: (value: unknown) => Promise, delivery: ReactorDelivery): Promise; //# sourceMappingURL=ReactorDispatcher.d.ts.map