import { CourierPaging } from "./CourierPaging"; export interface CourierUserPreferences { items: CourierUserPreferencesTopic[]; paging: CourierPaging; } export interface CourierUserPreferencesTopic { defaultStatus: CourierUserPreferencesStatus; hasCustomRouting: boolean; customRouting: CourierUserPreferencesChannel[]; status: CourierUserPreferencesStatus; topicId: string; topicName: string; sectionName: string; sectionId: string; } export interface GetCourierUserPreferencesTopic { topic: CourierUserPreferencesTopic; } // Additional interfaces for CourierUserPreferencesStatus and CourierUserPreferencesChannel would be needed based on their definitions export enum CourierUserPreferencesStatus { OptedIn = "OPTED_IN", OptedOut = "OPTED_OUT", Required = "REQUIRED", Unknown = "UNKNOWN", } // Function to get the title of the enum value export function getCourierUserPreferencesStatusTitle(status: CourierUserPreferencesStatus): string { switch (status) { case CourierUserPreferencesStatus.OptedIn: return "Opted In"; case CourierUserPreferencesStatus.OptedOut: return "Opted Out"; case CourierUserPreferencesStatus.Required: return "Required"; case CourierUserPreferencesStatus.Unknown: return "Unknown"; default: return "Unknown"; } } export enum CourierUserPreferencesChannel { DirectMessage = "direct_message", Inbox = "inbox", Email = "email", Push = "push", Sms = "sms", Webhook = "webhook", Unknown = "unknown", } // Function to get the title of the enum value export function getCourierUserPreferencesChannelTitle(channel: CourierUserPreferencesChannel): string { switch (channel) { case CourierUserPreferencesChannel.DirectMessage: return "In App Messages"; case CourierUserPreferencesChannel.Inbox: return "Inbox"; case CourierUserPreferencesChannel.Email: return "Emails"; case CourierUserPreferencesChannel.Push: return "Push Notifications"; case CourierUserPreferencesChannel.Sms: return "Text Messages"; case CourierUserPreferencesChannel.Webhook: return "Webhooks"; case CourierUserPreferencesChannel.Unknown: return "Unknown"; default: return "Unknown"; } }