콘텐츠로 이동

NotificationCommand — @gj-kit/nest-notifications

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

import { NotificationCommand } from '@gj-kit/nest-notifications';
/**
* One source recipient plus one stable event key is the idempotency boundary
* (design 3.1 G1). `applicationKey` is server-owned configuration: API callers
* must never choose it.
*
* Delivery order between two commands is never guaranteed (G8). Quiet-hours
* holds, batch windows, scheduled timings, parallel workers and per-item retries
* all reorder deliveries, so a domain that needs an order must put it in the
* body.
*/
interface NotificationCommand {
readonly applicationKey: string;
readonly recipientRef: string;
readonly actorRef?: string | null | undefined;
readonly targetRef?: string | null | undefined;
readonly category: string;
readonly priority: NotificationPriority;
readonly title?: string | null | undefined;
readonly body: string;
readonly action?: NotificationAction | null | undefined;
readonly eventKey: string;
readonly batch?: NotificationBatch | null | undefined;
readonly timing?: NotificationTiming | undefined;
}

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

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

One source recipient plus one stable event key is the idempotency boundary (design 3.1 G1). applicationKey is server-owned configuration: API callers must never choose it.

Delivery order between two commands is never guaranteed (G8). Quiet-hours holds, batch windows, scheduled timings, parallel workers and per-item retries all reorder deliveries, so a domain that needs an order must put it in the body.