export { defineModule } from "./module"; export type { DefineModuleParams, SlackOptions, NotificationModule } from "./module"; export { permissions } from "./lib/permissions.generated"; // Optional Slack destination (gated by the `slack` defineModule option). export { SLACK_WORKSPACE_INTEGRATION_STATUSES } from "./db/slackWorkspaceIntegration"; // Concrete Slack DestinationAdapter — the module auto-wires this when `slack` is // enabled; exported for advanced/manual composition and tests. export { createSlackDestinationAdapter, type CreateSlackDestinationAdapterDeps, type SlackWorkspaceForAdapter, } from "./lib/slackDestinationAdapter"; // Channel-adapter ports the host app implements/composes and injects via // defineModule({ adapters }). export type { DestinationAdapter, DispatchAdapters, EmailAdapter, InAppAdapter, RecipientProfile, ResolveRecipientFn, } from "./lib/dispatchAdapters"; export { NOTIFICATION_DELIVERY_STATUSES, NOTIFICATION_ENGAGEMENT_STATUSES, } from "./db/notification"; export { NOTIFICATION_EVENT_STATUSES } from "./db/notificationEvent"; // Cross-module event-ingress contract (the stable seam for emitters via a // host-app emitNotificationEvent helper). See lib/events.ts. export { NOTIFICATION_REASONS, type NotificationEventPayload, type NotificationReason, type NotificationRecipientHint, } from "./lib/events";