guildwars2-ts
Version:
GuildWars 2 API Wrapper in Typescript
857 lines (856 loc) • 46 kB
TypeScript
import { z } from 'zod';
/**
* /v2/traits definition
*/
export declare const TraitsDTO: z.ZodArray<z.ZodObject<{
/** The trait id. */
id: z.ZodNumber;
/** The trait name. */
name: z.ZodString;
/** The trait's icon URL. */
icon: z.ZodString;
/** The trait description. */
description: z.ZodOptional<z.ZodString>;
/** The trait order. */
order: z.ZodOptional<z.ZodNumber>;
/** The id of the specialization this trait belongs to. */
specialization: z.ZodNumber;
/** The trait's tier (Adept, Master, Grandmaster) as a value from 1-3.
* Elite specializations also contain a tier 0 minor trait, describing which weapon the elite specialization gains access to. */
tier: z.ZodNumber;
/** Either Major or Minor depending on the trait's slot.
* Minor traits are the ones given immediately when choosing a specialization. */
slot: z.ZodEnum<{
Major: "Major";
Minor: "Minor";
}>;
/** A list of tooltip facts associated with the trait itself. */
facts: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"AttributeAdjust">;
value: z.ZodNumber;
target: z.ZodString;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Buff">;
status: z.ZodString;
description: z.ZodOptional<z.ZodString>;
apply_count: z.ZodOptional<z.ZodNumber>;
duration: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"BuffArray">;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"BuffConversion">;
source: z.ZodString;
percent: z.ZodNumber;
target: z.ZodString;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"ComboField">;
field_type: z.ZodEnum<{
Light: "Light";
Fire: "Fire";
Ice: "Ice";
Lightning: "Lightning";
Air: "Air";
Water: "Water";
Dark: "Dark";
Poison: "Poison";
Smoke: "Smoke";
Ethereal: "Ethereal";
}>;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"ComboFinisher">;
finisher_type: z.ZodEnum<{
Blast: "Blast";
Leap: "Leap";
Projectile: "Projectile";
Whirl: "Whirl";
}>;
percent: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Duration">;
duration: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Heal">;
hit_count: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"HealingAdjust">;
hit_count: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Damage">;
hit_count: z.ZodNumber;
dmg_multiplier: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Distance">;
distance: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"NoData">;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Number">;
value: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Percent">;
percent: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"PrefixedBuff">;
status: z.ZodOptional<z.ZodString>;
description: z.ZodOptional<z.ZodString>;
apply_count: z.ZodNumber;
duration: z.ZodNumber;
prefix: z.ZodObject<{
text: z.ZodString;
icon: z.ZodURL;
status: z.ZodOptional<z.ZodString>;
description: z.ZodOptional<z.ZodString>;
}, z.core.$strict>;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Radius">;
distance: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Range">;
value: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Recharge">;
value: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"StunBreak">;
value: z.ZodLiteral<true>;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Time">;
duration: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Unblockable">;
value: z.ZodLiteral<true>;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodUndefined;
percent: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>]>>>;
/** A list of additions or changes to tooltip facts where there is interplay between traits. */
traited_facts: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
type: z.ZodLiteral<"AttributeAdjust">;
value: z.ZodNumber;
target: z.ZodString;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Buff">;
status: z.ZodString;
description: z.ZodOptional<z.ZodString>;
apply_count: z.ZodOptional<z.ZodNumber>;
duration: z.ZodOptional<z.ZodNumber>;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"BuffArray">;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"BuffConversion">;
source: z.ZodString;
percent: z.ZodNumber;
target: z.ZodString;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"ComboField">;
field_type: z.ZodEnum<{
Light: "Light";
Fire: "Fire";
Ice: "Ice";
Lightning: "Lightning";
Air: "Air";
Water: "Water";
Dark: "Dark";
Poison: "Poison";
Smoke: "Smoke";
Ethereal: "Ethereal";
}>;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"ComboFinisher">;
finisher_type: z.ZodEnum<{
Blast: "Blast";
Leap: "Leap";
Projectile: "Projectile";
Whirl: "Whirl";
}>;
percent: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Duration">;
duration: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Heal">;
hit_count: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"HealingAdjust">;
hit_count: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Damage">;
hit_count: z.ZodNumber;
dmg_multiplier: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Distance">;
distance: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"NoData">;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Number">;
value: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Percent">;
percent: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"PrefixedBuff">;
status: z.ZodOptional<z.ZodString>;
description: z.ZodOptional<z.ZodString>;
apply_count: z.ZodNumber;
duration: z.ZodNumber;
prefix: z.ZodObject<{
text: z.ZodString;
icon: z.ZodURL;
status: z.ZodOptional<z.ZodString>;
description: z.ZodOptional<z.ZodString>;
}, z.core.$strict>;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Radius">;
distance: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Range">;
value: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Recharge">;
value: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"StunBreak">;
value: z.ZodLiteral<true>;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Time">;
duration: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Unblockable">;
value: z.ZodLiteral<true>;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
/** Life force cost specifically is missing a type field. */
type: z.ZodUndefined;
/** Cost per cast. Life Force ONLY. */
percent: z.ZodOptional<z.ZodNumber>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
/** An arbitrary localized string describing the fact.*/
text: z.ZodOptional<z.ZodString>;
/** A URL to the icon shown with the fact. Not included with all facts.*/
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>]>>>;
/** A list of skills which may be triggered by the trait. */
skills: z.ZodOptional<z.ZodArray<z.ZodObject<{
/** The ID of the skill. */
id: z.ZodNumber;
/** The name of the skill. */
name: z.ZodString;
/** The description of the skill. */
description: z.ZodString;
/** The URL for the icon of the skill. */
icon: z.ZodString;
/** A list of tooltip facts associated with the skill. */
facts: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"AttributeAdjust">;
value: z.ZodNumber;
target: z.ZodString;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Buff">;
status: z.ZodString;
description: z.ZodOptional<z.ZodString>;
apply_count: z.ZodOptional<z.ZodNumber>;
duration: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"BuffArray">;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"BuffConversion">;
source: z.ZodString;
percent: z.ZodNumber;
target: z.ZodString;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"ComboField">;
field_type: z.ZodEnum<{
Light: "Light";
Fire: "Fire";
Ice: "Ice";
Lightning: "Lightning";
Air: "Air";
Water: "Water";
Dark: "Dark";
Poison: "Poison";
Smoke: "Smoke";
Ethereal: "Ethereal";
}>;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"ComboFinisher">;
finisher_type: z.ZodEnum<{
Blast: "Blast";
Leap: "Leap";
Projectile: "Projectile";
Whirl: "Whirl";
}>;
percent: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Duration">;
duration: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Heal">;
hit_count: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"HealingAdjust">;
hit_count: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Damage">;
hit_count: z.ZodNumber;
dmg_multiplier: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Distance">;
distance: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"NoData">;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Number">;
value: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Percent">;
percent: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"PrefixedBuff">;
status: z.ZodOptional<z.ZodString>;
description: z.ZodOptional<z.ZodString>;
apply_count: z.ZodNumber;
duration: z.ZodNumber;
prefix: z.ZodObject<{
text: z.ZodString;
icon: z.ZodURL;
status: z.ZodOptional<z.ZodString>;
description: z.ZodOptional<z.ZodString>;
}, z.core.$strict>;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Radius">;
distance: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Range">;
value: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Recharge">;
value: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"StunBreak">;
value: z.ZodLiteral<true>;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Time">;
duration: z.ZodNumber;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodLiteral<"Unblockable">;
value: z.ZodLiteral<true>;
}, z.core.$strict>, z.ZodObject<{
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
type: z.ZodUndefined;
percent: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>]>>>;
/** A list of additions or changes to tooltip facts where there is interplay between traits. */
traited_facts: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
type: z.ZodLiteral<"AttributeAdjust">;
value: z.ZodNumber;
target: z.ZodString;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Buff">;
status: z.ZodString;
description: z.ZodOptional<z.ZodString>;
apply_count: z.ZodOptional<z.ZodNumber>;
duration: z.ZodOptional<z.ZodNumber>;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"BuffArray">;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"BuffConversion">;
source: z.ZodString;
percent: z.ZodNumber;
target: z.ZodString;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"ComboField">;
field_type: z.ZodEnum<{
Light: "Light";
Fire: "Fire";
Ice: "Ice";
Lightning: "Lightning";
Air: "Air";
Water: "Water";
Dark: "Dark";
Poison: "Poison";
Smoke: "Smoke";
Ethereal: "Ethereal";
}>;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"ComboFinisher">;
finisher_type: z.ZodEnum<{
Blast: "Blast";
Leap: "Leap";
Projectile: "Projectile";
Whirl: "Whirl";
}>;
percent: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Duration">;
duration: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Heal">;
hit_count: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"HealingAdjust">;
hit_count: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Damage">;
hit_count: z.ZodNumber;
dmg_multiplier: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Distance">;
distance: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"NoData">;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Number">;
value: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Percent">;
percent: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"PrefixedBuff">;
status: z.ZodOptional<z.ZodString>;
description: z.ZodOptional<z.ZodString>;
apply_count: z.ZodNumber;
duration: z.ZodNumber;
prefix: z.ZodObject<{
text: z.ZodString;
icon: z.ZodURL;
status: z.ZodOptional<z.ZodString>;
description: z.ZodOptional<z.ZodString>;
}, z.core.$strict>;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Radius">;
distance: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Range">;
value: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Recharge">;
value: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"StunBreak">;
value: z.ZodLiteral<true>;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Time">;
duration: z.ZodNumber;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
type: z.ZodLiteral<"Unblockable">;
value: z.ZodLiteral<true>;
text: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
/** Life force cost specifically is missing a type field. */
type: z.ZodUndefined;
/** Cost per cast. Life Force ONLY. */
percent: z.ZodOptional<z.ZodNumber>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>, z.ZodObject<{
/** An arbitrary localized string describing the fact.*/
text: z.ZodOptional<z.ZodString>;
/** A URL to the icon shown with the fact. Not included with all facts.*/
icon: z.ZodOptional<z.ZodString>;
/** Specifies which trait has to be selected in order for this fact to take effect. */
requires_trait: z.ZodNumber;
/** This specifies the array index of the facts object it will override, if the trait specified in requires_trait is selected.
* If this field is omitted, then the fact contained within this object is to be appended to the existing facts array. */
overrides: z.ZodOptional<z.ZodNumber>;
}, z.core.$strict>]>>>;
/** Skill flags. If present, typically does not contain anything. */
flags: z.ZodArray<z.ZodUnknown>;
/** Skill chat link. */
chat_link: z.ZodString;
/** Trait category. */
categories: z.ZodOptional<z.ZodArray<z.ZodString>>;
}, z.core.$strict>>>;
}, z.core.$strict>>;