/** * Support Microfrontend * * Provides a comprehensive customer support and help desk UI for the Burdenoff * multi-tenant platform. This is a GLOBAL module (uses the global API gateway). * * Features: * - Ticket management (create, track, respond) * - Ticket conversation thread * - Knowledge base and help center * - Support analytics and reporting * - SLA tracking and alerts * * Pick a root based on who the host shell serves: * - `SupportUserRoot` — end-user app-shells (vibecontrols-app, workspaces, * bigconsole, botlit-app, etc.). Tickets + KB browse only. * - `SupportAdminRoot` — admin-app. Adds contact-inquiry inbox, KB authoring, * analytics, and settings. * * @example * ```tsx * import { SupportUserRoot, type SupportRootProps } from '@burdenoff/microfe-support'; * * function App() { * const props: SupportRootProps = { * basePath: '/support', * navigate: (path) => router.push(path), * currentUser: { id: '1', email: 'user@example.com' }, * apiGatewayUrl: 'http://localhost:4000/global/graphql', * authToken: 'token', * onTicketCreated: (ticket) => console.log('Ticket created:', ticket), * }; * * return ; * } * ``` */ export { SupportUserRoot } from './SupportUserRoot'; export { SupportAdminRoot } from './SupportAdminRoot'; export { SUPPORT_RYBBIT_EVENT_ALLOWLIST } from './events/rybbit'; export type { SupportRootProps, Ticket, SLAMetrics, ChatSession, ChatMessage, TicketFilters, AddTicketMessageInput, ViewMode, KnowledgeBaseArticleState, SupportTicketStatus, SupportTicketPriority, SLABreachStatus, } from './types'; export { useSupport } from './providers/SupportProvider'; export { useTicketOperations, useChatOperations, useKnowledgeBaseOperations, useAnalyticsOperations, useSupportStore, } from './hooks'; export { formatTicketStatus, getPriorityColor, getPriorityIcon, formatFileSize, formatTimeAgo, formatDuration, calculateSLAStatus, truncateText, getInitials, isValidEmail, stringToColor, } from './utils'; export { enTranslations } from './translations';