@mcsb/api / Exports / HypixelResources
Class: HypixelResources
Interface for fetching resource endpoints from the Hypixel API. Resources are data returned by the API which do not require an API key to fetch and change very infrequently.
Unlike HypixelAPI and MojangAPI, this implementation of BaseAPI fetches all resources immediately, instead of waiting until you request them. Additionally, resources are refreshed at an interval, regardless of whether you are using them or not. This interval can be changed by HypixelResourcesOptions.refreshInterval. This is independent of the HttpClient cache policy. Thus, if your HttpClient cache returns the same value, nothing changes.
Hierarchy
BaseAPI<HypixelResourcesOptions>↳
HypixelResources
Table of contents
Properties
Accessors
- achievements
- challenges
- companionRarities
- companions
- flattenedQuests
- games
- guildAchievements
- petRarities
- pets
- quests
- skyBlockBingo
- skyBlockCollections
- skyBlockCurrentElection
- skyBlockCurrentMayor
- skyBlockItems
- skyBlockSkills
Methods
- destroy
- fetchAchievements
- fetchChallenges
- fetchCompanionRarities
- fetchCompanions
- fetchCurrentSkyBlockElection
- fetchCurrentSkyBlockMayor
- fetchGames
- fetchGuildAchievements
- fetchPetRarities
- fetchPets
- fetchQuests
- fetchSkyBlockBingo
- fetchSkyBlockCollections
- fetchSkyBlockItems
- fetchSkyBlockSkills
- isReady
- rawRequest
- refresh
- request
- create
Properties
options
• Protected Readonly options: Readonly<{ deferPolicy: null | IDeferPolicy<Response> ; httpClient: HttpClient ; refreshInterval: number }>
The options provided to the constructor, parsed by parseOptions.
Inherited from
Defined in
packages/api/src/BaseAPI.ts:127
Accessors
achievements
• get achievements(): Readonly<Record<string, { one_time: Readonly<Record<string, { name: string; description: string; legacy: boolean; points: number; gamePercentUnlocked: number; globalPercentUnlocked: number; secret: boolean; }>> ; tiered: Readonly<Record<string, Readonly<{ name: string; tiers: readonly Readonly<{ tier: number; amount: number; points: number; }>[]; description: string; }>>> ; total_legacy_points: number ; total_points: number }>>
Returns
Readonly<Record<string, { one_time: Readonly<Record<string, { name: string; description: string; legacy: boolean; points: number; gamePercentUnlocked: number; globalPercentUnlocked: number; secret: boolean; }>> ; tiered: Readonly<Record<string, Readonly<{ name: string; tiers: readonly Readonly<{ tier: number; amount: number; points: number; }>[]; description: string; }>>> ; total_legacy_points: number ; total_points: number }>>
Defined in
packages/api/src/HypixelResources.ts:230
challenges
• get challenges(): Readonly<Record<string, Readonly<{ id: string ; name: string ; rewards: readonly Readonly<{ type: string; amount: number; }>[] }>[]>>
Returns
Readonly<Record<string, Readonly<{ id: string ; name: string ; rewards: readonly Readonly<{ type: string; amount: number; }>[] }>[]>>
Defined in
packages/api/src/HypixelResources.ts:237
companionRarities
• get companionRarities(): readonly { color: "BLACK" | "DARK_BLUE" | "DARK_GREEN" | "DARK_AQUA" | "DARK_RED" | "DARK_PURPLE" | "GOLD" | "GRAY" | "DARK_GRAY" | "BLUE" | "GREEN" | "AQUA" | "RED" | "LIGHT_PURPLE" | "YELLOW" | "WHITE" | "OBFUSCATED" | "BOLD" | "STRIKE" | "UNDERLINE" | "ITALIC" | "RESET" = ZodEnumMinecraftFormatting; name: string }[]
Returns
readonly { color: "BLACK" | "DARK_BLUE" | "DARK_GREEN" | "DARK_AQUA" | "DARK_RED" | "DARK_PURPLE" | "GOLD" | "GRAY" | "DARK_GRAY" | "BLUE" | "GREEN" | "AQUA" | "RED" | "LIGHT_PURPLE" | "YELLOW" | "WHITE" | "OBFUSCATED" | "BOLD" | "STRIKE" | "UNDERLINE" | "ITALIC" | "RESET" = ZodEnumMinecraftFormatting; name: string }[]
Defined in
packages/api/src/HypixelResources.ts:287
companions
• get companions(): readonly { key: string ; name: string ; package: string ; rarity: null | string }[]
Returns
readonly { key: string ; name: string ; package: string ; rarity: null | string }[]
Defined in
packages/api/src/HypixelResources.ts:280
flattenedQuests
• get flattenedQuests(): Readonly<Record<string, { id: string ; name: string ; objectives: readonly Readonly<{ type: string; id: string; integer?: number | null | undefined; }>[] ; requirements: readonly Readonly<{ type: string; }>[] ; rewards: readonly Readonly<{ type: string; amount?: number | null | undefined; package?: string | null | undefined; }>[] }>>
Returns
Readonly<Record<string, { id: string ; name: string ; objectives: readonly Readonly<{ type: string; id: string; integer?: number | null | undefined; }>[] ; requirements: readonly Readonly<{ type: string; }>[] ; rewards: readonly Readonly<{ type: string; amount?: number | null | undefined; package?: string | null | undefined; }>[] }>>
Defined in
packages/api/src/HypixelResources.ts:251
games
• get games(): Readonly<Record<string, HypixelGame>>
Returns
Readonly<Record<string, HypixelGame>>
Defined in
packages/api/src/HypixelResources.ts:223
guildAchievements
• get guildAchievements(): Readonly<objectOutputType<{ cause: ZodOptional<ZodNullable<ZodString>> ; global: ZodOptional<ZodNullable<ZodBoolean>> ; lastUpdated: ZodReadonly<ZodOptional<ZodNullable<ZodEffects<ZodType<UnixDate, ZodTypeDef, UnixDate>, UnixDate, UnixDate>>>> ; one_time: ZodReadonly<ZodDefault<ZodRecord<ZodString, ZodUnknown>>> ; success: ZodBoolean ; throttle: ZodOptional<ZodNullable<ZodBoolean>> ; tiered: ZodReadonly<ZodDefault<ZodRecord<ZodString, ZodObject<{ description: ZodString ; name: ZodString ; tiers: ZodReadonly<ZodDefault<ZodArray<ZodReadonly<ZodObject<{ amount: ZodNumber ; tier: ZodNumber }, "strip", ZodTypeAny, { amount: number ; tier: number }, { amount: number ; tier: number }>>, "many">>> }, "strip", ZodTypeAny, { description: string ; name: string ; tiers: readonly Readonly<{ tier: number; amount: number; }>[] }, { description: string ; name: string ; tiers?: { tier: number; amount: number; }[] }>>>> }, ZodTypeAny, "passthrough">>
Returns
Readonly<objectOutputType<{ cause: ZodOptional<ZodNullable<ZodString>> ; global: ZodOptional<ZodNullable<ZodBoolean>> ; lastUpdated: ZodReadonly<ZodOptional<ZodNullable<ZodEffects<ZodType<UnixDate, ZodTypeDef, UnixDate>, UnixDate, UnixDate>>>> ; one_time: ZodReadonly<ZodDefault<ZodRecord<ZodString, ZodUnknown>>> ; success: ZodBoolean ; throttle: ZodOptional<ZodNullable<ZodBoolean>> ; tiered: ZodReadonly<ZodDefault<ZodRecord<ZodString, ZodObject<{ description: ZodString ; name: ZodString ; tiers: ZodReadonly<ZodDefault<ZodArray<ZodReadonly<ZodObject<{ amount: ZodNumber ; tier: ZodNumber }, "strip", ZodTypeAny, { amount: number ; tier: number }, { amount: number ; tier: number }>>, "many">>> }, "strip", ZodTypeAny, { description: string ; name: string ; tiers: readonly Readonly<{ tier: number; amount: number; }>[] }, { description: string ; name: string ; tiers?: { tier: number; amount: number; }[] }>>>> }, ZodTypeAny, "passthrough">>
Defined in
packages/api/src/HypixelResources.ts:259
petRarities
• get petRarities(): readonly { color: "BLACK" | "DARK_BLUE" | "DARK_GREEN" | "DARK_AQUA" | "DARK_RED" | "DARK_PURPLE" | "GOLD" | "GRAY" | "DARK_GRAY" | "BLUE" | "GREEN" | "AQUA" | "RED" | "LIGHT_PURPLE" | "YELLOW" | "WHITE" | "OBFUSCATED" | "BOLD" | "STRIKE" | "UNDERLINE" | "ITALIC" | "RESET" = ZodEnumMinecraftFormatting; name: string }[]
Returns
readonly { color: "BLACK" | "DARK_BLUE" | "DARK_GREEN" | "DARK_AQUA" | "DARK_RED" | "DARK_PURPLE" | "GOLD" | "GRAY" | "DARK_GRAY" | "BLUE" | "GREEN" | "AQUA" | "RED" | "LIGHT_PURPLE" | "YELLOW" | "WHITE" | "OBFUSCATED" | "BOLD" | "STRIKE" | "UNDERLINE" | "ITALIC" | "RESET" = ZodEnumMinecraftFormatting; name: string }[]
Defined in
packages/api/src/HypixelResources.ts:273
pets
• get pets(): readonly { key: string ; name: string ; package: string ; rarity: null | string }[]
Returns
readonly { key: string ; name: string ; package: string ; rarity: null | string }[]
Defined in
packages/api/src/HypixelResources.ts:266
quests
• get quests(): Readonly<Record<string, { id: string ; name: string ; objectives: readonly Readonly<{ type: string; id: string; integer?: number | null | undefined; }>[] ; requirements: readonly Readonly<{ type: string; }>[] ; rewards: readonly Readonly<{ type: string; amount?: number | null | undefined; package?: string | null | undefined; }>[] }[]>>
Returns
Readonly<Record<string, { id: string ; name: string ; objectives: readonly Readonly<{ type: string; id: string; integer?: number | null | undefined; }>[] ; requirements: readonly Readonly<{ type: string; }>[] ; rewards: readonly Readonly<{ type: string; amount?: number | null | undefined; package?: string | null | undefined; }>[] }[]>>
Defined in
packages/api/src/HypixelResources.ts:244
skyBlockBingo
• get skyBlockBingo(): null | Readonly<objectOutputType<{ cause: ZodOptional<ZodNullable<ZodString>> ; global: ZodOptional<ZodNullable<ZodBoolean>> ; goals: ZodDefault<ZodArray<ZodObject<{ id: ZodString ; lore: ZodOptional<ZodNullable<ZodString>> ; name: ZodString ; progress: ZodOptional<ZodNullable<ZodNumber>> ; requiredAmount: ZodOptional<ZodNullable<ZodNumber>> ; tiers: ZodOptional<ZodNullable<ZodArray<ZodNumber, "many">>> }, "strip", ZodTypeAny, { id: string ; lore?: null | string ; name: string ; progress?: null | number ; requiredAmount?: null | number ; tiers?: null | number[] }, { id: string ; lore?: null | string ; name: string ; progress?: null | number ; requiredAmount?: null | number ; tiers?: null | number[] }>, "many">> ; id: ZodNumber ; lastUpdated: ZodReadonly<ZodOptional<ZodNullable<ZodEffects<ZodType<UnixDate, ZodTypeDef, UnixDate>, UnixDate, UnixDate>>>> ; success: ZodBoolean ; throttle: ZodOptional<ZodNullable<ZodBoolean>> }, ZodTypeAny, "passthrough">>
Returns
null | Readonly<objectOutputType<{ cause: ZodOptional<ZodNullable<ZodString>> ; global: ZodOptional<ZodNullable<ZodBoolean>> ; goals: ZodDefault<ZodArray<ZodObject<{ id: ZodString ; lore: ZodOptional<ZodNullable<ZodString>> ; name: ZodString ; progress: ZodOptional<ZodNullable<ZodNumber>> ; requiredAmount: ZodOptional<ZodNullable<ZodNumber>> ; tiers: ZodOptional<ZodNullable<ZodArray<ZodNumber, "many">>> }, "strip", ZodTypeAny, { id: string ; lore?: null | string ; name: string ; progress?: null | number ; requiredAmount?: null | number ; tiers?: null | number[] }, { id: string ; lore?: null | string ; name: string ; progress?: null | number ; requiredAmount?: null | number ; tiers?: null | number[] }>, "many">> ; id: ZodNumber ; lastUpdated: ZodReadonly<ZodOptional<ZodNullable<ZodEffects<ZodType<UnixDate, ZodTypeDef, UnixDate>, UnixDate, UnixDate>>>> ; success: ZodBoolean ; throttle: ZodOptional<ZodNullable<ZodBoolean>> }, ZodTypeAny, "passthrough">>
Defined in
packages/api/src/HypixelResources.ts:323
skyBlockCollections
• get skyBlockCollections(): Readonly<Record<string, Readonly<{ items: Readonly<Record<string, Readonly<{ name: string; tiers: readonly Readonly<{ tier: number; amountRequired: number; unlocks: readonly string[]; }>[]; maxTiers: number; }>>> ; name: string }>>>
Returns
Readonly<Record<string, Readonly<{ items: Readonly<Record<string, Readonly<{ name: string; tiers: readonly Readonly<{ tier: number; amountRequired: number; unlocks: readonly string[]; }>[]; maxTiers: number; }>>> ; name: string }>>>
Defined in
packages/api/src/HypixelResources.ts:294
skyBlockCurrentElection
• get skyBlockCurrentElection(): Readonly<undefined | null | { candidates: readonly { key: string ; name: string ; perks: readonly Readonly<{ name: string; description: string; }>[] ; votes: number }[] ; year: number }>
Returns
Readonly<undefined | null | { candidates: readonly { key: string ; name: string ; perks: readonly Readonly<{ name: string; description: string; }>[] ; votes: number }[] ; year: number }>
Defined in
packages/api/src/HypixelResources.ts:319
skyBlockCurrentMayor
• get skyBlockCurrentMayor(): null | Readonly<{ election: null | { candidates: readonly { name: string; key: string; perks: readonly Readonly<{ name: string; description: string; }>[]; votes: number; }[] ; year: number } ; key: string ; name: string ; perks: readonly Readonly<{ description: string ; name: string }>[] }>
Returns
null | Readonly<{ election: null | { candidates: readonly { name: string; key: string; perks: readonly Readonly<{ name: string; description: string; }>[]; votes: number; }[] ; year: number } ; key: string ; name: string ; perks: readonly Readonly<{ description: string ; name: string }>[] }>
Defined in
packages/api/src/HypixelResources.ts:315
skyBlockItems
• get skyBlockItems(): readonly { ability_damage_scaling?: null | number ; can_have_attributes?: null | boolean ; cannot_reforge?: null | boolean ; catacombs_requirements?: null | readonly Readonly<{ type: string; dungeon_type?: string | null | undefined; level?: number | null | undefined; }>[] ; category?: null | string ; color?: null | string ; crystal?: null | string ; dungeon_item?: null | boolean ; dungeon_item_conversion_cost?: null | Readonly<{ essence_type: string; amount: number; }> ; durability?: null | number ; enchantments?: null | Readonly<Record<string, number>> ; furniture?: null | string ; gear_score?: null | number ; gemstone_slots?: null | readonly Readonly<{ slot_type: string; costs: readonly Readonly<{ type: string; coins?: number | null | undefined; item_id?: string | null | undefined; amount?: number | null | undefined; }>[]; }>[] ; generator?: null | string ; generator_tier?: null | number ; glowing?: null | boolean ; hide_from_viewrecipe_command?: null | boolean ; id: string ; item_specific?: null | Readonly<Record<string, unknown>> ; lose_motes_value_on_transfer?: null | boolean ; material: string ; motes_sell_price?: null | number ; museum?: null | boolean ; name: string ; npc_sell_price?: null | number ; origin?: null | string ; prestige?: null | Readonly<{ item_id: string; costs: readonly Readonly<{ type: string; item_id?: string | null | undefined; essence_type?: string | null | undefined; amount?: number | null | undefined; }>[]; }> ; private_island?: null | string ; rarity_salvageable?: null | boolean ; requirements?: null | readonly Readonly<{ type: string; skill?: string | null | undefined; level?: number | null | undefined; reward?: string | null | undefined; faction?: string | null | undefined; reputation?: number | null | undefined; ... 6 more ...; minimum_age?: number | ... 1 more ... | undefined; }>[] ; rift_transferrable?: null | boolean ; salvageable_from_recipe?: null | boolean ; salvages?: null | readonly Readonly<{ type: string; essence_type?: string | null | undefined; amount?: number | null | undefined; }>[] ; skin?: null | string ; soulbound?: null | string ; stats?: null | Readonly<Record<string, unknown>> ; sword_type?: null | string ; tier?: null | string ; tiered_stats?: null | Readonly<Record<string, readonly number[]>> ; unstackable?: null | boolean ; upgrade_costs?: null | readonly (readonly { type: string; item_id?: string | null | undefined; essence_type?: string | null | undefined; amount?: number | null | undefined; }[])[] }[]
Returns
readonly { ability_damage_scaling?: null | number ; can_have_attributes?: null | boolean ; cannot_reforge?: null | boolean ; catacombs_requirements?: null | readonly Readonly<{ type: string; dungeon_type?: string | null | undefined; level?: number | null | undefined; }>[] ; category?: null | string ; color?: null | string ; crystal?: null | string ; dungeon_item?: null | boolean ; dungeon_item_conversion_cost?: null | Readonly<{ essence_type: string; amount: number; }> ; durability?: null | number ; enchantments?: null | Readonly<Record<string, number>> ; furniture?: null | string ; gear_score?: null | number ; gemstone_slots?: null | readonly Readonly<{ slot_type: string; costs: readonly Readonly<{ type: string; coins?: number | null | undefined; item_id?: string | null | undefined; amount?: number | null | undefined; }>[]; }>[] ; generator?: null | string ; generator_tier?: null | number ; glowing?: null | boolean ; hide_from_viewrecipe_command?: null | boolean ; id: string ; item_specific?: null | Readonly<Record<string, unknown>> ; lose_motes_value_on_transfer?: null | boolean ; material: string ; motes_sell_price?: null | number ; museum?: null | boolean ; name: string ; npc_sell_price?: null | number ; origin?: null | string ; prestige?: null | Readonly<{ item_id: string; costs: readonly Readonly<{ type: string; item_id?: string | null | undefined; essence_type?: string | null | undefined; amount?: number | null | undefined; }>[]; }> ; private_island?: null | string ; rarity_salvageable?: null | boolean ; requirements?: null | readonly Readonly<{ type: string; skill?: string | null | undefined; level?: number | null | undefined; reward?: string | null | undefined; faction?: string | null | undefined; reputation?: number | null | undefined; ... 6 more ...; minimum_age?: number | ... 1 more ... | undefined; }>[] ; rift_transferrable?: null | boolean ; salvageable_from_recipe?: null | boolean ; salvages?: null | readonly Readonly<{ type: string; essence_type?: string | null | undefined; amount?: number | null | undefined; }>[] ; skin?: null | string ; soulbound?: null | string ; stats?: null | Readonly<Record<string, unknown>> ; sword_type?: null | string ; tier?: null | string ; tiered_stats?: null | Readonly<Record<string, readonly number[]>> ; unstackable?: null | boolean ; upgrade_costs?: null | readonly (readonly { type: string; item_id?: string | null | undefined; essence_type?: string | null | undefined; amount?: number | null | undefined; }[])[] }[]
Defined in
packages/api/src/HypixelResources.ts:308
skyBlockSkills
• get skyBlockSkills(): Readonly<Record<string, Readonly<{ description: string ; levels: readonly Readonly<{ unlocks: readonly string[]; level: number; totalExpRequired: number; }>[] ; maxLevel: number ; name: string } & { getCollection: (this: { description: string ; levels: readonly Readonly<{ unlocks: readonly string[]; level: number; totalExpRequired: number; }>[] ; maxLevel: number ; name: string }) => Readonly<{ items: Readonly<Record<string, Readonly<{ name: string; tiers: readonly Readonly<{ tier: number; amountRequired: number; unlocks: readonly string[]; }>[]; maxTiers: number; }>>> ; name: string }> }>>>
Returns
Readonly<Record<string, Readonly<{ description: string ; levels: readonly Readonly<{ unlocks: readonly string[]; level: number; totalExpRequired: number; }>[] ; maxLevel: number ; name: string } & { getCollection: (this: { description: string ; levels: readonly Readonly<{ unlocks: readonly string[]; level: number; totalExpRequired: number; }>[] ; maxLevel: number ; name: string }) => Readonly<{ items: Readonly<Record<string, Readonly<{ name: string; tiers: readonly Readonly<{ tier: number; amountRequired: number; unlocks: readonly string[]; }>[]; maxTiers: number; }>>> ; name: string }> }>>>
Defined in
packages/api/src/HypixelResources.ts:301
Methods
destroy
▸ destroy(): void
Shut down this HypixelResources by shutting down the HttpClient and stopping the resource refreshing interval.
Returns
void
Overrides
Defined in
packages/api/src/HypixelResources.ts:188
fetchAchievements
▸ Protected fetchAchievements(raw?): Promise<RawResponse>
Parameters
| Name | Type |
|---|---|
raw? | true |
Returns
Promise<RawResponse>
Defined in
packages/api/src/HypixelResources.ts:344
fetchChallenges
▸ Protected fetchChallenges(raw?): Promise<RawResponse>
Parameters
| Name | Type |
|---|---|
raw? | true |
Returns
Promise<RawResponse>
Defined in
packages/api/src/HypixelResources.ts:355
fetchCompanionRarities
▸ Protected fetchCompanionRarities(raw?): Promise<RawResponse>
Parameters
| Name | Type |
|---|---|
raw? | true |
Returns
Promise<RawResponse>
Defined in
packages/api/src/HypixelResources.ts:421
fetchCompanions
▸ Protected fetchCompanions(raw?): Promise<RawResponse>
Parameters
| Name | Type |
|---|---|
raw? | true |
Returns
Promise<RawResponse>
Defined in
packages/api/src/HypixelResources.ts:410
fetchCurrentSkyBlockElection
▸ Protected fetchCurrentSkyBlockElection(raw?): Promise<RawResponse>
Parameters
| Name | Type |
|---|---|
raw? | true |
Returns
Promise<RawResponse>
Defined in
packages/api/src/HypixelResources.ts:476
fetchCurrentSkyBlockMayor
▸ Protected fetchCurrentSkyBlockMayor(raw?): Promise<RawResponse>
Parameters
| Name | Type |
|---|---|
raw? | true |
Returns
Promise<RawResponse>
Defined in
packages/api/src/HypixelResources.ts:465
fetchGames
▸ Protected fetchGames(raw?): Promise<RawResponse>
Parameters
| Name | Type |
|---|---|
raw? | true |
Returns
Promise<RawResponse>
Defined in
packages/api/src/HypixelResources.ts:333
fetchGuildAchievements
▸ Protected fetchGuildAchievements(raw?): Promise<RawResponse>
Parameters
| Name | Type |
|---|---|
raw? | true |
Returns
Promise<RawResponse>
Defined in
packages/api/src/HypixelResources.ts:377
fetchPetRarities
▸ Protected fetchPetRarities(raw?): Promise<RawResponse>
Parameters
| Name | Type |
|---|---|
raw? | true |
Returns
Promise<RawResponse>
Defined in
packages/api/src/HypixelResources.ts:399
fetchPets
▸ Protected fetchPets(raw?): Promise<RawResponse>
Parameters
| Name | Type |
|---|---|
raw? | true |
Returns
Promise<RawResponse>
Defined in
packages/api/src/HypixelResources.ts:388
fetchQuests
▸ Protected fetchQuests(raw?): Promise<RawResponse>
Parameters
| Name | Type |
|---|---|
raw? | true |
Returns
Promise<RawResponse>
Defined in
packages/api/src/HypixelResources.ts:366
fetchSkyBlockBingo
▸ Protected fetchSkyBlockBingo(raw?): Promise<RawResponse>
Parameters
| Name | Type |
|---|---|
raw? | true |
Returns
Promise<RawResponse>
Defined in
packages/api/src/HypixelResources.ts:487
fetchSkyBlockCollections
▸ Protected fetchSkyBlockCollections(raw?): Promise<RawResponse>
Parameters
| Name | Type |
|---|---|
raw? | true |
Returns
Promise<RawResponse>
Defined in
packages/api/src/HypixelResources.ts:432
fetchSkyBlockItems
▸ Protected fetchSkyBlockItems(raw?): Promise<RawResponse>
Parameters
| Name | Type |
|---|---|
raw? | true |
Returns
Promise<RawResponse>
Defined in
packages/api/src/HypixelResources.ts:454
fetchSkyBlockSkills
▸ Protected fetchSkyBlockSkills(raw?): Promise<RawResponse>
Parameters
| Name | Type |
|---|---|
raw? | true |
Returns
Promise<RawResponse>
Defined in
packages/api/src/HypixelResources.ts:443
isReady
▸ isReady(): boolean
Returns
boolean
Defined in
packages/api/src/HypixelResources.ts:193
rawRequest
▸ Protected rawRequest(url): Promise<RawResponse>
Send a request to a given URL using this APIs HttpClient provided options. If the HttpClient has a cached response, then that response is returned immediately. Otherwise, we send a new request to the URL. Before sending the request, if an IDeferPolicy was provided to options, the defer policy is polled first.
Parameters
| Name | Type | Description |
|---|---|---|
url | string | The complete URL to send a request to. Relative URLs are not supported. |
Returns
Promise<RawResponse>
A Promise which resolves to a RawResponse from the API.
Throws
Errorif the HTTP request fails
See
Inherited from
Defined in
packages/api/src/BaseAPI.ts:184
refresh
▸ refresh(): Promise<void>
Re-fetch all the resources from the API. This does not bypass the HttpClient cache, so any resources which are still cached in the HttpClient will not change from the client's cached value. The current resource values will remain available until they're overwritten by the incoming response. Each value is overwritten individually, meaning while the returned Promise is still pending, some values may be updated while others aren't.
Returns
Promise<void>
A Promise that resolves when all resources have been refreshed. Some resources may be refreshed before this Promise resolves.
Throws
Errorif the HTTP request to any of the resources fails or is malformed.
Defined in
packages/api/src/HypixelResources.ts:144
request
▸ Protected request<S, V>(path, raw, schema?, mutator?): Promise<RawResponse>
Send an API request to the given URL using the provided HttpClient and IDeferPolicy.
Type parameters
| Name | Type |
|---|---|
S | extends ZodObject<{ cause: ZodOptional<ZodNullable<ZodString>> ; global: ZodOptional<ZodNullable<ZodBoolean>> ; success: ZodBoolean ; throttle: ZodOptional<ZodNullable<ZodBoolean>> }, "passthrough", ZodTypeAny, objectOutputType<{ cause: ZodOptional<ZodNullable<ZodString>> ; global: ZodOptional<ZodNullable<ZodBoolean>> ; success: ZodBoolean ; throttle: ZodOptional<ZodNullable<ZodBoolean>> }, ZodTypeAny, "passthrough">, objectInputType<{ cause: ZodOptional<ZodNullable<ZodString>> ; global: ZodOptional<ZodNullable<ZodBoolean>> ; success: ZodBoolean ; throttle: ZodOptional<ZodNullable<ZodBoolean>> }, ZodTypeAny, "passthrough">> |
V | V |
Parameters
| Name | Type | Description |
|---|---|---|
path | string | URL to send the request to. Relative URLs not supported. |
raw | true | Whether to receive a RawResponse. |
schema? | S | In this overload, this value is unused. - The Zod schema to use to parse the API response. |
mutator? | (input: TypeOf<S>) => V | In this overload, this value is unused. - A function that takes in the schema-parsed response and returns another value. This can also be used to perform additional validation on the response and throw an Error if it fails. |
Returns
Promise<RawResponse>
- If
rawis true, theRawResponsefrom rawRequest is returned. - If
rawisfalseand themutatorargument is undefined, the API response parsed by the provided schema is returned. - If
rawisfalseand amutatorargument is provided, the value returned by the mutator is returned.
Throws
Errorif the HTTP request fails.Errorif the schema parsing fails.
See
Overrides
Defined in
packages/api/src/HypixelResources.ts:164
▸ Protected request<S>(path, raw, schema, mutator): Promise<TypeOf<S>>
Send an API request to the given URL using the provided HttpClient and IDeferPolicy.
Type parameters
| Name | Type |
|---|---|
S | extends ZodObject<{ cause: ZodOptional<ZodNullable<ZodString>> ; global: ZodOptional<ZodNullable<ZodBoolean>> ; success: ZodBoolean ; throttle: ZodOptional<ZodNullable<ZodBoolean>> }, "passthrough", ZodTypeAny, objectOutputType<{ cause: ZodOptional<ZodNullable<ZodString>> ; global: ZodOptional<ZodNullable<ZodBoolean>> ; success: ZodBoolean ; throttle: ZodOptional<ZodNullable<ZodBoolean>> }, ZodTypeAny, "passthrough">, objectInputType<{ cause: ZodOptional<ZodNullable<ZodString>> ; global: ZodOptional<ZodNullable<ZodBoolean>> ; success: ZodBoolean ; throttle: ZodOptional<ZodNullable<ZodBoolean>> }, ZodTypeAny, "passthrough">> |
Parameters
| Name | Type | Description |
|---|---|---|
path | string | URL to send the request to. Relative URLs not supported. |
raw | false | Whether to receive a RawResponse. |
schema | S | The Zod schema to use to parse the API response. |
mutator | undefined | In this overload, this value is unused. - A function that takes in the schema-parsed response and returns another value. This can also be used to perform additional validation on the response and throw an Error if it fails. |
Returns
Promise<TypeOf<S>>
- If
rawis true, theRawResponsefrom rawRequest is returned. - If
rawisfalseand themutatorargument is undefined, the API response parsed by the provided schema is returned. - If
rawisfalseand amutatorargument is provided, the value returned by the mutator is returned.
Throws
Errorif the HTTP request fails.Errorif the schema parsing fails.
See
Overrides
Defined in
packages/api/src/HypixelResources.ts:165
▸ Protected request<S, V>(path, raw, schema, mutator): Promise<V>
Send an API request to the given URL using the provided HttpClient and IDeferPolicy.
Type parameters
| Name | Type |
|---|---|
S | extends ZodObject<{ cause: ZodOptional<ZodNullable<ZodString>> ; global: ZodOptional<ZodNullable<ZodBoolean>> ; success: ZodBoolean ; throttle: ZodOptional<ZodNullable<ZodBoolean>> }, "passthrough", ZodTypeAny, objectOutputType<{ cause: ZodOptional<ZodNullable<ZodString>> ; global: ZodOptional<ZodNullable<ZodBoolean>> ; success: ZodBoolean ; throttle: ZodOptional<ZodNullable<ZodBoolean>> }, ZodTypeAny, "passthrough">, objectInputType<{ cause: ZodOptional<ZodNullable<ZodString>> ; global: ZodOptional<ZodNullable<ZodBoolean>> ; success: ZodBoolean ; throttle: ZodOptional<ZodNullable<ZodBoolean>> }, ZodTypeAny, "passthrough">> |
V | V |
Parameters
| Name | Type | Description |
|---|---|---|
path | string | URL to send the request to. Relative URLs not supported. |
raw | false | Whether to receive a RawResponse. |
schema | S | The Zod schema to use to parse the API response. |
mutator | (input: TypeOf<S>) => V | A function that takes in the schema-parsed response and returns another value. This can also be used to perform additional validation on the response and throw an Error if it fails. |
Returns
Promise<V>
- If
rawis true, theRawResponsefrom rawRequest is returned. - If
rawisfalseand themutatorargument is undefined, the API response parsed by the provided schema is returned. - If
rawisfalseand amutatorargument is provided, the value returned by the mutator is returned.
Throws
Errorif the HTTP request fails.Errorif the schema parsing fails.
See
Overrides
Defined in
packages/api/src/HypixelResources.ts:166
create
▸ Static create(root, options?): Promise<HypixelResources>
Create a new instance of HypixelResources. Instead of using this directly, you may want to use ().
Parameters
| Name | Type | Description |
|---|---|---|
root | HypixelAPI | Parent instance of HypixelAPI. |
options? | HypixelResourcesOptions | Options to use when creating the HypixelResources. |
Returns
Promise<HypixelResources>
A Promise that resolves to a new HypixelResources instance. The Promise resolves after all resources have been fetched to avoid a ResourcesNotReadyError.
See
Starboard