/**
 * `@platform-modules/helpdesk` — polymorphic case substrate (messages, transitions, attachments, SLA).
 */
export { addAttachment, listAttachments } from './attachments.js'
export type { SupportCase } from './case.js'
export { postMessage, listMessages } from './messages.js'
export {
  helpdeskSchema,
  slaPolicies,
  supportAttachments,
  supportMessages,
  supportStateTransitions,
} from './schema.js'
export type { HelpdeskSchema } from './schema.js'
export { computeDue, isBreached } from './sla.js'
export type { SlaPolicy } from './sla.js'
export { appendTransition, listTransitions } from './transitions.js'
export { isValidTransition } from './transition-validator.js'
export type {
  AddAttachmentInput,
  AppendTransitionInput,
  MessageAuthorType,
  ParentKey,
  PostMessageInput,
  SupportAttachment,
  SupportMessage,
  SupportStateTransition,
} from './types.js'
export type { AdjacencyMap, TransitionPredicate } from './transition-validator.js'
