TwitchClone / src / types / roomData.d.ts
roomData.d.ts
Raw
import { Content } from "@prisma/client";
import { UserSchema } from "./user";

// selectedVideoId?: string;
// assetId?: string;
// assetUrl?: string;
// playbackId?: string;
// playbakUrl?: string;
// streamerId?: string;
// streamerInfo?: {
// assetData?: {
// streamContent?: Content[];
export type RoomDataSchema = {
  userData: UserSchema;
  roomId?: string;
  selectedVideoId?: string;
  assetId?: string;
  assetUrl?: string;
  playbackId?: string;
  playbakUrl?: string;
  streamerId?: string;
  streamerInfo?: User & {
    videos: Content[];
    following: UserFollows[];
    followers: UserFollows[];
  };
  // streamerInfo?: {
  //   id?: string;
  //   // url: string;
  //   // assetId: string;
  //   name?: string;
  //   email?: string;
  //   image?: string;
  //   following?:{
  //     id: string;
  //     followingId: string;
  //     followerId: string;
  //     createdAt: Date;
  //   }[];
  //   followers?:{
  //     id: string;
  //     followingId: string;
  //     followerId: string;
  //     createdAt: Date;
  //   }[];
  // };
  assetData?: {
    id: string;
    createdAt: Date;
    updatedAt: Date;
    roomId: string;
    playbackId: string;
    streamKey: string;
    userId: string;
    status?: string;
  };
  streamContent?: Content[];
  setUserProfile_: React.Dispatch<React.SetStateAction<UserSchema | null>>;
  // id: string,
  // name: string,
  // description: string,
  // image: string,
  // createdAt: string,
  // updatedAt: string,
  // userId: string,
};