bungie-net-core
Version:
An easy way to interact with the Bungie.net API
144 lines (143 loc) • 6.05 kB
TypeScript
/**
* Bungie.Net API
* These endpoints constitute the functionality exposed by Bungie.net, both for more traditional website functionality and for connectivity to Bungie video games and their related functionality.
*
* Contact: support@bungie.com
*
* NOTE: This class is auto generated by the bungie-net-core code generator program
* Repository: {@link https://github.com/owens1127/bungie-net-core}
* Do not edit these files manually.
*/
import { BungieMembershipType } from '../../../BungieMembershipType';
import { DestinyRace } from '../../DestinyRace';
import { DestinyClass } from '../../DestinyClass';
import { DestinyGender } from '../../DestinyGender';
import { DestinyColor } from '../../Misc/DestinyColor';
import { DestinyProgression } from '../../DestinyProgression';
/**
* This component contains base properties of the character. You'll probably want
* to always request this component, but hey you do you.
* @see {@link https://bungie-net.github.io/#/components/schemas/Destiny.Entities.Characters.DestinyCharacterComponent}
*/
export interface DestinyCharacterComponent {
/**
* Every Destiny Profile has a membershipId. This is provided on the character as
* well for convenience.
*/
readonly membershipId: string;
/**
* membershipType tells you the platform on which the character plays. Examine the
* BungieMembershipType enumeration for possible values.
*/
readonly membershipType: BungieMembershipType;
/** The unique identifier for the character. */
readonly characterId: string;
/** The last date that the user played Destiny. */
readonly dateLastPlayed: string;
/** If the user is currently playing, this is how long they've been playing. */
readonly minutesPlayedThisSession: string;
/**
* If this value is 525,600, then they played Destiny for a year. Or they're a very
* dedicated Rent fan. Note that this includes idle time, not just time spent
* actually in activities shooting things.
*/
readonly minutesPlayedTotal: string;
/**
* The user's calculated "Light Level". Light level is an indicator of your power
* that mostly matters in the end game, once you've reached the maximum character
* level: it's a level that's dependent on the average Attack/Defense power of your
* items.
*/
readonly light: number;
/**
* Your character's stats, such as Agility, Resilience, etc... *not* historical
* stats.
*
* You'll have to call a different endpoint for those.
*/
readonly stats: {
[key: number]: number;
};
/**
* Use this hash to look up the character's DestinyRaceDefinition. Mapped to
* DestinyRaceDefinition in the manifest.
*/
readonly raceHash: number;
/**
* Use this hash to look up the character's DestinyGenderDefinition. Mapped to
* DestinyGenderDefinition in the manifest.
*/
readonly genderHash: number;
/**
* Use this hash to look up the character's DestinyClassDefinition. Mapped to
* DestinyClassDefinition in the manifest.
*/
readonly classHash: number;
/**
* Mostly for historical purposes at this point, this is an enumeration for the
* character's race.
*
* It'll be preferable in the general case to look up the related definition: but
* for some people this was too convenient to remove.
*/
readonly raceType: DestinyRace;
/**
* Mostly for historical purposes at this point, this is an enumeration for the
* character's class.
*
* It'll be preferable in the general case to look up the related definition: but
* for some people this was too convenient to remove.
*/
readonly classType: DestinyClass;
/**
* Mostly for historical purposes at this point, this is an enumeration for the
* character's Gender.
*
* It'll be preferable in the general case to look up the related definition: but
* for some people this was too convenient to remove. And yeah, it's an enumeration
* and not a boolean. Fight me.
*/
readonly genderType: DestinyGender;
/**
* A shortcut path to the user's currently equipped emblem image. If you're just
* showing summary info for a user, this is more convenient than examining their
* equipped emblem and looking up the definition.
*/
readonly emblemPath: string;
/**
* A shortcut path to the user's currently equipped emblem background image. If you'
* re just showing summary info for a user, this is more convenient than examining
* their equipped emblem and looking up the definition.
*/
readonly emblemBackgroundPath: string;
/**
* The hash of the currently equipped emblem for the user. Can be used to look up
* the DestinyInventoryItemDefinition. Mapped to DestinyInventoryItemDefinition in
* the manifest.
*/
readonly emblemHash: number;
/**
* A shortcut for getting the background color of the user's currently equipped
* emblem without having to do a DestinyInventoryItemDefinition lookup.
*/
readonly emblemColor: DestinyColor;
/**
* The progression that indicates your character's level. Not their light level,
* but their character level: you know, the thing you max out a couple hours in and
* then ignore for the sake of light level.
*/
readonly levelProgression: DestinyProgression;
/** The "base" level of your character, not accounting for any light level. */
readonly baseCharacterLevel: number;
/**
* A number between 0 and 100, indicating the whole and fractional % remaining to
* get to the next character level.
*/
readonly percentToNextLevel: number;
/**
* If this Character has a title assigned to it, this is the identifier of the
* DestinyRecordDefinition that has that title information. Mapped to
* DestinyRecordDefinition in the manifest.
*/
readonly titleRecordHash?: number;
}