/** Public API of the POS module. */
export { registerPosRoutes, type PosRouteDeps } from './api/pos.routes.js';
export {
  CreatePosSaleUseCase,
  validatePaymentAllocations,
  type ConfiguredPaymentMethod,
  type ValidatedPayment,
} from './application/create-pos-sale.js';
export { ReceiveRestPaymentUseCase } from './application/receive-rest-payment.js';
export { ApplyPosReturnUseCase } from './application/apply-pos-return.js';
export { buildPosReceipt, buildPosReturnReceipt } from './application/build-pos-receipt.js';
export type {
  PosSaleInput,
  PosSaleResult,
  PosSaleLineInput,
  PosSaleLineItem,
  PosPaymentInput,
  PosPaymentResult,
  PosReturnInput,
  PosReturnResult,
  PosReturnLineInput,
  PosReceipt,
} from './domain/pos-sale.js';
