@genshin-db/tcg
Version:
Genshin Impact Trading Card Game JSON data with an API for searching the data in all in-game languages.
57 lines (55 loc) • 1.84 kB
TypeScript
declare module "@genshin-db/tcg" {
export interface Talent {
id: number;
name: string;
combat1: CombatTalentDetail;
combat2: CombatTalentDetail;
combatsp?: CombatTalentDetail; // for mona/ayaka
combatju?: CombatTalentDetail; // for ororon
combat3: CombatTalentDetail;
passive1: PassiveTalentDetail;
passive2: PassiveTalentDetail;
passive3?: PassiveTalentDetail; // player character doesn't have a third talent
passive4?: PassiveTalentDetail; // for kokomi
costs: {
"lvl2": Items[];
"lvl3": Items[];
"lvl4": Items[];
"lvl5": Items[];
"lvl6": Items[];
"lvl7": Items[];
"lvl8": Items[];
"lvl9": Items[];
"lvl10": Items[];
}
images?: { // images for talents aren't available yet
filename_combat1: string;
filename_combat2: string;
filename_combatsp?: string; // for mona/ayaka
filename_combatju?: string; // for ororon
filename_combat3: string;
filename_passive1: string;
filename_passive2: string;
filename_passive3?: string; // player character doesn't have a third talent
filename_passive4?: string; // for kokomi's negative crit passive
};
version: string;
}
export interface CombatTalentDetail {
name: string;
descriptionRaw: string;
description: string; // sanitized with removeColorHTML, removeHashtag, replaceGenderM, replaceLayoutPC, replaceNonBreakSpace
flavorText?: string; // no flavortext for combat1 (normal attack). sanitized with replaceGenderM, replaceNonBreakSpace
attributes: {
labels: string[];
parameters: {
[key: string]: number[];
};
};
}
export interface PassiveTalentDetail {
name: string;
descriptionRaw: string;
description: string; // sanitized with removeColorHTML, removeHashtag, replaceGenderM, replaceLayoutPC, replaceNonBreakSpace
}
}