/** * Вебкам-модель в НОРМАЛИЗОВАННОМ виде — то, что нужно карточке для отрисовки * и ничего больше. Карточка не знает, какой провайдер отдал данные (сейчас * Stripcash, завтра может быть другой): маппинг делают обёртки-адаптеры * (`components/webcam/stripcash-card.vue`). */ export interface IWebcamModel { /** Идентификатор у провайдера (для key и аналитики) */ id: string | number; /** Отображаемое имя */ name: string; /** Статичный постер */ poster: string; /** Запасной постер: снапшоты провайдера временные и иногда не отдаются */ posterFallback?: string; /** Видео-превью (mp4/hls), если провайдер его отдаёт */ previewUrl?: string; /** Ссылка перехода (уже с партнёрскими метками провайдера) */ url: string; /** Зрителей онлайн */ viewers?: number; /** Возраст */ age?: number; /** ISO-код страны */ country?: string; /** Языки модели (ISO-коды) */ languages?: string[]; /** Теги/категории */ tags?: string[]; /** Новая модель — плашка на постере */ isNew?: boolean; /** Цель стримера: текст и процент выполнения (для ховер-оверлея) */ goal?: { message: string, percent: number }; /** Провайдер — только для отладки и аналитики, поведение от него не зависит */ provider?: string; }