@beignet/core
Version:
Core framework primitives for Beignet
22 lines (20 loc) • 688 B
text/typescript
/**
* Non-durable work scheduled outside the originating application operation.
*/
export type BestEffortWork = () => Promise<void> | void;
/**
* Non-durable, best-effort follow-up work.
*
* Use this for follow-up work that may be lost without changing the outcome
* of the originating operation. Required or retryable work belongs in a job
* or durable outbox instead.
*/
export interface BestEffortWorkPort {
/**
* Schedule work without waiting for it in the originating operation.
*
* Adapters should isolate scheduling and callback failures from the caller
* and report them through their configured error observer.
*/
defer(work: BestEffortWork): void;
}