<!-- source-hash: 9ab6eac897ae7fbb7ae6454201513bed -->
Barrel export file for the tickets feature module, re-exporting all public components, hooks, and types related to ticket management and the Help Center UI.

## Key Components

### Components
| Export | Description |
|--------|-------------|
| `TicketCenter` | Main ticket management surface |
| `TicketOpenForm` | Form for opening new tickets |
| `TicketRow` | Individual ticket row renderer |
| `TicketDetailDrawer` | Slide-out drawer for ticket details |
| `TicketLinkedDeliveryCard` | Card linking a ticket to a delivery |
| `HelpCenterList` | Full-page customer-facing ticket list, used by OpenFrame's `/tickets` route |
| `HelpCenterCard` | Expandable card for a single Help Center entry |
| `HelpCenterCreateForm` / `HelpCenterCreateFormSkeleton` | Ticket creation form with loading skeleton |

### Hooks
| Export | Description |
|--------|-------------|
| `useTicketsList` | Fetches and manages the tickets list state |
| `useTicketActions` | Provides ticket mutation actions; `mapTicketActionError` maps error codes |
| `useTicketEngagements` | Manages ticket engagement threads and file attachments |

### Types & Constants
| Export | Description |
|--------|-------------|
| `TicketData`, `AnyTicket`, `OptimisticTicket` | Core ticket data shapes |
| `TicketClickupSummary` | ClickUp-specific ticket summary |
| `TicketActionErrorCode`, `MappedTicketActionError` | Typed error handling |
| `TICKET_TOAST_COPY` | Toast notification copy constants |
| `isOptimistic` | Type guard for optimistic ticket entries |
| `TicketRef`, `TicketEngagement`, `TicketEngagementFile` | Supporting types |

## Usage Example

```typescript
import {
  HelpCenterList,
  TicketDetailDrawer,
  useTicketsList,
  useTicketActions,
  isOptimistic,
  type AnyTicket,
} from '@/features/tickets'

function TicketsPage() {
  const { tickets } = useTicketsList()
  const { closeTicket } = useTicketActions()

  return (
    <HelpCenterList>
      {tickets.map((ticket: AnyTicket) => (
        <TicketDetailDrawer
          key={isOptimistic(ticket) ? ticket.optimisticId : ticket.id}
          ticket={ticket}
          onClose={() => closeTicket(ticket.id)}
        />
      ))}
    </HelpCenterList>
  )
}
```

> **Note:** Third-party embedders can mount `<HelpCenterList />` inside their own `<PageShell>` to get the full Help Center UX without the OpenFrame route wrapper.