콘텐츠로 이동

NotificationDeliveryStore — @gj-kit/nest-notifications

@gj-kit/nest-notifications에서 공개하는 interface입니다. package version 0.1.1의 release declaration을 그대로 표시합니다.

import { NotificationDeliveryStore } from '@gj-kit/nest-notifications';
interface NotificationDeliveryStore {
/**
* Atomically claim due deliveries. The claim MUST also stamp the presentation
* lock in the same statement (D1): split into two statements, a relay can merge
* an item in between and the user never sees it.
*/
claimDue(request: DispatchClaimRequest): Promise<readonly ClaimedNotificationDelivery[]>;
materializeInTransaction<T>(request: DispatchTransactionRequest, work: (tx: NotificationDispatchTransaction) => Promise<T>): Promise<T | null>;
/** `false` means the claim was lost; `deliveredAt` is unchanged (D3). */
complete(request: DispatchCompleteRequest): Promise<boolean>;
/**
* Release a failed claim. The presentation lock is NOT released: the inbox
* sentence may already have been shown to the user (D1).
*/
releaseClaim(request: DispatchReleaseRequest): Promise<void>;
}

이 선언은 매개변수, optionality, 제네릭, 반환값, 공개 union/type 계약의 정본입니다. 호출 전 필요한 환경·권한·오류 경계는 패키지 Golden path와 이 subpath의 import 조건을 함께 확인하세요.

  • 패키지: @gj-kit/nest-notifications
  • 버전: 0.1.1
  • 공개 entry: .
  • 소스: GitHub