enka-network-api
Version:
Enka-network API wrapper for Genshin Impact.
48 lines (47 loc) • 1.85 kB
TypeScript
import { JsonObject } from "config_file.js";
import { EnkaProfile, User } from "enka-system";
import { Costume } from "./character/Costume";
import { NameCard } from "./material/Material";
import { EnkaClient } from "../client/EnkaClient";
import { ProfilePicture } from "./ProfilePicture";
import { Element } from "./Element";
import { TheaterMode } from "./theater/TheaterMode";
export interface CharacterPreview {
/** Costume whose icon is used for character preview. */
costume: Costume;
level: number;
element: Element | null;
constellation: number | null;
}
export declare class GenshinUser extends User {
readonly enka: EnkaClient;
/** This will be NaN if this GenshinUser is from [EnkaGameAccount](https://enka-system.vercel.app/docs/api/EnkaGameAccount) and [isUidPublic](https://enka-system.vercel.app/docs/api/EnkaGameAccount#isUidPublic) is `false`. */
readonly uid: number;
readonly nickname: string | null;
readonly signature: string | null;
readonly profilePicture: ProfilePicture | null;
readonly showConstellationPreview: boolean;
readonly charactersPreview: CharacterPreview[];
readonly nameCards: NameCard[];
readonly level: number;
readonly worldLevel: number;
readonly profileCard: NameCard;
readonly achievements: number;
readonly maxFriendshipCount: number;
readonly spiralAbyss: {
floor: number;
chamber: number;
stars: number;
} | null;
readonly theater: {
act: number;
stars: number;
mode: TheaterMode;
} | null;
/** This will be -1 if this GenshinUser is from EnkaGameAccount */
readonly ttl: number;
readonly enkaProfile: EnkaProfile | null;
readonly enkaGameAccountHash: string | null;
readonly url: string;
constructor(data: JsonObject, enka: EnkaClient);
}