Newer
Older
taehui / qwilight-fe / src / site / Site.d.ts
@Taehui Taehui on 6 Nov 1 KB 2023-11-06 오후 10:13
import { TriggerEvent } from "react-contexify";

export type Avatar = {
  avatarID: string;
  avatarName: string;
  avatarConfigure: number;
  isSiteHand: boolean;
  isMe: boolean;
  isValve: boolean;
  isAudioInput: boolean;
};

export type Site = {
  siteID: string;
  siteName: string;
  siteConfigure: number;
  hasCipher: boolean;
  avatarCount: number;
};

export type SiteYell = {
  avatarID?: string;
  avatarName?: string;
  siteYellVariety: ?string;
  date?: string;
  siteYell?: string | CommentSiteYell | InviteSiteYell | TVSiteYell;
  siteYellID: number;
};

export type CommentSiteYell = {
  avatarID: string;
  avatarName: string;
  title: string;
  artist: string;
  genre: string;
  level: number;
  levelText: string;
  stand: number;
  hitPointsMode: number;
};

export type InviteSiteYell = {
  siteID: string;
  siteName: string;
  avatarName: string;
};

export type TVSiteYell = {
  href: string;
  title: string;
  text: string;
};

export type SiteView = {
  siteID: string;
  isEditable: boolean;
  isNew: boolean;
  wasNotify: boolean;
  siteNotify: string;
  siteName: string;
  isNetMode: boolean;
  avatars: Avatar[];
  siteHand: string;
  situationValue: number;
  siteYells: SiteYell[];
};

export type Data = { eventID: number; text?: string; data?: ArrayBuffer[] };

export type EventHandler = (data: Data) => void;

export type CloseEventHandler = () => void;

export type OnAvatarInput = (e: TriggerEvent, avatarID: string) => void;

export type OnSiteYellInput = (e: TriggerEvent, avatarID: string) => void;

export type SiteViewHandler = (siteView: SiteView) => void;