콘텐츠로 이동

NestNotificationsOptions — @gj-kit/nest-notifications

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

import { NestNotificationsOptions } from '@gj-kit/nest-notifications';
interface NestNotificationsOptions {
readonly applicationKey: string;
readonly relayStore: NotificationRelayStore;
readonly deliveryStore: NotificationDeliveryStore;
readonly endpointStore: NotificationEndpointStore;
readonly pushGateway: NotificationPushGateway;
readonly presenter: NotificationPresenter;
readonly policy: NotificationSchedulingPolicy;
/** Which endpoint providers the gateway handles. Must be non-empty. */
readonly providers: readonly string[];
/**
* Exposed through `NOTIFICATION_PUBLISHER` for source-domain code. The pipeline
* never calls it: staging happens in the host's own transaction.
*/
readonly publisher?: NotificationPublisher<never> | undefined;
readonly logger?: NotificationLogger | undefined;
/**
* Shared by the relay, the dispatcher and the wakeup hint - one instance, not
* three. Defaults to `systemNotificationRuntime()`. Without this a consumer
* wired through `forRoot` cannot fix the clock, so their own quiet-hours and
* batch-window behaviour is untestable, and `defer` cannot be swapped for a
* serverless host (design 0.2-12).
*/
readonly runtime?: NotificationRuntime | undefined;
readonly wakeup?: {
readonly enabled?: boolean | undefined;
} | undefined;
readonly relay?: Pick<NotificationRelayOptions, 'pageSize' | 'claimStaleMs' | 'maxAttempts'> | undefined;
readonly dispatch?: Pick<NotificationDispatcherOptions, 'pageSize' | 'claimStaleMs' | 'maxAttempts' | 'disableRejectedEndpoints'> | undefined;
}

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

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