import type { EntryRow } from "../../domain/model/EntryRow.js"; import { type DeferredHookDispatcher } from "../../domain/port/DeferredHookDispatcher.js"; import type { CreateEntryArgs, DeleteEntryArgs, EntryKey, EntryRepository, FindEntryByDataFieldArgs, FindEntryByDataFieldsArgs, ListEntriesArgs, ListEntriesResult, TransitionStatusArgs, UpdateEntryArgs } from "../../domain/port/EntryRepository.js"; import type { IdGenerator } from "../../domain/port/IdGenerator.js"; import type { TriggerIndex } from "../../domain/service/TriggerIndex.js"; import type { RunLifecycleHooksUseCase } from "../../usecase/lifecycle/RunLifecycleHooksUseCase.js"; /** Shared mutation chokepoint for lifecycle Triggers. */ export declare class LifecycleHookingEntryRepository implements EntryRepository { private readonly inner; private readonly triggers; private readonly hooks; private readonly idgen; private readonly deferred?; constructor(inner: EntryRepository, triggers: TriggerIndex, hooks: Pick, idgen: IdGenerator, deferred?: DeferredHookDispatcher | undefined); create(args: CreateEntryArgs): Promise; get(args: EntryKey): Promise; update(args: UpdateEntryArgs): Promise; delete(args: DeleteEntryArgs): Promise<{ readonly removed: boolean; }>; transitionStatus(args: TransitionStatusArgs): Promise; list(args: ListEntriesArgs): Promise; findByDataField(args: FindEntryByDataFieldArgs): Promise; findByDataFields(args: FindEntryByDataFieldsArgs): Promise; private triggerNames; private fireBefore; /** * Queue acceptance is not atomic with the completed entry write. * On a definite or ambiguous enqueue rejection, reuse the same * event id in the best-effort waitUntil/inline fallback. */ private fireAfter; } //# sourceMappingURL=LifecycleHookingEntryRepository.d.ts.map