import type { WorkerExecutionOfferJournalRecord } from '../domain/workerExecutionOffer'; export type WorkerExecutionOfferJournalCreateResult = 'created' | 'exists'; export interface WorkerExecutionOfferJournalPage { records: readonly WorkerExecutionOfferJournalRecord[]; nextAfterOfferId?: string; } export interface WorkerExecutionOfferJournal { create( record: WorkerExecutionOfferJournalRecord, ): Promise; read(offerId: string): Promise; replace( record: WorkerExecutionOfferJournalRecord, expectedRevision: number, ): Promise; remove(offerId: string, expectedRevision?: number): Promise; list(options?: { afterOfferId?: string; limit?: number; }): Promise; }