channel.ts 980 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. export interface ChannelListItem {
  2. channelSID: string;
  3. name: string;
  4. handle: string|null;
  5. thumbnailUrl: string|null;
  6. subscriberCount: number;
  7. isLive: boolean;
  8. viewerCount: number;
  9. videoId: string|null;
  10. // 클라이언트 내부용 — 서버가 반환한 random sort 순서를 유지하기 위한 stable index
  11. // (SignalR 업데이트로 isLive 가 바뀌어도 offline 채널의 랜덤 순서가 출렁이지 않도록 고정)
  12. _offlineRank?: number;
  13. }
  14. export interface ChannelStatusUpdate {
  15. channelSID: string;
  16. isLive: boolean;
  17. viewerCount: number;
  18. videoId: string|null;
  19. }
  20. export interface ChannelDetail {
  21. memberID: number;
  22. channelSID: string;
  23. memberSID: string;
  24. name: string;
  25. handle: string|null;
  26. youTubeUrl: string;
  27. thumbnailUrl: string|null;
  28. bannerUrl: string|null;
  29. description: string|null;
  30. subscriberCount: number;
  31. videoCount: number;
  32. isVerified: boolean;
  33. isLive: boolean;
  34. videoId: string|null;
  35. liveTitle: string|null;
  36. viewerCount: number;
  37. }