Newer
Older
taehui / qwilight-fe / src / wwwAPI.d.ts
@Taehui Taehui on 6 Nov 4 KB 2023-11-06 오후 10:13
export type GetTitleAPI = {
  title: string;
  titleColor: string;
};

export type GetNoteAPI = {
  totalCount: number;
  highestCount: number;
  noteCount: number;
  notes: NoteAPINote[];
};

export type NoteAPINote = {
  noteID: string;
  artist: string;
  title: string;
  genre: string;
  levelText: string;
  level: number;
  highestCount?: number;
  totalCount?: number;
  fittedText?: string;
  wantAvatarID?: string;
  wantAvatarName?: string;
};

export type GetCommentAPI = {
  favor: bool | null;
  totalFavor: number;
  comments: CommentAPIComment[];
};

export type CommentAPIComment = {
  date: number;
  avatarID: string;
  avatarName: string;
  stand: number;
  band: number;
  point: number;
  isP: boolean;
  commentary: string;
  isTargetAvatar: boolean;
  judgmentMode: number;
  hitPointsMode: number;
  isPaused: boolean;
};

export type LevelAPI = {
  levelNote: NoteAPINote[];
  stand: number[];
  point: number[];
  band: number[];
  judgments: number[][];
  autoMode: number[];
  noteSaltMode: number[];
  audioMultiplier: number[];
  faintNoteMode: number[];
  judgmentMode: number[];
  hitPointsMode: number[];
  noteMobilityMode: number[];
  longNoteMode: number[];
  inputFavorMode: number[];
  lowestJudgmentConditionMode: number[];
};

export type GetAvatarAPI = AvatarAPIWantAvatar[] | AvatarAPIAvatar;

export type AvatarAPIWantAvatar = {
  avatarID: string;
  avatarName: string;
  avatarIntro: string;
};

export type AvatarAPIAvatar = {
  avatarID: string;
  avatarName: string;
  avatarIntro: string;
  totalCount: number;
  totalLength: number;
  highestCount: number;
  date: number;
  avatarLevels: number[];
  levels: AvatarAPILevel[];
  avatarAbility5K: number;
  avatarAbility5KClass: number;
  avatarAbility5KPlace: number;
  avatarAbility5KCount: number;
  avatarAbility7K: number;
  avatarAbility7KClass: number;
  avatarAbility7KPlace: number;
  avatarAbility7KCount: number;
  avatarAbility9K: number;
  avatarAbility9KClass: number;
  avatarAbility9KPlace: number;
  avatarAbility9KCount: number;
  lasts: AvatarAPILast[];
  favorites: AvatarAPIFavorite[];
  dateSet: number[];
  dateValues: number[];
  quitStatusValues: number[];
};

export type AvatarAPILevel = {
  levelID: string;
  title: string;
  levelText: string;
  level: string;
  date: number;
};

export type AvatarAPILast = {
  noteID: string;
  noteVariety: number;
  artist: string;
  title: string;
  genre: string;
  levelText: string;
  level: number;
  date: number;
};

export type AvatarAPIFavorite = {
  noteID: string;
  noteVariety: number;
  artist: string;
  title: string;
  genre: string;
  levelText: string;
  level: number;
  totalCount: number;
};

export type GetEtcAPI = {
  totalDateSet: string[];
  totalDateValues: number[];
  signUpDateSet: string[];
  signUpDateValues: number[];
  avatarDateSet: string[];
  avatarDateValues: number[];
  totalNoteFileValues: EtcAPINote[];
  totalTitleValues: EtcAPITitle[];
  totalEdgeValues: EtcAPIEdge[];
  favoriteNoteFileValues: EtcAPINote[];
  favoriteNoteFileAtValues: EtcAPINote[];
  inputModeValues: EtcAPIMode[];
  autoModeValues: EtcAPIMode[];
  noteSaltModeValues: EtcAPIMode[];
  faintNoteModeValues: EtcAPIMode[];
  judgmentModeValues: EtcAPIMode[];
  hitPointsModeValues: EtcAPIMode[];
  noteMobilityModeValues: EtcAPIMode[];
  longNoteModeValues: EtcAPIMode[];
  inputFavorModeValues: EtcAPIMode[];
  noteModifyModeValues: EtcAPIMode[];
  lowestJudgmentConditionModeValues: EtcAPIMode[];
};

export type EtcAPINote = {
  noteID: string;
  title: string;
  artist: string;
  genre: string;
  level: number;
  levelText: string;
  value: number;
};

export type EtcAPITitle = {
  title: string;
  titleColor: string;
  value: number;
};

export type EtcAPIEdge = {
  edge: string;
  value: number;
};

export type EtcAPIMode = {
  mode: number;
  value: number;
};

export type GetWowAPI = {
  totalAvatars: WowAPIAvatar[];
  highestAvatars: WowAPIAvatar[];
  standAvatars: WowAPIAvatar[];
  bandAvatars: WowAPIAvatar[];
  totalAvatarsAt: WowAPIAvatar[];
  highestAvatarsAt: WowAPIAvatar[];
  standAvatarsAt: WowAPIAvatar[];
  bandAvatarsAt: WowAPIAvatar[];
  ability5KAvatars: WowAPIAvatar[];
  ability7KAvatars: WowAPIAvatar[];
  ability9KAvatars: WowAPIAvatar[];
  levelAvatars: WowAPIAvatar[];
};

export type WowAPIAvatar = {
  avatarID: string;
  avatarName: string;
  value: number;
};