pokenode-ts 1.20.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +60 -49
- package/lib/index.cjs +17 -0
- package/lib/index.cjs.map +1 -0
- package/lib/index.d.cts +4184 -0
- package/lib/index.d.ts +3585 -3442
- package/lib/index.js +16 -13
- package/lib/index.js.map +1 -0
- package/lib/rolldown-runtime-C_bSAL1r.js +16 -0
- package/package.json +58 -68
- package/lib/index.mjs +0 -14
package/lib/index.d.cts
ADDED
|
@@ -0,0 +1,4184 @@
|
|
|
1
|
+
//#endregion
|
|
2
|
+
//#region src/models/Common/resource.d.ts
|
|
3
|
+
/**
|
|
4
|
+
* Marks what a link points at.
|
|
5
|
+
*
|
|
6
|
+
* A type parameter that appears nowhere in an interface is not inferable, and
|
|
7
|
+
* every instantiation of it stays mutually assignable — so `NamedAPIResource<T>`
|
|
8
|
+
* needs somewhere to carry `T`. This key exists only in the type system: it is
|
|
9
|
+
* never present at runtime, and reading it is not the point.
|
|
10
|
+
*
|
|
11
|
+
* A `unique symbol` is nominal per declaration, and the package emits one set of
|
|
12
|
+
* declarations per module format — so a link crossing the ESM/CJS boundary keeps
|
|
13
|
+
* assigning structurally but stops carrying `T`, and comes back as `unknown`.
|
|
14
|
+
* Documented in `docs/src/clients/utility-client.md`, alongside the same split
|
|
15
|
+
* behind `PokenodeError.isPokenodeError`.
|
|
16
|
+
*/
|
|
17
|
+
declare const RESOURCE_TYPE: unique symbol;
|
|
18
|
+
/**
|
|
19
|
+
* The name and the URL of the referenced resource.
|
|
20
|
+
*
|
|
21
|
+
* @template T - What the URL resolves to. Defaults to `unknown`, so a link whose
|
|
22
|
+
* target has not been declared still type-checks; pass it to
|
|
23
|
+
* {@link UtilityClient.getResourceByUrl} and the resource comes back typed.
|
|
24
|
+
*/
|
|
25
|
+
interface NamedAPIResource<T = unknown> {
|
|
26
|
+
/** The name of the referenced resource. */
|
|
27
|
+
name: string;
|
|
28
|
+
/** The URL of the referenced resource. */
|
|
29
|
+
url: string;
|
|
30
|
+
/** Phantom. Never present at runtime. */
|
|
31
|
+
readonly [RESOURCE_TYPE]?: T;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Calling any API endpoint without a resource ID or name will return a paginated list of available resources for that API.
|
|
35
|
+
* By default, a list "page" will contain up to 20 resources. If you would like to change this just add a 'limit' query parameter
|
|
36
|
+
* to the GET request, e.g. ?=60. You can use 'offset' to move to the next page, e.g. ?limit=60&offset=60.
|
|
37
|
+
*
|
|
38
|
+
* @template T - What the listed links resolve to.
|
|
39
|
+
*/
|
|
40
|
+
interface NamedAPIResourceList<T = unknown> {
|
|
41
|
+
/** The total number of resources available from this API. */
|
|
42
|
+
count: number;
|
|
43
|
+
/** The URL for the next page in the list. */
|
|
44
|
+
next: string | null;
|
|
45
|
+
/** The URL for the previous page in the list. */
|
|
46
|
+
previous: string | null;
|
|
47
|
+
/** A list of named API resources. */
|
|
48
|
+
results: NamedAPIResource<T>[];
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* A URL for another resource in the API.
|
|
52
|
+
*
|
|
53
|
+
* @template T - What the URL resolves to.
|
|
54
|
+
*/
|
|
55
|
+
interface APIResource<T = unknown> {
|
|
56
|
+
/** The URL of the referenced resource. */
|
|
57
|
+
url: string;
|
|
58
|
+
/** Phantom. Never present at runtime. */
|
|
59
|
+
readonly [RESOURCE_TYPE]?: T;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* A paginated list whose entries are identified by URL alone.
|
|
63
|
+
*
|
|
64
|
+
* The `machine`, `contest-effect`, `super-contest-effect`, `evolution-chain` and
|
|
65
|
+
* `characteristic` sections have no names to list, so their entries carry a `url`
|
|
66
|
+
* and nothing else.
|
|
67
|
+
*
|
|
68
|
+
* @template T - What the listed links resolve to.
|
|
69
|
+
*/
|
|
70
|
+
interface APIResourceList<T = unknown> {
|
|
71
|
+
/** The total number of resources available from this API. */
|
|
72
|
+
count: number;
|
|
73
|
+
/** The URL for the next page in the list. */
|
|
74
|
+
next: string | null;
|
|
75
|
+
/** The URL for the previous page in the list. */
|
|
76
|
+
previous: string | null;
|
|
77
|
+
/** A list of unnamed API resources. */
|
|
78
|
+
results: APIResource<T>[];
|
|
79
|
+
}
|
|
80
|
+
//#endregion
|
|
81
|
+
//#region src/models/Common/name.d.ts
|
|
82
|
+
/**
|
|
83
|
+
* The localized name for an API resource in a specific language.
|
|
84
|
+
*/
|
|
85
|
+
interface Name {
|
|
86
|
+
/** The localized name for an API resource in a specific language. */
|
|
87
|
+
name: string;
|
|
88
|
+
/** The language this name is in. */
|
|
89
|
+
language: NamedAPIResource<Language>;
|
|
90
|
+
}
|
|
91
|
+
//#endregion
|
|
92
|
+
//#region src/models/Common/language.d.ts
|
|
93
|
+
/**
|
|
94
|
+
* Languages for translations of API resource information.
|
|
95
|
+
*/
|
|
96
|
+
interface Language {
|
|
97
|
+
/** The identifier for this resource. */
|
|
98
|
+
id: number;
|
|
99
|
+
/** The name for this resource. */
|
|
100
|
+
name: string;
|
|
101
|
+
/** Whether or not the games are published in this language. */
|
|
102
|
+
official: boolean;
|
|
103
|
+
/** The two-letter code of the country where this language is spoken. Note that it is not unique. */
|
|
104
|
+
iso639: string;
|
|
105
|
+
/** The two-letter code of the language. Note that it is not unique. */
|
|
106
|
+
iso3166: string;
|
|
107
|
+
/** The name of this resource listed in different languages. */
|
|
108
|
+
names: Name[];
|
|
109
|
+
}
|
|
110
|
+
//#endregion
|
|
111
|
+
//#region src/models/Common/description.d.ts
|
|
112
|
+
/**
|
|
113
|
+
* The localized description for an API resource in a specific language.
|
|
114
|
+
*/
|
|
115
|
+
interface Description {
|
|
116
|
+
/** The localized description for an API resource in a specific language. */
|
|
117
|
+
description: string;
|
|
118
|
+
/** The language this name is in. */
|
|
119
|
+
language: NamedAPIResource<Language>;
|
|
120
|
+
}
|
|
121
|
+
//#endregion
|
|
122
|
+
//#region src/models/Common/effect.d.ts
|
|
123
|
+
/**
|
|
124
|
+
* The localized effect text for an API resource in a specific language.
|
|
125
|
+
*/
|
|
126
|
+
interface Effect {
|
|
127
|
+
/** The localized effect text for an API resource in a specific language. */
|
|
128
|
+
effect: string;
|
|
129
|
+
/** The language this effect is in. */
|
|
130
|
+
language: NamedAPIResource<Language>;
|
|
131
|
+
}
|
|
132
|
+
//#endregion
|
|
133
|
+
//#region src/models/Encounter/encounter.d.ts
|
|
134
|
+
/**
|
|
135
|
+
* ## Encounter Method
|
|
136
|
+
* Methods by which the player can encounter Pokémon in the wild, e.g., walking in tall grass.
|
|
137
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Wild_Pok%C3%A9mon) for greater detail.
|
|
138
|
+
*/
|
|
139
|
+
interface EncounterMethod {
|
|
140
|
+
/** The identifier for this resource. */
|
|
141
|
+
id: number;
|
|
142
|
+
/** The name for this resource. */
|
|
143
|
+
name: string;
|
|
144
|
+
/** A good value for sorting. */
|
|
145
|
+
order: number;
|
|
146
|
+
/** The name of this resource listed in different languages. */
|
|
147
|
+
names: Name[];
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* ## Encounter Condition
|
|
151
|
+
* Conditions which affect what Pokémon might appear in the wild, e.g., day or night.
|
|
152
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Time).
|
|
153
|
+
*/
|
|
154
|
+
interface EncounterCondition {
|
|
155
|
+
/** The identifier for this resource. */
|
|
156
|
+
id: number;
|
|
157
|
+
/** The name for this resource. */
|
|
158
|
+
name: string;
|
|
159
|
+
/** The name of this resource listed in different languages. */
|
|
160
|
+
names: Name[];
|
|
161
|
+
/** A list of possible values for this encounter condition. */
|
|
162
|
+
values: NamedAPIResource<EncounterConditionValue>[];
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* ## Encounter Condition Value
|
|
166
|
+
* Encounter condition values are the various states that an encounter
|
|
167
|
+
* condition can have, i.e., time of day can be either **day** or **night**
|
|
168
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Time).
|
|
169
|
+
*/
|
|
170
|
+
interface EncounterConditionValue {
|
|
171
|
+
/** The identifier for this resource. */
|
|
172
|
+
id: number;
|
|
173
|
+
/** The name for this resource. */
|
|
174
|
+
name: string;
|
|
175
|
+
/** The condition this encounter condition value pertains to. */
|
|
176
|
+
condition: NamedAPIResource<EncounterCondition>;
|
|
177
|
+
/** The name of this resource listed in different languages. */
|
|
178
|
+
names: Name[];
|
|
179
|
+
}
|
|
180
|
+
//#endregion
|
|
181
|
+
//#region src/models/Common/encounter.d.ts
|
|
182
|
+
/**
|
|
183
|
+
* How the encountered Pokémon itself is generated, where a game constrains it.
|
|
184
|
+
*
|
|
185
|
+
* Only the games that impose such constraints populate this — guaranteed
|
|
186
|
+
* perfect IVs, forced or forbidden shininess, and Legends: Arceus alphas.
|
|
187
|
+
*/
|
|
188
|
+
interface EncounterPokemonDetail {
|
|
189
|
+
/** How many IVs are guaranteed to be perfect, if the game guarantees any. */
|
|
190
|
+
min_perfect_ivs: number | null;
|
|
191
|
+
/** Whether the encountered Pokémon is always shiny. */
|
|
192
|
+
always_shiny: boolean;
|
|
193
|
+
/** Whether the encountered Pokémon can never be shiny. */
|
|
194
|
+
never_shiny: boolean;
|
|
195
|
+
/** Whether the encountered Pokémon is an alpha. */
|
|
196
|
+
is_alpha: boolean;
|
|
197
|
+
}
|
|
198
|
+
/** Information about a Pokémon encounter. */
|
|
199
|
+
interface Encounter {
|
|
200
|
+
/** The lowest level the Pokémon could be encountered at. */
|
|
201
|
+
min_level: number;
|
|
202
|
+
/** The highest level the Pokémon could be encountered at. */
|
|
203
|
+
max_level: number;
|
|
204
|
+
/** A list of condition values that must be in effect for this encounter to occur. */
|
|
205
|
+
condition_values: NamedAPIResource<EncounterConditionValue>[];
|
|
206
|
+
/** Percent chance that this encounter will occur. */
|
|
207
|
+
chance: number;
|
|
208
|
+
/** The method by which this encounter happens. */
|
|
209
|
+
method: NamedAPIResource<EncounterMethod>;
|
|
210
|
+
/** How the encountered Pokémon is generated, where the game constrains it. */
|
|
211
|
+
pokemon_details: EncounterPokemonDetail | null;
|
|
212
|
+
}
|
|
213
|
+
//#endregion
|
|
214
|
+
//#region src/models/Contest/contest.d.ts
|
|
215
|
+
/**
|
|
216
|
+
* ## Contest Type
|
|
217
|
+
* Contest types are categories judges used to weigh a Pokémon's condition in Pokémon contests.
|
|
218
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Contest_condition) for greater detail.
|
|
219
|
+
*/
|
|
220
|
+
interface ContestType {
|
|
221
|
+
/** The identifier for this resource. */
|
|
222
|
+
id: number;
|
|
223
|
+
/** The name for this resource. */
|
|
224
|
+
name: "cool" | "beauty" | "cute" | "smart" | "tough";
|
|
225
|
+
/** The berry flavor that correlates with this contest type. */
|
|
226
|
+
berry_flavor: NamedAPIResource<BerryFlavor>;
|
|
227
|
+
/** The name of this contest type listed in different languages. */
|
|
228
|
+
names: ContestName[];
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* The name of the given contest type.
|
|
232
|
+
*/
|
|
233
|
+
interface ContestName {
|
|
234
|
+
/** The name for this contest. */
|
|
235
|
+
name: string;
|
|
236
|
+
/** The color associated with this contest's name. */
|
|
237
|
+
color: string;
|
|
238
|
+
/** The language that this name is in. */
|
|
239
|
+
language: NamedAPIResource<Language>;
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* Flavor text for a contest effect, in a single language.
|
|
243
|
+
*
|
|
244
|
+
* Deliberately not the shared `FlavorText`: contest effects are not tied to a
|
|
245
|
+
* game, so the API omits the `version` that type carries.
|
|
246
|
+
*/
|
|
247
|
+
interface ContestFlavorText {
|
|
248
|
+
/** The localized flavor text. */
|
|
249
|
+
flavor_text: string;
|
|
250
|
+
/** The language this flavor text is in. */
|
|
251
|
+
language: NamedAPIResource<Language>;
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* ## Contest Effect
|
|
255
|
+
* Contest effects refer to the effects of moves when used in contests.
|
|
256
|
+
*/
|
|
257
|
+
interface ContestEffect {
|
|
258
|
+
/** The identifier for this resource. */
|
|
259
|
+
id: number;
|
|
260
|
+
/** The base number of hearts the user of this move gets. */
|
|
261
|
+
appeal: number;
|
|
262
|
+
/** The base number of hearts the user's opponent loses. */
|
|
263
|
+
jam: number;
|
|
264
|
+
/** The result of this contest effect listed in different languages. */
|
|
265
|
+
effect_entries: Effect[];
|
|
266
|
+
/** The flavor text of this contest effect listed in different languages. */
|
|
267
|
+
flavor_text_entries: ContestFlavorText[];
|
|
268
|
+
}
|
|
269
|
+
/**
|
|
270
|
+
* ## Super Contest Effect
|
|
271
|
+
* Super contest effects refer to the effects of moves when used in super contests.
|
|
272
|
+
* A Pokémon Super Contest is an expanded format of the [Pokémon Contests](https://bulbapedia.bulbagarden.net/wiki/Pok%C3%A9mon_Contest)
|
|
273
|
+
* for the Generation IV games,
|
|
274
|
+
* specifically in [Diamond, Pearl](https://bulbapedia.bulbagarden.net/wiki/Pok%C3%A9mon_Diamond_and_Pearl_Versions),
|
|
275
|
+
* and [Platinum](https://bulbapedia.bulbagarden.net/wiki/Pok%C3%A9mon_Platinum_Version).
|
|
276
|
+
* In it, Pokémon are rated on their appearance and performance, rather than strength.
|
|
277
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Pok%C3%A9mon_Super_Contest).
|
|
278
|
+
*/
|
|
279
|
+
interface SuperContestEffect {
|
|
280
|
+
/** The identifier for this resource. */
|
|
281
|
+
id: number;
|
|
282
|
+
/** The level of appeal this super contest effect has. */
|
|
283
|
+
appeal: number;
|
|
284
|
+
/** The flavor text of this super contest effect listed in different languages. */
|
|
285
|
+
flavor_text_entries: ContestFlavorText[];
|
|
286
|
+
/** A list of moves that have the effect when used in super contests. */
|
|
287
|
+
moves: NamedAPIResource<Move>[];
|
|
288
|
+
}
|
|
289
|
+
//#endregion
|
|
290
|
+
//#region src/models/Currency/currency.d.ts
|
|
291
|
+
/**
|
|
292
|
+
* ## Currency
|
|
293
|
+
* Currencies are what items are bought and sold with. Most items are priced in
|
|
294
|
+
* Pokémon Dollars, but a shop can trade in anything from Battle Points to
|
|
295
|
+
* Volcanic Ash.
|
|
296
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Currency) for greater detail.
|
|
297
|
+
*/
|
|
298
|
+
interface Currency {
|
|
299
|
+
/** The identifier for this resource. */
|
|
300
|
+
id: number;
|
|
301
|
+
/** The name for this resource. */
|
|
302
|
+
name: string;
|
|
303
|
+
/** The name of this currency listed in different languages. */
|
|
304
|
+
names: Name[];
|
|
305
|
+
}
|
|
306
|
+
//#endregion
|
|
307
|
+
//#region src/models/Item/item.d.ts
|
|
308
|
+
/**
|
|
309
|
+
* Sprites used to depict the given item in the game.
|
|
310
|
+
*/
|
|
311
|
+
interface ItemSprites {
|
|
312
|
+
/** The default depiction of this item. */
|
|
313
|
+
default: string;
|
|
314
|
+
}
|
|
315
|
+
/**
|
|
316
|
+
* Pokémon that might be found in the wild holding the given item.
|
|
317
|
+
*/
|
|
318
|
+
interface ItemHolderPokemon {
|
|
319
|
+
/** The Pokémon that holds this item. */
|
|
320
|
+
pokemon: NamedAPIResource<Pokemon>;
|
|
321
|
+
/** The details for the version that this item is held in by the Pokémon. */
|
|
322
|
+
version_details: ItemHolderPokemonVersionDetail[];
|
|
323
|
+
}
|
|
324
|
+
/**
|
|
325
|
+
* The details for the version that the given item is held in by the Pokémon.
|
|
326
|
+
*/
|
|
327
|
+
interface ItemHolderPokemonVersionDetail {
|
|
328
|
+
/** How often this Pokémon holds this item in this version. */
|
|
329
|
+
rarity: number;
|
|
330
|
+
/** The version that this item is held in by the Pokémon. */
|
|
331
|
+
version: NamedAPIResource<Version>;
|
|
332
|
+
}
|
|
333
|
+
/**
|
|
334
|
+
* ## Item Attribute
|
|
335
|
+
* Item attributes define particular aspects of items, e.g. "usable in battle" or "consumable".
|
|
336
|
+
*/
|
|
337
|
+
interface ItemAttribute {
|
|
338
|
+
/** The identifier for this resource. */
|
|
339
|
+
id: number;
|
|
340
|
+
/** The name for this resource. */
|
|
341
|
+
name: string;
|
|
342
|
+
/** A list of items that have this attribute. */
|
|
343
|
+
items: NamedAPIResource<Item>[];
|
|
344
|
+
/** The name of this item attribute listed in different languages. */
|
|
345
|
+
names: Name[];
|
|
346
|
+
/** The description of this item attribute listed in different languages. */
|
|
347
|
+
descriptions: Description[];
|
|
348
|
+
}
|
|
349
|
+
/**
|
|
350
|
+
* ## Item Category
|
|
351
|
+
* Item categories determine where items will be placed in the player's bag.
|
|
352
|
+
*/
|
|
353
|
+
interface ItemCategory {
|
|
354
|
+
/** The identifier for this resource. */
|
|
355
|
+
id: number;
|
|
356
|
+
/** The name for this resource. */
|
|
357
|
+
name: string;
|
|
358
|
+
/** A list of items that are a part of this category. */
|
|
359
|
+
items: NamedAPIResource<Item>[];
|
|
360
|
+
/** The name of this item category listed in different languages. */
|
|
361
|
+
names: Name[];
|
|
362
|
+
/** The pocket items in this category would be put in. */
|
|
363
|
+
pocket: NamedAPIResource<ItemPocket>;
|
|
364
|
+
}
|
|
365
|
+
/**
|
|
366
|
+
* ## Item Fling Effect
|
|
367
|
+
* The various effects of the move "Fling" when used with different items.
|
|
368
|
+
*/
|
|
369
|
+
interface ItemFlingEffect {
|
|
370
|
+
/** The identifier for this resource. */
|
|
371
|
+
id: number;
|
|
372
|
+
/** The name for this resource. */
|
|
373
|
+
name: string;
|
|
374
|
+
/** The result of this fling effect listed in different languages. */
|
|
375
|
+
effect_entries: Effect[];
|
|
376
|
+
/** A list of items that have this fling effect. */
|
|
377
|
+
items: NamedAPIResource<Item>[];
|
|
378
|
+
}
|
|
379
|
+
/**
|
|
380
|
+
* ## Item Pocket
|
|
381
|
+
* Pockets within the player's bag used for storing items by category.
|
|
382
|
+
*/
|
|
383
|
+
interface ItemPocket {
|
|
384
|
+
/** The identifier for this resource. */
|
|
385
|
+
id: number;
|
|
386
|
+
/** The name for this resource. */
|
|
387
|
+
name: string;
|
|
388
|
+
/** A list of item categories that are relevant to this item pocket. */
|
|
389
|
+
categories: NamedAPIResource<ItemCategory>[];
|
|
390
|
+
/** The name of this resource listed in different languages. */
|
|
391
|
+
names: Name[];
|
|
392
|
+
}
|
|
393
|
+
/** The price of an item in a single version group. */
|
|
394
|
+
interface ItemPrice {
|
|
395
|
+
/** The currency used for this price. */
|
|
396
|
+
currency: NamedAPIResource<Currency>;
|
|
397
|
+
/** The purchase price of this item in this version group. Null if the item cannot be purchased. */
|
|
398
|
+
purchase_price: number | null;
|
|
399
|
+
/** The sell price of this item in this version group. Null if the item cannot be sold. */
|
|
400
|
+
sell_price: number | null;
|
|
401
|
+
/** The version group these prices apply to. */
|
|
402
|
+
version_group: NamedAPIResource<VersionGroup>;
|
|
403
|
+
}
|
|
404
|
+
/**
|
|
405
|
+
* ## Item
|
|
406
|
+
* An item is an object in the games which the player can pick up, keep in their bag, and use in some manner.
|
|
407
|
+
* They have various uses, including healing, powering up, helping catch Pokémon, or to access a new area.
|
|
408
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Item).
|
|
409
|
+
*/
|
|
410
|
+
interface Item {
|
|
411
|
+
/** The identifier for this resource. */
|
|
412
|
+
id: number;
|
|
413
|
+
/** The name for this resource. */
|
|
414
|
+
name: string;
|
|
415
|
+
/** The purchase and sell prices of this item for each version group. */
|
|
416
|
+
prices: ItemPrice[];
|
|
417
|
+
/** The power of the move Fling when used with this item. */
|
|
418
|
+
fling_power: number | null;
|
|
419
|
+
/** The effect of the move Fling when used with this item. */
|
|
420
|
+
fling_effect: NamedAPIResource<ItemFlingEffect> | null;
|
|
421
|
+
/** A list of attributes this item has. */
|
|
422
|
+
attributes: NamedAPIResource<ItemAttribute>[];
|
|
423
|
+
/** The category of items this item falls into. */
|
|
424
|
+
category: NamedAPIResource<ItemCategory>;
|
|
425
|
+
/** The effect of this ability listed in different languages. */
|
|
426
|
+
effect_entries: VerboseEffect[];
|
|
427
|
+
/** The flavor text of this ability listed in different languages. */
|
|
428
|
+
flavor_text_entries: VersionGroupFlavorText[];
|
|
429
|
+
/** A list of game indices relevant to this item by generation. */
|
|
430
|
+
game_indices: GenerationGameIndex[];
|
|
431
|
+
/** The name of this item listed in different languages. */
|
|
432
|
+
names: Name[];
|
|
433
|
+
/** A set of sprites used to depict this item in the game. */
|
|
434
|
+
sprites: ItemSprites;
|
|
435
|
+
/** A list of Pokémon that might be found in the wild holding this item. */
|
|
436
|
+
held_by_pokemon: ItemHolderPokemon[];
|
|
437
|
+
/** An evolution chain this item requires to produce a baby during mating. */
|
|
438
|
+
baby_trigger_for: APIResource<EvolutionChain> | null;
|
|
439
|
+
/** A list of the machines related to this item. */
|
|
440
|
+
machines: MachineVersionDetail[];
|
|
441
|
+
}
|
|
442
|
+
//#endregion
|
|
443
|
+
//#region src/models/Location/encounter.d.ts
|
|
444
|
+
/**
|
|
445
|
+
* Method in which Pokémon may be encountered in the given area
|
|
446
|
+
* and how likely the method will occur depending on the version of the game.
|
|
447
|
+
*/
|
|
448
|
+
interface EncounterMethodRate {
|
|
449
|
+
/** The method in which Pokémon may be encountered in an area. */
|
|
450
|
+
encounter_method: NamedAPIResource<EncounterMethod>;
|
|
451
|
+
/** The chance of the encounter to occur on a version of the game. */
|
|
452
|
+
version_details: EncounterVersionDetails[];
|
|
453
|
+
}
|
|
454
|
+
/**
|
|
455
|
+
* The chance of the encounter to occur on a version of the game.
|
|
456
|
+
*/
|
|
457
|
+
interface EncounterVersionDetails {
|
|
458
|
+
/** The chance of an encounter to occur. */
|
|
459
|
+
rate: number;
|
|
460
|
+
/** The version of the game in which the encounter can occur with the given chance. */
|
|
461
|
+
version: NamedAPIResource<Version>;
|
|
462
|
+
}
|
|
463
|
+
/**
|
|
464
|
+
* Describes a pokémon encounter in a given area.
|
|
465
|
+
*/
|
|
466
|
+
interface PokemonEncounter {
|
|
467
|
+
/** The Pokémon being encountered. */
|
|
468
|
+
pokemon: NamedAPIResource<Pokemon>;
|
|
469
|
+
/** A list of versions and encounters with Pokémon that might happen in the referenced location area. */
|
|
470
|
+
version_details: VersionEncounterDetail[];
|
|
471
|
+
}
|
|
472
|
+
//#endregion
|
|
473
|
+
//#region src/models/Location/location.d.ts
|
|
474
|
+
/**
|
|
475
|
+
* ## Location
|
|
476
|
+
* Locations that can be visited within the games.
|
|
477
|
+
* Locations make up sizable portions of regions, like cities or routes.
|
|
478
|
+
* - See the [List of Locations](https://bulbapedia.bulbagarden.net/wiki/List_of_locations_by_name).
|
|
479
|
+
*/
|
|
480
|
+
interface Location {
|
|
481
|
+
/** The identifier for this resource. */
|
|
482
|
+
id: number;
|
|
483
|
+
/** The name for this resource. */
|
|
484
|
+
name: string;
|
|
485
|
+
/** The region this location can be found in. */
|
|
486
|
+
region: NamedAPIResource<Region> | null;
|
|
487
|
+
/** The name of this resource listed in different languages. */
|
|
488
|
+
names: Name[];
|
|
489
|
+
/** A list of game indices relevant to this location by generation. */
|
|
490
|
+
game_indices: GenerationGameIndex[];
|
|
491
|
+
/** Areas that can be found within this location. */
|
|
492
|
+
areas: NamedAPIResource<LocationArea>[];
|
|
493
|
+
}
|
|
494
|
+
/**
|
|
495
|
+
* ## Location Area
|
|
496
|
+
* Location areas are sections of areas, such as floors in a building or cave.
|
|
497
|
+
* Each area has its own set of possible Pokémon encounters.
|
|
498
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Area) for greater detail.
|
|
499
|
+
*/
|
|
500
|
+
interface LocationArea {
|
|
501
|
+
/** The identifier for this resource. */
|
|
502
|
+
id: number;
|
|
503
|
+
/** The name for this resource. */
|
|
504
|
+
name: string;
|
|
505
|
+
/** The internal id of an API resource within game data. */
|
|
506
|
+
game_index: number;
|
|
507
|
+
/** A list of methods in which Pokémon may be encountered in this area and how likely the method will occur depending on the version of the game. */
|
|
508
|
+
encounter_method_rates: EncounterMethodRate[];
|
|
509
|
+
/** The region this location area can be found in. */
|
|
510
|
+
location: NamedAPIResource<Location>;
|
|
511
|
+
/** The name of this resource listed in different languages. */
|
|
512
|
+
names: Name[];
|
|
513
|
+
/** A list of Pokémon that can be encountered in this area along with version specific details about the encounter. */
|
|
514
|
+
pokemon_encounters: PokemonEncounter[];
|
|
515
|
+
}
|
|
516
|
+
//#endregion
|
|
517
|
+
//#region src/models/Pokemon/type.d.ts
|
|
518
|
+
/**
|
|
519
|
+
* Details of Pokémon for a specific type.
|
|
520
|
+
*/
|
|
521
|
+
interface TypePokemon {
|
|
522
|
+
/** The order the Pokémon's types are listed in. */
|
|
523
|
+
slot: number;
|
|
524
|
+
/** The Pokémon that has the referenced type. */
|
|
525
|
+
pokemon: NamedAPIResource<Pokemon>;
|
|
526
|
+
}
|
|
527
|
+
/**
|
|
528
|
+
* Detail of how effective a type is toward others and vice versa.
|
|
529
|
+
*/
|
|
530
|
+
interface TypeRelations {
|
|
531
|
+
/** A list of types this type has no effect on. */
|
|
532
|
+
no_damage_to: NamedAPIResource<Type>[];
|
|
533
|
+
/** A list of types this type is not very effective against. */
|
|
534
|
+
half_damage_to: NamedAPIResource<Type>[];
|
|
535
|
+
/** A list of types this type is very effective against. */
|
|
536
|
+
double_damage_to: NamedAPIResource<Type>[];
|
|
537
|
+
/** A list of types that have no effect on this type. */
|
|
538
|
+
no_damage_from: NamedAPIResource<Type>[];
|
|
539
|
+
/** A list of types that are not very effective against this type. */
|
|
540
|
+
half_damage_from: NamedAPIResource<Type>[];
|
|
541
|
+
/** A list of types that are very effective against this type. */
|
|
542
|
+
double_damage_from: NamedAPIResource<Type>[];
|
|
543
|
+
}
|
|
544
|
+
/**
|
|
545
|
+
* Details of how effective this type was toward others and vice versa in a previous generation.
|
|
546
|
+
*/
|
|
547
|
+
interface TypeRelationsPast {
|
|
548
|
+
/** The last generation in which the referenced type had the listed damage relations. */
|
|
549
|
+
generation: NamedAPIResource<Generation>;
|
|
550
|
+
/** The damage relations the referenced type had up to and including the listed generation. */
|
|
551
|
+
damage_relations: TypeRelations;
|
|
552
|
+
}
|
|
553
|
+
/**
|
|
554
|
+
* The pair of icons a single game uses to depict a type.
|
|
555
|
+
*
|
|
556
|
+
* `symbol_icon` is the type's bare glyph and `name_icon` spells the name out;
|
|
557
|
+
* games that only ever shipped one of the two leave the other `null`.
|
|
558
|
+
*/
|
|
559
|
+
interface TypeGameSprites {
|
|
560
|
+
/** The icon spelling out the type's name. */
|
|
561
|
+
name_icon: string | null;
|
|
562
|
+
/** The icon showing the type's symbol alone. */
|
|
563
|
+
symbol_icon: string | null;
|
|
564
|
+
}
|
|
565
|
+
/** Generation-III type icons, by game. */
|
|
566
|
+
interface GenerationIIITypeSprites {
|
|
567
|
+
colosseum: TypeGameSprites;
|
|
568
|
+
emerald: TypeGameSprites;
|
|
569
|
+
"firered-leafgreen": TypeGameSprites;
|
|
570
|
+
"ruby-sapphire": TypeGameSprites;
|
|
571
|
+
xd: TypeGameSprites;
|
|
572
|
+
}
|
|
573
|
+
/** Generation-IV type icons, by game. */
|
|
574
|
+
interface GenerationIVTypeSprites {
|
|
575
|
+
"diamond-pearl": TypeGameSprites;
|
|
576
|
+
"heartgold-soulsilver": TypeGameSprites;
|
|
577
|
+
platinum: TypeGameSprites;
|
|
578
|
+
}
|
|
579
|
+
/** Generation-V type icons, by game. */
|
|
580
|
+
interface GenerationVTypeSprites {
|
|
581
|
+
"black-2-white-2": TypeGameSprites;
|
|
582
|
+
"black-white": TypeGameSprites;
|
|
583
|
+
}
|
|
584
|
+
/** Generation-VI type icons, by game. */
|
|
585
|
+
interface GenerationVITypeSprites {
|
|
586
|
+
"omega-ruby-alpha-sapphire": TypeGameSprites;
|
|
587
|
+
"x-y": TypeGameSprites;
|
|
588
|
+
}
|
|
589
|
+
/** Generation-VII type icons, by game. */
|
|
590
|
+
interface GenerationVIITypeSprites {
|
|
591
|
+
"lets-go-pikachu-lets-go-eevee": TypeGameSprites;
|
|
592
|
+
"sun-moon": TypeGameSprites;
|
|
593
|
+
"ultra-sun-ultra-moon": TypeGameSprites;
|
|
594
|
+
}
|
|
595
|
+
/** Generation-VIII type icons, by game. */
|
|
596
|
+
interface GenerationVIIITypeSprites {
|
|
597
|
+
"brilliant-diamond-shining-pearl": TypeGameSprites;
|
|
598
|
+
"legends-arceus": TypeGameSprites;
|
|
599
|
+
"sword-shield": TypeGameSprites;
|
|
600
|
+
}
|
|
601
|
+
/** Generation-IX type icons, by game. */
|
|
602
|
+
interface GenerationIXTypeSprites {
|
|
603
|
+
"scarlet-violet": TypeGameSprites;
|
|
604
|
+
}
|
|
605
|
+
/**
|
|
606
|
+
* The icons used to depict a type, by generation and game.
|
|
607
|
+
*
|
|
608
|
+
* Generations I and II are absent: neither displayed type icons in-game.
|
|
609
|
+
*/
|
|
610
|
+
interface TypeSprites {
|
|
611
|
+
/** Generation-III type icons. */
|
|
612
|
+
"generation-iii": GenerationIIITypeSprites;
|
|
613
|
+
/** Generation-IV type icons. */
|
|
614
|
+
"generation-iv": GenerationIVTypeSprites;
|
|
615
|
+
/** Generation-V type icons. */
|
|
616
|
+
"generation-v": GenerationVTypeSprites;
|
|
617
|
+
/** Generation-VI type icons. */
|
|
618
|
+
"generation-vi": GenerationVITypeSprites;
|
|
619
|
+
/** Generation-VII type icons. */
|
|
620
|
+
"generation-vii": GenerationVIITypeSprites;
|
|
621
|
+
/** Generation-VIII type icons. */
|
|
622
|
+
"generation-viii": GenerationVIIITypeSprites;
|
|
623
|
+
/** Generation-IX type icons. */
|
|
624
|
+
"generation-ix": GenerationIXTypeSprites;
|
|
625
|
+
}
|
|
626
|
+
/**
|
|
627
|
+
* ## Type
|
|
628
|
+
* Types are properties for Pokémon and their moves.
|
|
629
|
+
* Each type has three properties: which types of Pokémon it is super effective against,
|
|
630
|
+
* which types of Pokémon it is not very effective against, and which types of Pokémon it is completely ineffective against.
|
|
631
|
+
*/
|
|
632
|
+
interface Type {
|
|
633
|
+
/** The identifier for this resource. */
|
|
634
|
+
id: number;
|
|
635
|
+
/** The name for this resource. */
|
|
636
|
+
name: string;
|
|
637
|
+
/** A detail of how effective this type is toward others and vice versa. */
|
|
638
|
+
damage_relations: TypeRelations;
|
|
639
|
+
/** A list of details of how effective this type was toward others and vice versa in previous generations. */
|
|
640
|
+
past_damage_relations: TypeRelationsPast[];
|
|
641
|
+
/** A list of game indices relevant to this item by generation. */
|
|
642
|
+
game_indices: GenerationGameIndex[];
|
|
643
|
+
/** The generation this type was introduced in. */
|
|
644
|
+
generation: NamedAPIResource<Generation>;
|
|
645
|
+
/** The class of damage inflicted by this type. */
|
|
646
|
+
move_damage_class: NamedAPIResource<MoveDamageClass>;
|
|
647
|
+
/** The name of this resource listed in different languages. */
|
|
648
|
+
names: Name[];
|
|
649
|
+
/** A list of details of Pokémon that have this type. */
|
|
650
|
+
pokemon: TypePokemon[];
|
|
651
|
+
/** A list of moves that have this type. */
|
|
652
|
+
moves: NamedAPIResource<Move>[];
|
|
653
|
+
/** The icons used to depict this type, by generation and game. */
|
|
654
|
+
sprites: TypeSprites;
|
|
655
|
+
}
|
|
656
|
+
//#endregion
|
|
657
|
+
//#region src/models/Evolution/evolution.d.ts
|
|
658
|
+
/**
|
|
659
|
+
* ## Evolution Detail
|
|
660
|
+
* All details regarding the specific details of the referenced Pokémon species evolution.
|
|
661
|
+
*/
|
|
662
|
+
interface EvolutionDetail {
|
|
663
|
+
/** The item required to cause evolution into this Pokémon species. */
|
|
664
|
+
item: NamedAPIResource<Item> | null;
|
|
665
|
+
/** The type of event that triggers evolution into this Pokémon species. */
|
|
666
|
+
trigger: NamedAPIResource<EvolutionTrigger>;
|
|
667
|
+
/** The gender the evolving Pokémon species must be in order to evolve into this Pokémon species. */
|
|
668
|
+
gender: number | null;
|
|
669
|
+
/** The item the evolving Pokémon species must be holding during the evolution trigger event to evolve into this Pokémon species. */
|
|
670
|
+
held_item: NamedAPIResource<Item> | null;
|
|
671
|
+
/** The move that must be known by the evolving Pokémon species during the evolution trigger event in order to evolve into this Pokémon species. */
|
|
672
|
+
known_move: NamedAPIResource<Move> | null;
|
|
673
|
+
/** The evolving Pokémon species must know a move with this type during the evolution trigger event in order to evolve into this Pokémon species. */
|
|
674
|
+
known_move_type: NamedAPIResource<Type> | null;
|
|
675
|
+
/** The location the evolution must be triggered at. */
|
|
676
|
+
location: NamedAPIResource<Location> | null;
|
|
677
|
+
/** The minimum required level the evolving Pokémon species must reach to evolve into this Pokémon species. */
|
|
678
|
+
min_level: number | null;
|
|
679
|
+
/** The minimum required level of happiness the evolving Pokémon species must have to evolve into this Pokémon species. */
|
|
680
|
+
min_happiness: number | null;
|
|
681
|
+
/** The minimum required level of beauty the evolving Pokémon species must have to evolve into this Pokémon species. */
|
|
682
|
+
min_beauty: number | null;
|
|
683
|
+
/** The minimum required level of affection the evolving Pokémon species must have to evolve into this Pokémon species. */
|
|
684
|
+
min_affection: number | null;
|
|
685
|
+
/** Whether or not it must be raining in the overworld to cause evolution into this Pokémon species. */
|
|
686
|
+
needs_overworld_rain: boolean;
|
|
687
|
+
/** The Pokémon species that must be in the player's party in order for the evolving Pokémon species to evolve into this Pokémon species. */
|
|
688
|
+
party_species: NamedAPIResource<PokemonSpecies> | null;
|
|
689
|
+
/**
|
|
690
|
+
* The player must have a Pokémon of this type in their party during the evolution trigger event
|
|
691
|
+
* in order for the evolving Pokémon species to evolve into this Pokémon species.
|
|
692
|
+
*/
|
|
693
|
+
party_type: NamedAPIResource<Type> | null;
|
|
694
|
+
/** The required relation between the Pokémon's Attack and Defense stats. 1 means Attack > Defense. 0 means Attack = Defense. -1 means Attack < Defense. */
|
|
695
|
+
relative_physical_stats: 1 | 0 | -1 | null;
|
|
696
|
+
/** The required time of day. Day or night. */
|
|
697
|
+
time_of_day: "Day" | "Night" | "";
|
|
698
|
+
/** Pokémon species for which this one must be traded. */
|
|
699
|
+
trade_species: NamedAPIResource<PokemonSpecies> | null;
|
|
700
|
+
/** Whether or not the 3DS needs to be turned upside-down as this Pokémon levels up. */
|
|
701
|
+
turn_upside_down: boolean;
|
|
702
|
+
/** The version group in which the evolution was introduced. */
|
|
703
|
+
version_group: NamedAPIResource<VersionGroup>;
|
|
704
|
+
/**
|
|
705
|
+
* Whether the evolution is the expected one in a main series game. Each Pokémon variety of a line
|
|
706
|
+
* capable of evolution has exactly one default evolution per distinct variety it evolves into.
|
|
707
|
+
*/
|
|
708
|
+
is_default: boolean;
|
|
709
|
+
/** Whether or not the Pokémon must be near a Moss Rock or Icy Rock to evolve into this species. */
|
|
710
|
+
near_special_rock: boolean;
|
|
711
|
+
/** Whether or not multiplayer link play is needed to evolve into this species, e.g. Union Circle. */
|
|
712
|
+
needs_multiplayer: boolean;
|
|
713
|
+
/** The region this evolution must occur in. */
|
|
714
|
+
region: NamedAPIResource<Region> | null;
|
|
715
|
+
/** The form the evolving Pokémon must be in for this evolution to occur. */
|
|
716
|
+
base_form: NamedAPIResource<PokemonForm> | null;
|
|
717
|
+
/** The form this evolution produces. */
|
|
718
|
+
evolved_form: NamedAPIResource<PokemonForm> | null;
|
|
719
|
+
/**
|
|
720
|
+
* The move that must be used by the evolving Pokémon species during the evolution trigger event
|
|
721
|
+
* in order to evolve into this Pokémon species.
|
|
722
|
+
*/
|
|
723
|
+
used_move: NamedAPIResource<Move> | null;
|
|
724
|
+
/** The minimum number of times `used_move` must be used to evolve into this species. */
|
|
725
|
+
min_move_count: number | null;
|
|
726
|
+
/** The minimum number of steps that must be taken to evolve into this species. */
|
|
727
|
+
min_steps: number | null;
|
|
728
|
+
/**
|
|
729
|
+
* The minimum amount of damage taken during the evolution trigger event to evolve into this
|
|
730
|
+
* species.
|
|
731
|
+
*/
|
|
732
|
+
min_damage_taken: number | null;
|
|
733
|
+
}
|
|
734
|
+
/**
|
|
735
|
+
* ## Chain Link
|
|
736
|
+
* Contains evolution details for a Pokémon in the chain.
|
|
737
|
+
* Each link references the next Pokémon in the natural evolution order.
|
|
738
|
+
*/
|
|
739
|
+
interface ChainLink {
|
|
740
|
+
/** Whether or not this link is for a baby Pokémon. This would only ever be true on the base link. */
|
|
741
|
+
is_baby: boolean;
|
|
742
|
+
/** The Pokémon species at this point in the evolution chain. */
|
|
743
|
+
species: NamedAPIResource<PokemonSpecies>;
|
|
744
|
+
/** All details regarding the specific details of the referenced Pokémon species evolution. */
|
|
745
|
+
evolution_details: EvolutionDetail[];
|
|
746
|
+
/** A list of chain objects. */
|
|
747
|
+
evolves_to: ChainLink[];
|
|
748
|
+
}
|
|
749
|
+
/**
|
|
750
|
+
* ## Evolution Chain
|
|
751
|
+
* Evolution chains are essentially family trees.
|
|
752
|
+
* They start with the lowest stage within a family and detail
|
|
753
|
+
* evolution conditions for each as well as Pokémon they can evolve
|
|
754
|
+
* into up through the hierarchy.
|
|
755
|
+
*/
|
|
756
|
+
interface EvolutionChain {
|
|
757
|
+
/** The identifier for this resource. */
|
|
758
|
+
id: number;
|
|
759
|
+
/**
|
|
760
|
+
* The item that a Pokémon would be holding when mating that would trigger
|
|
761
|
+
* the egg hatching a baby Pokémon rather than a basic Pokémon.
|
|
762
|
+
*/
|
|
763
|
+
baby_trigger_item: NamedAPIResource<Item> | null;
|
|
764
|
+
/**
|
|
765
|
+
* The base chain link object. Each link contains evolution details for a Pokémon in the chain.
|
|
766
|
+
* Each link references the next Pokémon in the natural evolution order.
|
|
767
|
+
*/
|
|
768
|
+
chain: ChainLink;
|
|
769
|
+
}
|
|
770
|
+
/**
|
|
771
|
+
* ## Evolution Trigger
|
|
772
|
+
* Evolution triggers are the events and conditions that cause a Pokémon to evolve.
|
|
773
|
+
* There are numerous methods of evolution which define how and when Pokémon evolve.
|
|
774
|
+
* Most Pokémon will evolve by leveling up while others evolve through specific means,
|
|
775
|
+
* such as being traded, achieving a certain amount of friendship or leveling at certain times, among others.
|
|
776
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Methods_of_evolution) for greater detail.
|
|
777
|
+
*/
|
|
778
|
+
interface EvolutionTrigger {
|
|
779
|
+
/** The identifier for this resource. */
|
|
780
|
+
id: number;
|
|
781
|
+
/** The name for this resource. */
|
|
782
|
+
name: "level-up" | "trade" | "use-item" | "shed" | "other";
|
|
783
|
+
/** The name of this resource listed in different languages. */
|
|
784
|
+
names: Name[];
|
|
785
|
+
/** A list of Pokémon species that result from this evolution trigger. */
|
|
786
|
+
pokemon_species: NamedAPIResource<PokemonSpecies>[];
|
|
787
|
+
}
|
|
788
|
+
//#endregion
|
|
789
|
+
//#region src/models/Game/pokemon-entry.d.ts
|
|
790
|
+
/**
|
|
791
|
+
* A Pokémon catalogued in a Pokédex.
|
|
792
|
+
*/
|
|
793
|
+
interface PokemonEntry {
|
|
794
|
+
/** The index of this Pokémon species entry within the Pokédex. */
|
|
795
|
+
entry_number: number;
|
|
796
|
+
/** The Pokémon species being encountered. */
|
|
797
|
+
pokemon_species: NamedAPIResource<PokemonSpecies>;
|
|
798
|
+
}
|
|
799
|
+
//#endregion
|
|
800
|
+
//#region src/models/Game/pokedex.d.ts
|
|
801
|
+
/**
|
|
802
|
+
* ## Pokédex
|
|
803
|
+
* A Pokédex is a handheld electronic encyclopedia device;
|
|
804
|
+
* one which is capable of recording and retaining information of the various Pokémon in a given region
|
|
805
|
+
* with the exception of the national dex and some smaller dexes related to portions of a region.
|
|
806
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Pok%C3%A9dex) for greater detail.
|
|
807
|
+
*/
|
|
808
|
+
interface Pokedex {
|
|
809
|
+
/** The identifier for this resource. */
|
|
810
|
+
id: number;
|
|
811
|
+
/** The name for this resource. */
|
|
812
|
+
name: string;
|
|
813
|
+
/** Whether or not this Pokédex originated in the main series of the video games. */
|
|
814
|
+
is_main_series: boolean;
|
|
815
|
+
/** The description of this resource listed in different languages. */
|
|
816
|
+
descriptions: Description[];
|
|
817
|
+
/** The name of this resource listed in different languages. */
|
|
818
|
+
names: Name[];
|
|
819
|
+
/** A list of Pokémon catalogued in this Pokédex and their indexes. */
|
|
820
|
+
pokemon_entries: PokemonEntry[];
|
|
821
|
+
/** The region this Pokédex catalogues Pokémon for. */
|
|
822
|
+
region: NamedAPIResource<Region> | null;
|
|
823
|
+
/** A list of version groups this Pokédex is relevant to. */
|
|
824
|
+
version_groups: NamedAPIResource<VersionGroup>[];
|
|
825
|
+
}
|
|
826
|
+
//#endregion
|
|
827
|
+
//#region src/models/Location/palpark.d.ts
|
|
828
|
+
/**
|
|
829
|
+
* ## Pal Park Area
|
|
830
|
+
* Areas used for grouping Pokémon encounters in Pal Park.
|
|
831
|
+
* They're like habitats that are specific to Pal Park.
|
|
832
|
+
* Pal Park is divided into five separate areas:
|
|
833
|
+
* ---
|
|
834
|
+
* - [Field](https://bulbapedia.bulbagarden.net/wiki/List_of_Pok%C3%A9mon_by_Pal_Park_location#Field)
|
|
835
|
+
* - [Forest](https://bulbapedia.bulbagarden.net/wiki/List_of_Pok%C3%A9mon_by_Pal_Park_location#Forest)
|
|
836
|
+
* - [Mountain](https://bulbapedia.bulbagarden.net/wiki/List_of_Pok%C3%A9mon_by_Pal_Park_location#Mountain)
|
|
837
|
+
* - [Pond](https://bulbapedia.bulbagarden.net/wiki/List_of_Pok%C3%A9mon_by_Pal_Park_location#Pound)
|
|
838
|
+
* - [Sea](https://bulbapedia.bulbagarden.net/wiki/List_of_Pok%C3%A9mon_by_Pal_Park_location#Sea)
|
|
839
|
+
* - [Trivia](https://bulbapedia.bulbagarden.net/wiki/List_of_Pok%C3%A9mon_by_Pal_Park_location#Trivia)
|
|
840
|
+
* ---
|
|
841
|
+
* See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Pal_Park) for greater detail.
|
|
842
|
+
*/
|
|
843
|
+
interface PalParkArea {
|
|
844
|
+
/** The identifier for this resource. */
|
|
845
|
+
id: number;
|
|
846
|
+
/** The name for this resource. */
|
|
847
|
+
name: string;
|
|
848
|
+
/** The name of this resource listed in different languages. */
|
|
849
|
+
names: Name[];
|
|
850
|
+
/** A list of Pokémon encountered in this pal park area along with details. */
|
|
851
|
+
pokemon_encounters: PalParkEncounterSpecies[];
|
|
852
|
+
}
|
|
853
|
+
/**
|
|
854
|
+
* Details of a Pokémon encountered in this Pal Park area.
|
|
855
|
+
*/
|
|
856
|
+
interface PalParkEncounterSpecies {
|
|
857
|
+
/** The base score given to the player when this Pokémon is caught during a pal park run. */
|
|
858
|
+
base_score: number;
|
|
859
|
+
/** The base rate for encountering this Pokémon in this pal park area. */
|
|
860
|
+
rate: number;
|
|
861
|
+
/** The Pokémon species being encountered. */
|
|
862
|
+
pokemon_species: NamedAPIResource<PokemonSpecies>;
|
|
863
|
+
}
|
|
864
|
+
//#endregion
|
|
865
|
+
//#region src/models/Pokemon/egg-group.d.ts
|
|
866
|
+
/**
|
|
867
|
+
* ## Egg Group
|
|
868
|
+
* Egg Groups are categories which determine which Pokémon are able to interbreed.
|
|
869
|
+
* Pokémon may belong to either one or two Egg Groups.
|
|
870
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Egg_Group) for greater detail.
|
|
871
|
+
*/
|
|
872
|
+
interface EggGroup {
|
|
873
|
+
/** The identifier for this resource. */
|
|
874
|
+
id: number;
|
|
875
|
+
/** The name for this resource. */
|
|
876
|
+
name: "monster" | "water1" | "water2" | "water3" | "bug" | "flying" | "ground" | "fairy" | "plant" | "humanshape" | "mineral" | "indeterminate" | "ditto" | "dragon" | "no-eggs";
|
|
877
|
+
/** The name of this resource listed in different languages. */
|
|
878
|
+
names: Name[];
|
|
879
|
+
/** A list of all Pokémon species that are members of this egg group. */
|
|
880
|
+
pokemon_species: NamedAPIResource<PokemonSpecies>[];
|
|
881
|
+
}
|
|
882
|
+
//#endregion
|
|
883
|
+
//#region src/models/Pokemon/growth-rates.d.ts
|
|
884
|
+
/**
|
|
885
|
+
* Levels and the amount of experience needed to attain them based on the given growth rate.
|
|
886
|
+
*/
|
|
887
|
+
interface GrowthRateExperienceLevel {
|
|
888
|
+
/** The level gained. */
|
|
889
|
+
level: number;
|
|
890
|
+
/** The amount of experience required to reach the referenced level. */
|
|
891
|
+
experience: number;
|
|
892
|
+
}
|
|
893
|
+
/**
|
|
894
|
+
* ## Growth Rate
|
|
895
|
+
* Growth rates are the speed with which Pokémon gain levels through experience.
|
|
896
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Experience) for greater detail.
|
|
897
|
+
*/
|
|
898
|
+
interface GrowthRate {
|
|
899
|
+
/** The identifier for this resource. */
|
|
900
|
+
id: number;
|
|
901
|
+
/** The name for this resource. */
|
|
902
|
+
name: "slow" | "medium" | "fast" | "medium-slow" | "slow-then-very-fast" | "fast-then-very-slow";
|
|
903
|
+
/** The formula used to calculate the rate at which the Pokémon species gains levels. */
|
|
904
|
+
formula: string;
|
|
905
|
+
/** The descriptions of this characteristic listed in different languages. */
|
|
906
|
+
descriptions: Description[];
|
|
907
|
+
/** A list of levels and the amount of experience needed to attain them based on this growth rate. */
|
|
908
|
+
levels: GrowthRateExperienceLevel[];
|
|
909
|
+
/** A list of Pokémon species that gain levels at this growth rate. */
|
|
910
|
+
pokemon_species: NamedAPIResource<PokemonSpecies>[];
|
|
911
|
+
}
|
|
912
|
+
//#endregion
|
|
913
|
+
//#region src/models/Pokemon/characteristics.d.ts
|
|
914
|
+
/**
|
|
915
|
+
* ## Characteristic
|
|
916
|
+
* Characteristics indicate which stat contains a Pokémon's highest IV.
|
|
917
|
+
* A Pokémon's Characteristic is determined by the remainder of its highest IV divided by 5 (gene_modulo).
|
|
918
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Characteristic) for greater detail.
|
|
919
|
+
*/
|
|
920
|
+
interface Characteristic {
|
|
921
|
+
/** The identifier for this resource. */
|
|
922
|
+
id: number;
|
|
923
|
+
/** The remainder of the highest stat/IV divided by 5. */
|
|
924
|
+
gene_modulo: number;
|
|
925
|
+
/** The possible values of the highest stat that would result in a Pokémon receiving this characteristic when divided by 5. */
|
|
926
|
+
possible_values: number[];
|
|
927
|
+
/** The highest stat for the referenced characteristic. */
|
|
928
|
+
highest_stat: NamedAPIResource<Stat>;
|
|
929
|
+
/** Descriptions for the referenced characteristic. */
|
|
930
|
+
descriptions: Description[];
|
|
931
|
+
}
|
|
932
|
+
//#endregion
|
|
933
|
+
//#region src/models/Pokemon/pokeathlon-stat.d.ts
|
|
934
|
+
/**
|
|
935
|
+
* ## Pokéathlon Stat
|
|
936
|
+
* Pokéathlon Stats are different attributes of a Pokémon's performance in Pokéathlons.
|
|
937
|
+
* In Pokéathlons, competitions happen on different courses; one for each of the different Pokéathlon stats.
|
|
938
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Pok%C3%A9athlon) for greater detail.
|
|
939
|
+
*/
|
|
940
|
+
interface PokeathlonStat {
|
|
941
|
+
/** The identifier for this resource. */
|
|
942
|
+
id: number;
|
|
943
|
+
/** The name for this resource. */
|
|
944
|
+
name: "speed" | "power" | "skill" | "stamina" | "jump";
|
|
945
|
+
/** The name of this resource listed in different languages. */
|
|
946
|
+
names: Name[];
|
|
947
|
+
/** A detail of natures which affect this Pokéathlon stat positively or negatively. */
|
|
948
|
+
affecting_natures: NaturePokeathlonStatAffectSets;
|
|
949
|
+
}
|
|
950
|
+
/**
|
|
951
|
+
* A nature and how it changes the referenced Pokéathlon stat.
|
|
952
|
+
*/
|
|
953
|
+
interface NaturePokeathlonStatAffect {
|
|
954
|
+
/** The maximum amount of change to the referenced Pokéathlon stat. */
|
|
955
|
+
max_change: -1 | -2 | 1 | 2;
|
|
956
|
+
/** The nature causing the change. */
|
|
957
|
+
nature: NamedAPIResource<Nature>;
|
|
958
|
+
}
|
|
959
|
+
/**
|
|
960
|
+
* A detail of natures which affect this Pokéathlon stat positively or negatively.
|
|
961
|
+
*/
|
|
962
|
+
interface NaturePokeathlonStatAffectSets {
|
|
963
|
+
/** A list of natures and how they change the referenced Pokéathlon stat. */
|
|
964
|
+
increase: NaturePokeathlonStatAffect[];
|
|
965
|
+
/** A list of natures and how they change the referenced Pokéathlon stat. */
|
|
966
|
+
decrease: NaturePokeathlonStatAffect[];
|
|
967
|
+
}
|
|
968
|
+
//#endregion
|
|
969
|
+
//#region src/models/Pokemon/nature.d.ts
|
|
970
|
+
/**
|
|
971
|
+
* ## Nature
|
|
972
|
+
* Natures influence how a Pokémon's stats grow.
|
|
973
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Nature) for greater detail.
|
|
974
|
+
*/
|
|
975
|
+
interface Nature {
|
|
976
|
+
/** The identifier for this resource. */
|
|
977
|
+
id: number;
|
|
978
|
+
/** The name for this resource. */
|
|
979
|
+
name: string;
|
|
980
|
+
/** The stat decreased by 10% in Pokémon with this nature. */
|
|
981
|
+
decreased_stat: NamedAPIResource<Stat> | null;
|
|
982
|
+
/** The stat increased by 10% in Pokémon with this nature. */
|
|
983
|
+
increased_stat: NamedAPIResource<Stat> | null;
|
|
984
|
+
/** The flavor hated by Pokémon with this nature. */
|
|
985
|
+
hates_flavor: NamedAPIResource<BerryFlavor> | null;
|
|
986
|
+
/** The flavor liked by Pokémon with this nature. */
|
|
987
|
+
likes_flavor: NamedAPIResource<BerryFlavor> | null;
|
|
988
|
+
/** A list of Pokéathlon stats this nature affects and by how much. */
|
|
989
|
+
pokeathlon_stat_changes: NatureStatChange[];
|
|
990
|
+
/** A list of battle styles and how likely a Pokémon with this nature is to use them in the Battle Palace or Battle Tent. */
|
|
991
|
+
move_battle_style_preferences: MoveBattleStylePreference[];
|
|
992
|
+
/** The name of this resource listed in different languages. */
|
|
993
|
+
names: Name[];
|
|
994
|
+
}
|
|
995
|
+
/**
|
|
996
|
+
* A Pokéathlon stat a nature affects, and by how much.
|
|
997
|
+
*/
|
|
998
|
+
interface NatureStatChange {
|
|
999
|
+
/** The amount of change. */
|
|
1000
|
+
max_change: -1 | 1 | -2 | 2;
|
|
1001
|
+
/** The stat being affected. */
|
|
1002
|
+
pokeathlon_stat: NamedAPIResource<PokeathlonStat>;
|
|
1003
|
+
}
|
|
1004
|
+
/**
|
|
1005
|
+
* Battle Style and how likely a Pokémon with the given nature is to use them
|
|
1006
|
+
* in the Battle Palace or Battle Tent.
|
|
1007
|
+
*/
|
|
1008
|
+
interface MoveBattleStylePreference {
|
|
1009
|
+
/** Chance of using the move, in percent, if HP is under one half. */
|
|
1010
|
+
low_hp_preference: number;
|
|
1011
|
+
/** Chance of using the move, in percent, if HP is over one half. */
|
|
1012
|
+
high_hp_preference: number;
|
|
1013
|
+
/** The move battle style. */
|
|
1014
|
+
move_battle_style: NamedAPIResource<MoveBattleStyle>;
|
|
1015
|
+
}
|
|
1016
|
+
//#endregion
|
|
1017
|
+
//#region src/models/Pokemon/stats.d.ts
|
|
1018
|
+
/**
|
|
1019
|
+
* ## Stat
|
|
1020
|
+
* Stats determine certain aspects of battles. Each Pokémon has a value for each stat
|
|
1021
|
+
* which grows as they gain levels and can be altered momentarily by effects in battles.
|
|
1022
|
+
*/
|
|
1023
|
+
interface Stat {
|
|
1024
|
+
/** The identifier for this resource. */
|
|
1025
|
+
id: number;
|
|
1026
|
+
/** The name for this resource. */
|
|
1027
|
+
name: "hp" | "attack" | "defense" | "special-attack" | "special-defense" | "speed" | "accuracy" | "evasion";
|
|
1028
|
+
/** ID the games use for this stat. */
|
|
1029
|
+
game_index: number;
|
|
1030
|
+
/** Whether this stat only exists within a battle. */
|
|
1031
|
+
is_battle_only: boolean;
|
|
1032
|
+
/** A detail of moves which affect this stat positively or negatively. */
|
|
1033
|
+
affecting_moves: MoveStatAffectSets;
|
|
1034
|
+
/** A detail of natures which affect this stat positively or negatively. */
|
|
1035
|
+
affecting_natures: NatureStatAffectSets;
|
|
1036
|
+
/** A list of items which affect this stat. */
|
|
1037
|
+
affecting_items: NamedAPIResource<Item>[];
|
|
1038
|
+
/** A list of characteristics that are set on a Pokémon when its highest base stat is this stat. */
|
|
1039
|
+
characteristics: APIResource<Characteristic>[];
|
|
1040
|
+
/** The class of damage this stat is directly related to. */
|
|
1041
|
+
move_damage_class: NamedAPIResource<MoveDamageClass> | null;
|
|
1042
|
+
/** The name of this resource listed in different languages. */
|
|
1043
|
+
names: Name[];
|
|
1044
|
+
}
|
|
1045
|
+
/**
|
|
1046
|
+
* A detail of natures which affect the given stat positively or negatively.
|
|
1047
|
+
*/
|
|
1048
|
+
interface NatureStatAffectSets {
|
|
1049
|
+
/** A list of natures and how they change the referenced stat. */
|
|
1050
|
+
increase: NamedAPIResource<Nature>[];
|
|
1051
|
+
/** A list of natures and how they change the referenced stat. */
|
|
1052
|
+
decrease: NamedAPIResource<Nature>[];
|
|
1053
|
+
}
|
|
1054
|
+
/**
|
|
1055
|
+
* A move and how it changes the referenced stat.
|
|
1056
|
+
*/
|
|
1057
|
+
interface MoveStatAffect {
|
|
1058
|
+
/** The maximum amount of change to the referenced stat. */
|
|
1059
|
+
change: -1 | -2 | 1 | 2;
|
|
1060
|
+
/** The move causing the change. */
|
|
1061
|
+
move: NamedAPIResource<Move>;
|
|
1062
|
+
}
|
|
1063
|
+
/**
|
|
1064
|
+
* A detail of moves which affect a stat positively or negatively.
|
|
1065
|
+
*/
|
|
1066
|
+
interface MoveStatAffectSets {
|
|
1067
|
+
/** A list of moves and how they change the referenced stat. */
|
|
1068
|
+
increase: MoveStatAffect[];
|
|
1069
|
+
/** A list of moves and how they change the referenced stat. */
|
|
1070
|
+
decrease: MoveStatAffect[];
|
|
1071
|
+
}
|
|
1072
|
+
//#endregion
|
|
1073
|
+
//#region src/models/Pokemon/pokemon.d.ts
|
|
1074
|
+
/**
|
|
1075
|
+
* ## Pokémon
|
|
1076
|
+
* Pokémon are the creatures that inhabit the world of the Pokémon games.
|
|
1077
|
+
* They can be caught using Pokéballs and trained by battling with other Pokémon.
|
|
1078
|
+
* Each Pokémon belongs to a specific species but may take on a variant
|
|
1079
|
+
* which makes it differ from other Pokémon of the same species, such as base stats, available abilities and typings.
|
|
1080
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Pok%C3%A9mon_(species)) for greater detail.
|
|
1081
|
+
*/
|
|
1082
|
+
interface Pokemon {
|
|
1083
|
+
/** The identifier for this resource. */
|
|
1084
|
+
id: number;
|
|
1085
|
+
/** The name for this resource. */
|
|
1086
|
+
name: string;
|
|
1087
|
+
/** The base experience gained for defeating this Pokémon. */
|
|
1088
|
+
base_experience: number;
|
|
1089
|
+
/** The height of this Pokémon in decimetres. */
|
|
1090
|
+
height: number;
|
|
1091
|
+
/** Set for exactly one Pokémon used as the default for each species. */
|
|
1092
|
+
is_default: boolean;
|
|
1093
|
+
/** Order for sorting. Almost national order, except families are grouped together. */
|
|
1094
|
+
order: number;
|
|
1095
|
+
/** The weight of this Pokémon in hectograms. */
|
|
1096
|
+
weight: number;
|
|
1097
|
+
/** A list of abilities this Pokémon could potentially have. */
|
|
1098
|
+
abilities: PokemonAbility[];
|
|
1099
|
+
/** A list of forms this Pokémon can take on. */
|
|
1100
|
+
forms: NamedAPIResource<PokemonForm>[];
|
|
1101
|
+
/** A list of game indices relevant to this Pokémon by generation. */
|
|
1102
|
+
game_indices: VersionGameIndex[];
|
|
1103
|
+
/** A list of items this Pokémon may be holding when encountered. */
|
|
1104
|
+
held_items: PokemonHeldItem[];
|
|
1105
|
+
/** A link to a list of location areas, as well as encounter details pertaining to specific versions. */
|
|
1106
|
+
location_area_encounters: string;
|
|
1107
|
+
/** A list of moves along with learn methods and level details pertaining to specific version groups. */
|
|
1108
|
+
moves: PokemonMove[];
|
|
1109
|
+
/** A set of sprites used to depict this Pokémon in the game. */
|
|
1110
|
+
sprites: PokemonSprites;
|
|
1111
|
+
/** A set of cries used to depict this Pokémon in the game. */
|
|
1112
|
+
cries: PokemonCries;
|
|
1113
|
+
/** The species this Pokémon belongs to. */
|
|
1114
|
+
species: NamedAPIResource<PokemonSpecies>;
|
|
1115
|
+
/** A list of base stat values for this Pokémon. */
|
|
1116
|
+
stats: PokemonStat[];
|
|
1117
|
+
/** A list of details showing types this Pokémon has. */
|
|
1118
|
+
types: PokemonType[];
|
|
1119
|
+
/** Data describing a Pokémon's types in a previous generation. */
|
|
1120
|
+
past_types: PokemonPastType[];
|
|
1121
|
+
/** Data describing a Pokémon's abilities in a previous generation. */
|
|
1122
|
+
past_abilities: PokemonPastAbility[];
|
|
1123
|
+
/** Data describing a Pokémon's stats in a previous generation. */
|
|
1124
|
+
past_stats: PokemonPastStat[];
|
|
1125
|
+
}
|
|
1126
|
+
/** The cries used to depict a Pokémon in the games. */
|
|
1127
|
+
type PokemonCries = {
|
|
1128
|
+
/** The legacy depiction of this Pokémon's cry. */
|
|
1129
|
+
legacy: string;
|
|
1130
|
+
/** The latest depiction of this Pokémon's cry. */
|
|
1131
|
+
latest: string;
|
|
1132
|
+
};
|
|
1133
|
+
/**
|
|
1134
|
+
* Abilities the given Pokémon could potentially have.
|
|
1135
|
+
*/
|
|
1136
|
+
interface PokemonAbility {
|
|
1137
|
+
/** Whether or not this is a hidden ability. */
|
|
1138
|
+
is_hidden: boolean;
|
|
1139
|
+
/** The slot this ability occupies in this Pokémon species. */
|
|
1140
|
+
slot: number;
|
|
1141
|
+
/** The ability the Pokémon may have. */
|
|
1142
|
+
ability: NamedAPIResource<Ability>;
|
|
1143
|
+
}
|
|
1144
|
+
/**
|
|
1145
|
+
* Details showing types the given Pokémon has.
|
|
1146
|
+
*/
|
|
1147
|
+
interface PokemonType {
|
|
1148
|
+
/** The order the Pokémon's types are listed in. */
|
|
1149
|
+
slot: number;
|
|
1150
|
+
/** The type the referenced Pokémon has. */
|
|
1151
|
+
type: NamedAPIResource<Type>;
|
|
1152
|
+
}
|
|
1153
|
+
/**
|
|
1154
|
+
* Data describing a Pokémon's types in a previous generation.
|
|
1155
|
+
*/
|
|
1156
|
+
interface PokemonPastType {
|
|
1157
|
+
/** The generation of this Pokémon Type. */
|
|
1158
|
+
generation: NamedAPIResource<Generation>;
|
|
1159
|
+
/** The types this Pokémon had in a previous generation. */
|
|
1160
|
+
types: PokemonType[];
|
|
1161
|
+
}
|
|
1162
|
+
/** An ability slot as it stood in a previous generation. */
|
|
1163
|
+
interface PokemonPastAbilitySlot {
|
|
1164
|
+
/** Whether or not this was a hidden ability. */
|
|
1165
|
+
is_hidden: boolean;
|
|
1166
|
+
/** The slot this ability occupied in this Pokémon species. */
|
|
1167
|
+
slot: number;
|
|
1168
|
+
/** The ability that occupied the slot, or `null` when the slot was empty. */
|
|
1169
|
+
ability: NamedAPIResource<Ability> | null;
|
|
1170
|
+
}
|
|
1171
|
+
/** Data describing a Pokémon's abilities in a previous generation. */
|
|
1172
|
+
interface PokemonPastAbility {
|
|
1173
|
+
/** The last generation in which the referenced Pokémon had the listed abilities. */
|
|
1174
|
+
generation: NamedAPIResource<Generation>;
|
|
1175
|
+
/** The abilities the referenced Pokémon had up to and including the listed generation. */
|
|
1176
|
+
abilities: PokemonPastAbilitySlot[];
|
|
1177
|
+
}
|
|
1178
|
+
/** Data describing a Pokémon's stats in a previous generation. */
|
|
1179
|
+
interface PokemonPastStat {
|
|
1180
|
+
/** The last generation in which the referenced Pokémon had the listed stats. */
|
|
1181
|
+
generation: NamedAPIResource<Generation>;
|
|
1182
|
+
/** The stats the Pokémon had up to and including the listed generation. */
|
|
1183
|
+
stats: PokemonStat[];
|
|
1184
|
+
}
|
|
1185
|
+
/**
|
|
1186
|
+
* Items the given Pokémon may be holding when encountered.
|
|
1187
|
+
*/
|
|
1188
|
+
interface PokemonHeldItem {
|
|
1189
|
+
/** The item the referenced Pokémon holds. */
|
|
1190
|
+
item: NamedAPIResource<Item>;
|
|
1191
|
+
/** The details of the different versions in which the item is held. */
|
|
1192
|
+
version_details: PokemonHeldItemVersion[];
|
|
1193
|
+
}
|
|
1194
|
+
/**
|
|
1195
|
+
* The details of the different versions in which the item is held.
|
|
1196
|
+
*/
|
|
1197
|
+
interface PokemonHeldItemVersion {
|
|
1198
|
+
/** The version in which the item is held. */
|
|
1199
|
+
version: NamedAPIResource<Version>;
|
|
1200
|
+
/** How often the item is held. */
|
|
1201
|
+
rarity: number;
|
|
1202
|
+
}
|
|
1203
|
+
/**
|
|
1204
|
+
* A Move along with learn methods and level details pertaining to specific version groups.
|
|
1205
|
+
*/
|
|
1206
|
+
interface PokemonMove {
|
|
1207
|
+
/** The move the Pokémon can learn. */
|
|
1208
|
+
move: NamedAPIResource<Move>;
|
|
1209
|
+
/** The details of the version in which the Pokémon can learn the move. */
|
|
1210
|
+
version_group_details: PokemonMoveVersion[];
|
|
1211
|
+
}
|
|
1212
|
+
/**
|
|
1213
|
+
* The details of the version in which the Pokémon can learn the move.
|
|
1214
|
+
*/
|
|
1215
|
+
interface PokemonMoveVersion {
|
|
1216
|
+
/** The method by which the move is learned. */
|
|
1217
|
+
move_learn_method: NamedAPIResource<MoveLearnMethod>;
|
|
1218
|
+
/** The version group in which the move is learned. */
|
|
1219
|
+
version_group: NamedAPIResource<VersionGroup>;
|
|
1220
|
+
/** The minimum level to learn the move. */
|
|
1221
|
+
level_learned_at: number;
|
|
1222
|
+
/**
|
|
1223
|
+
* Order by which the Pokémon will learn the move. A newly learnt move replaces the move with
|
|
1224
|
+
* the lowest order.
|
|
1225
|
+
*/
|
|
1226
|
+
order: number | null;
|
|
1227
|
+
}
|
|
1228
|
+
/**
|
|
1229
|
+
* Base stat values for the given Pokémon.
|
|
1230
|
+
*/
|
|
1231
|
+
interface PokemonStat {
|
|
1232
|
+
/** The stat the Pokémon has. */
|
|
1233
|
+
stat: NamedAPIResource<Stat>;
|
|
1234
|
+
/** The effort points (EV) the Pokémon has in the stat. */
|
|
1235
|
+
effort: number;
|
|
1236
|
+
/** The base value of the stat. */
|
|
1237
|
+
base_stat: number;
|
|
1238
|
+
}
|
|
1239
|
+
/** Version Sprites. */
|
|
1240
|
+
interface VersionSprites {
|
|
1241
|
+
/** Generation-I Sprites of this Pokémon. */
|
|
1242
|
+
"generation-i": GenerationISprites;
|
|
1243
|
+
/** Generation-II Sprites of this Pokémon. */
|
|
1244
|
+
"generation-ii": GenerationIISprites;
|
|
1245
|
+
/** Generation-III Sprites of this Pokémon. */
|
|
1246
|
+
"generation-iii": GenerationIIISprites;
|
|
1247
|
+
/** Generation-IV Sprites of this Pokémon. */
|
|
1248
|
+
"generation-iv": GenerationIVSprites;
|
|
1249
|
+
/** Generation-V Sprites of this Pokémon. */
|
|
1250
|
+
"generation-v": GenerationVSprites;
|
|
1251
|
+
/** Generation-VI Sprites of this Pokémon. */
|
|
1252
|
+
"generation-vi": GenerationVISprites;
|
|
1253
|
+
/** Generation-VII Sprites of this Pokémon. */
|
|
1254
|
+
"generation-vii": GenerationVIISprites;
|
|
1255
|
+
/** Generation-VIII Sprites of this Pokémon. */
|
|
1256
|
+
"generation-viii": GenerationVIIISprites;
|
|
1257
|
+
/** Generation-IX Sprites of this Pokémon. */
|
|
1258
|
+
"generation-ix": GenerationIXSprites;
|
|
1259
|
+
}
|
|
1260
|
+
/**
|
|
1261
|
+
* A set of sprites used to depict this Pokémon in the game.
|
|
1262
|
+
* A visual representation of the various sprites can be found at [PokeAPI/sprites](https://github.com/PokeAPI/sprites#sprites).
|
|
1263
|
+
*/
|
|
1264
|
+
interface PokemonSprites {
|
|
1265
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1266
|
+
front_default: string | null;
|
|
1267
|
+
/** The shiny depiction of this Pokémon from the front in battle. */
|
|
1268
|
+
front_shiny: string | null;
|
|
1269
|
+
/** The female depiction of this Pokémon from the front in battle. */
|
|
1270
|
+
front_female: string | null;
|
|
1271
|
+
/** The shiny female depiction of this Pokémon from the front in battle. */
|
|
1272
|
+
front_shiny_female: string | null;
|
|
1273
|
+
/** The default depiction of this Pokémon from the back in battle. */
|
|
1274
|
+
back_default: string | null;
|
|
1275
|
+
/** The shiny depiction of this Pokémon from the back in battle. */
|
|
1276
|
+
back_shiny: string | null;
|
|
1277
|
+
/** The female depiction of this Pokémon from the back in battle. */
|
|
1278
|
+
back_female: string | null;
|
|
1279
|
+
/** The shiny female depiction of this Pokémon from the back in battle. */
|
|
1280
|
+
back_shiny_female: string | null;
|
|
1281
|
+
/** Dream World, Official Artwork and Home sprites. */
|
|
1282
|
+
other?: OtherPokemonSprites;
|
|
1283
|
+
/** Version Sprites of this Pokémon. */
|
|
1284
|
+
versions: VersionSprites;
|
|
1285
|
+
}
|
|
1286
|
+
/** Other Pokémon Sprites (Dream World and Official Artwork sprites). */
|
|
1287
|
+
interface OtherPokemonSprites {
|
|
1288
|
+
/** Dream World Sprites of this Pokémon. */
|
|
1289
|
+
dream_world: DreamWorld;
|
|
1290
|
+
/** Official Artwork Sprites of this Pokémon. */
|
|
1291
|
+
"official-artwork": OfficialArtwork;
|
|
1292
|
+
/** Home Artwork Sprites of this Pokémon. */
|
|
1293
|
+
home: Home;
|
|
1294
|
+
/** Pokémon Showdown animated sprites of this Pokémon. */
|
|
1295
|
+
showdown: Showdown;
|
|
1296
|
+
}
|
|
1297
|
+
/** Dream World sprites. */
|
|
1298
|
+
interface DreamWorld {
|
|
1299
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1300
|
+
front_default: string | null;
|
|
1301
|
+
/** The female depiction of this Pokémon from the front in battle. */
|
|
1302
|
+
front_female: string | null;
|
|
1303
|
+
}
|
|
1304
|
+
/** Official Artwork sprites. */
|
|
1305
|
+
interface OfficialArtwork {
|
|
1306
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1307
|
+
front_default: string | null;
|
|
1308
|
+
/** The shiny depiction of this Pokémon from the front in battle. */
|
|
1309
|
+
front_shiny: string | null;
|
|
1310
|
+
}
|
|
1311
|
+
/** Home sprites. */
|
|
1312
|
+
interface Home {
|
|
1313
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1314
|
+
front_default: string | null;
|
|
1315
|
+
/** The female depiction of this Pokémon from the front in battle. */
|
|
1316
|
+
front_female: string | null;
|
|
1317
|
+
/** The shiny depiction of this Pokémon from the front in battle. */
|
|
1318
|
+
front_shiny: string | null;
|
|
1319
|
+
/** The shiny female depiction of this Pokémon from the front in battle. */
|
|
1320
|
+
front_shiny_female: string | null;
|
|
1321
|
+
}
|
|
1322
|
+
/** Showdown Sprites. */
|
|
1323
|
+
interface Showdown {
|
|
1324
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1325
|
+
front_default: string | null;
|
|
1326
|
+
/** The female depiction of this Pokémon from the front in battle. */
|
|
1327
|
+
front_female: string | null;
|
|
1328
|
+
/** The shiny depiction of this Pokémon from the front in battle. */
|
|
1329
|
+
front_shiny: string | null;
|
|
1330
|
+
/** The shiny female depiction of this Pokémon from the front in battle. */
|
|
1331
|
+
front_shiny_female: string | null;
|
|
1332
|
+
/** The default depiction of this Pokémon from the back in battle. */
|
|
1333
|
+
back_default: string | null;
|
|
1334
|
+
/** The female depiction of this Pokémon from the back in battle. */
|
|
1335
|
+
back_female: string | null;
|
|
1336
|
+
/** The shiny depiction of this Pokémon from the back in battle. */
|
|
1337
|
+
back_shiny: string | null;
|
|
1338
|
+
/** The shiny female depiction of this Pokémon from the back in battle. */
|
|
1339
|
+
back_shiny_female: string | null;
|
|
1340
|
+
}
|
|
1341
|
+
/** Generation-I Sprites. */
|
|
1342
|
+
interface GenerationISprites {
|
|
1343
|
+
/** Red-blue sprites of this Pokémon. */
|
|
1344
|
+
"red-blue": RedBlue;
|
|
1345
|
+
/** Yellow sprites of this Pokémon. */
|
|
1346
|
+
yellow: Yellow;
|
|
1347
|
+
}
|
|
1348
|
+
/** Red/Blue Sprites. */
|
|
1349
|
+
interface RedBlue {
|
|
1350
|
+
/** The default depiction of this Pokémon from the back in battle. */
|
|
1351
|
+
back_default: string | null;
|
|
1352
|
+
/** The gray depiction of this Pokémon from the back in battle. */
|
|
1353
|
+
back_gray: string | null;
|
|
1354
|
+
/** The transparent depiction of this Pokémon from the back in battle. */
|
|
1355
|
+
back_transparent: string | null;
|
|
1356
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1357
|
+
front_default: string | null;
|
|
1358
|
+
/** The gray depiction of this Pokémon from the front in battle. */
|
|
1359
|
+
front_gray: string | null;
|
|
1360
|
+
/** The transparent depiction of this Pokémon from the front in battle. */
|
|
1361
|
+
front_transparent: string | null;
|
|
1362
|
+
}
|
|
1363
|
+
/** Yellow sprites. */
|
|
1364
|
+
interface Yellow {
|
|
1365
|
+
/** The default depiction of this Pokémon from the back in battle. */
|
|
1366
|
+
back_default: string | null;
|
|
1367
|
+
/** The gray depiction of this Pokémon from the back in battle. */
|
|
1368
|
+
back_gray: string | null;
|
|
1369
|
+
/** The transparent depiction of this Pokémon from the back in battle. */
|
|
1370
|
+
back_transparent: string | null;
|
|
1371
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1372
|
+
front_default: string | null;
|
|
1373
|
+
/** The gray depiction of this Pokémon from the front in battle. */
|
|
1374
|
+
front_gray: string | null;
|
|
1375
|
+
/** The transparent depiction of this Pokémon from the front in battle. */
|
|
1376
|
+
front_transparent: string | null;
|
|
1377
|
+
}
|
|
1378
|
+
/** Generation-II Sprites. */
|
|
1379
|
+
interface GenerationIISprites {
|
|
1380
|
+
/** Crystal sprites of this Pokémon. */
|
|
1381
|
+
crystal: Crystal;
|
|
1382
|
+
/** Gold sprites of this Pokémon. */
|
|
1383
|
+
gold: Gold;
|
|
1384
|
+
/** Silver sprites of this Pokémon. */
|
|
1385
|
+
silver: Silver;
|
|
1386
|
+
}
|
|
1387
|
+
/** Crystal sprites. */
|
|
1388
|
+
interface Crystal {
|
|
1389
|
+
/** The default depiction of this Pokémon from the back in battle. */
|
|
1390
|
+
back_default: string | null;
|
|
1391
|
+
/** The shiny depiction of this Pokémon from the back in battle. */
|
|
1392
|
+
back_shiny: string | null;
|
|
1393
|
+
/** The back shiny transparent depiction of this Pokémon from the back in battle. */
|
|
1394
|
+
back_shiny_transparent: string | null;
|
|
1395
|
+
/** The transparent depiction of this Pokémon from the back in battle. */
|
|
1396
|
+
back_transparent: string | null;
|
|
1397
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1398
|
+
front_default: string | null;
|
|
1399
|
+
/** The shiny depiction of this Pokémon from the front in battle. */
|
|
1400
|
+
front_shiny: string | null;
|
|
1401
|
+
/** The front shiny transparent depiction of this Pokémon from the front in battle. */
|
|
1402
|
+
front_shiny_transparent: string | null;
|
|
1403
|
+
/** The transparent depiction of this Pokémon from the front in battle. */
|
|
1404
|
+
front_transparent: string | null;
|
|
1405
|
+
}
|
|
1406
|
+
/** Gold sprites of this Pokémon. */
|
|
1407
|
+
interface Gold {
|
|
1408
|
+
/** The default depiction of this Pokémon from the back in battle. */
|
|
1409
|
+
back_default: string | null;
|
|
1410
|
+
/** The shiny depiction of this Pokémon from the back in battle. */
|
|
1411
|
+
back_shiny: string | null;
|
|
1412
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1413
|
+
front_default: string | null;
|
|
1414
|
+
/** The shiny depiction of this Pokémon from the front in battle. */
|
|
1415
|
+
front_shiny: string | null;
|
|
1416
|
+
/** The transparent depiction of this Pokémon from the front in battle. */
|
|
1417
|
+
front_transparent: string | null;
|
|
1418
|
+
}
|
|
1419
|
+
/** Silver sprites. */
|
|
1420
|
+
interface Silver {
|
|
1421
|
+
/** The default depiction of this Pokémon from the back in battle. */
|
|
1422
|
+
back_default: string | null;
|
|
1423
|
+
/** The shiny depiction of this Pokémon from the back in battle. */
|
|
1424
|
+
back_shiny: string | null;
|
|
1425
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1426
|
+
front_default: string | null;
|
|
1427
|
+
/** The shiny depiction of this Pokémon from the front in battle. */
|
|
1428
|
+
front_shiny: string | null;
|
|
1429
|
+
/** The transparent depiction of this Pokémon from the front in battle. */
|
|
1430
|
+
front_transparent: string | null;
|
|
1431
|
+
}
|
|
1432
|
+
/** Generation-III Sprites. */
|
|
1433
|
+
interface GenerationIIISprites {
|
|
1434
|
+
/** Emerald sprites of this Pokémon. */
|
|
1435
|
+
emerald: Emerald;
|
|
1436
|
+
/** Firered-Leafgreen sprites of this Pokémon. */
|
|
1437
|
+
"firered-leafgreen": FireredLeafgreen;
|
|
1438
|
+
/** Ruby-Sapphire sprites of this Pokémon. */
|
|
1439
|
+
"ruby-sapphire": RubySapphire;
|
|
1440
|
+
}
|
|
1441
|
+
/** Emerald sprites. */
|
|
1442
|
+
interface Emerald {
|
|
1443
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1444
|
+
front_default: string | null;
|
|
1445
|
+
/** The shiny depiction of this Pokémon from the front in battle. */
|
|
1446
|
+
front_shiny: string | null;
|
|
1447
|
+
}
|
|
1448
|
+
/** FireRed LeafGreen sprites. */
|
|
1449
|
+
interface FireredLeafgreen {
|
|
1450
|
+
/** The default depiction of this Pokémon from the back in battle. */
|
|
1451
|
+
back_default: string | null;
|
|
1452
|
+
/** The shiny depiction of this Pokémon from the back in battle. */
|
|
1453
|
+
back_shiny: string | null;
|
|
1454
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1455
|
+
front_default: string | null;
|
|
1456
|
+
/** The shiny depiction of this Pokémon from the front in battle. */
|
|
1457
|
+
front_shiny: string | null;
|
|
1458
|
+
}
|
|
1459
|
+
/** Ruby/Sapphire sprites. */
|
|
1460
|
+
interface RubySapphire {
|
|
1461
|
+
/** The default depiction of this Pokémon from the back in battle. */
|
|
1462
|
+
back_default: string | null;
|
|
1463
|
+
/** The shiny depiction of this Pokémon from the back in battle. */
|
|
1464
|
+
back_shiny: string | null;
|
|
1465
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1466
|
+
front_default: string | null;
|
|
1467
|
+
/** The shiny depiction of this Pokémon from the front in battle. */
|
|
1468
|
+
front_shiny: string | null;
|
|
1469
|
+
}
|
|
1470
|
+
/** Generation-IV Sprites. */
|
|
1471
|
+
interface GenerationIVSprites {
|
|
1472
|
+
/** Diamond-pearl Generation sprites of this Pokémon. */
|
|
1473
|
+
"diamond-pearl": DiamondPearl;
|
|
1474
|
+
/** Heartgold-Soulsilver sprites of this Pokémon. */
|
|
1475
|
+
"heartgold-soulsilver": HeartgoldSoulsilver;
|
|
1476
|
+
/** Platinum sprites of this Pokémon. */
|
|
1477
|
+
platinum: Platinum;
|
|
1478
|
+
}
|
|
1479
|
+
/** Diamond-Pearl sprites of this Pokémon. */
|
|
1480
|
+
interface DiamondPearl {
|
|
1481
|
+
/** The default depiction of this Pokémon from the back in battle. */
|
|
1482
|
+
back_default: string | null;
|
|
1483
|
+
/** The shiny depiction of this Pokémon from the back in battle. */
|
|
1484
|
+
back_shiny: string | null;
|
|
1485
|
+
/** The female depiction of this Pokémon from the back in battle. */
|
|
1486
|
+
back_female: string | null;
|
|
1487
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1488
|
+
front_default: string | null;
|
|
1489
|
+
/** The shiny depiction of this Pokémon from the front in battle. */
|
|
1490
|
+
front_shiny: string | null;
|
|
1491
|
+
/** The shiny female depiction of this Pokémon from the back in battle. */
|
|
1492
|
+
back_shiny_female: string | null;
|
|
1493
|
+
/** The female depiction of this Pokémon from the front in battle. */
|
|
1494
|
+
front_female: string | null;
|
|
1495
|
+
/** The shiny female depiction of this Pokémon from the back in battle. */
|
|
1496
|
+
front_shiny_female: string | null;
|
|
1497
|
+
}
|
|
1498
|
+
/** HeartGold-SoulSilver sprites of this Pokémon. */
|
|
1499
|
+
interface HeartgoldSoulsilver {
|
|
1500
|
+
/** The default depiction of this Pokémon from the back in battle. */
|
|
1501
|
+
back_default: string | null;
|
|
1502
|
+
/** The shiny depiction of this Pokémon from the back in battle. */
|
|
1503
|
+
back_shiny: string | null;
|
|
1504
|
+
/** The female depiction of this Pokémon from the back in battle. */
|
|
1505
|
+
back_female: string | null;
|
|
1506
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1507
|
+
front_default: string | null;
|
|
1508
|
+
/** The shiny depiction of this Pokémon from the front in battle. */
|
|
1509
|
+
front_shiny: string | null;
|
|
1510
|
+
/** The shiny female depiction of this Pokémon from the back in battle. */
|
|
1511
|
+
back_shiny_female: string | null;
|
|
1512
|
+
/** The female depiction of this Pokémon from the front in battle. */
|
|
1513
|
+
front_female: string | null;
|
|
1514
|
+
/** The shiny female depiction of this Pokémon from the back in battle. */
|
|
1515
|
+
front_shiny_female: string | null;
|
|
1516
|
+
}
|
|
1517
|
+
/** Platinum sprites of this Pokémon. */
|
|
1518
|
+
interface Platinum {
|
|
1519
|
+
/** The default depiction of this Pokémon from the back in battle. */
|
|
1520
|
+
back_default: string | null;
|
|
1521
|
+
/** The shiny depiction of this Pokémon from the back in battle. */
|
|
1522
|
+
back_shiny: string | null;
|
|
1523
|
+
/** The female depiction of this Pokémon from the back in battle. */
|
|
1524
|
+
back_female: string | null;
|
|
1525
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1526
|
+
front_default: string | null;
|
|
1527
|
+
/** The shiny depiction of this Pokémon from the front in battle. */
|
|
1528
|
+
front_shiny: string | null;
|
|
1529
|
+
/** The shiny female depiction of this Pokémon from the back in battle. */
|
|
1530
|
+
back_shiny_female: string | null;
|
|
1531
|
+
/** The female depiction of this Pokémon from the front in battle. */
|
|
1532
|
+
front_female: string | null;
|
|
1533
|
+
/** The shiny female depiction of this Pokémon from the back in battle. */
|
|
1534
|
+
front_shiny_female: string | null;
|
|
1535
|
+
}
|
|
1536
|
+
/** Generation-V Sprites. */
|
|
1537
|
+
interface GenerationVSprites {
|
|
1538
|
+
/** Black-white sprites of this Pokémon. */
|
|
1539
|
+
"black-white": BlackWhite;
|
|
1540
|
+
}
|
|
1541
|
+
/** Black/White sprites. */
|
|
1542
|
+
interface BlackWhite {
|
|
1543
|
+
/** The animated sprite of this Pokémon. */
|
|
1544
|
+
animated: Animated;
|
|
1545
|
+
/** The default depiction of this Pokémon from the back in battle. */
|
|
1546
|
+
back_default: string | null;
|
|
1547
|
+
/** The shiny depiction of this Pokémon from the back in battle. */
|
|
1548
|
+
back_shiny: string | null;
|
|
1549
|
+
/** The female depiction of this Pokémon from the back in battle. */
|
|
1550
|
+
back_female: string | null;
|
|
1551
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1552
|
+
front_default: string | null;
|
|
1553
|
+
/** The shiny depiction of this Pokémon from the front in battle. */
|
|
1554
|
+
front_shiny: string | null;
|
|
1555
|
+
/** The shiny female depiction of this Pokémon from the back in battle. */
|
|
1556
|
+
back_shiny_female: string | null;
|
|
1557
|
+
/** The female depiction of this Pokémon from the front in battle. */
|
|
1558
|
+
front_female: string | null;
|
|
1559
|
+
/** The shiny female depiction of this Pokémon from the back in battle. */
|
|
1560
|
+
front_shiny_female: string | null;
|
|
1561
|
+
}
|
|
1562
|
+
/** Animated sprites of this Pokémon. */
|
|
1563
|
+
interface Animated {
|
|
1564
|
+
/** The default depiction of this Pokémon from the back in battle. */
|
|
1565
|
+
back_default: string | null;
|
|
1566
|
+
/** The shiny depiction of this Pokémon from the back in battle. */
|
|
1567
|
+
back_shiny: string | null;
|
|
1568
|
+
/** The female depiction of this Pokémon from the back in battle. */
|
|
1569
|
+
back_female: string | null;
|
|
1570
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1571
|
+
front_default: string | null;
|
|
1572
|
+
/** The shiny depiction of this Pokémon from the front in battle. */
|
|
1573
|
+
front_shiny: string | null;
|
|
1574
|
+
/** The shiny female depiction of this Pokémon from the back in battle. */
|
|
1575
|
+
back_shiny_female: string | null;
|
|
1576
|
+
/** The female depiction of this Pokémon from the front in battle. */
|
|
1577
|
+
front_female: string | null;
|
|
1578
|
+
/** The shiny female depiction of this Pokémon from the back in battle. */
|
|
1579
|
+
front_shiny_female: string | null;
|
|
1580
|
+
}
|
|
1581
|
+
/** Generation-VI Sprites. */
|
|
1582
|
+
interface GenerationVISprites {
|
|
1583
|
+
/** Omegaruby-Alphasapphire sprites of this Pokémon. */
|
|
1584
|
+
"omegaruby-alphasapphire": OmegarubyAlphasapphire;
|
|
1585
|
+
/** X-Y sprites of this Pokémon. */
|
|
1586
|
+
"x-y": XY;
|
|
1587
|
+
}
|
|
1588
|
+
/** Omega/Ruby Alpha/Sapphire sprites. */
|
|
1589
|
+
interface OmegarubyAlphasapphire {
|
|
1590
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1591
|
+
front_default: string | null;
|
|
1592
|
+
/** The female depiction of this Pokémon from the front in battle. */
|
|
1593
|
+
front_female: string | null;
|
|
1594
|
+
/** The shiny depiction of this Pokémon from the front in battle. */
|
|
1595
|
+
front_shiny: string | null;
|
|
1596
|
+
/** The shiny female depiction of this Pokémon from the back in battle. */
|
|
1597
|
+
front_shiny_female: string | null;
|
|
1598
|
+
}
|
|
1599
|
+
/** XY sprites. */
|
|
1600
|
+
interface XY {
|
|
1601
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1602
|
+
front_default: string | null;
|
|
1603
|
+
/** The female depiction of this Pokémon from the front in battle. */
|
|
1604
|
+
front_female: string | null;
|
|
1605
|
+
/** The shiny depiction of this Pokémon from the front in battle. */
|
|
1606
|
+
front_shiny: string | null;
|
|
1607
|
+
/** The shiny female depiction of this Pokémon from the back in battle. */
|
|
1608
|
+
front_shiny_female: string | null;
|
|
1609
|
+
}
|
|
1610
|
+
/** Generation-VII Sprites. */
|
|
1611
|
+
interface GenerationVIISprites {
|
|
1612
|
+
/** Icon sprites of this Pokémon. */
|
|
1613
|
+
icons: GenerationViiIcons;
|
|
1614
|
+
/** Ultra-sun-ultra-moon sprites of this Pokémon. */
|
|
1615
|
+
"ultra-sun-ultra-moon": UltraSunUltraMoon;
|
|
1616
|
+
}
|
|
1617
|
+
/** Generation VII icons. */
|
|
1618
|
+
interface GenerationViiIcons {
|
|
1619
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1620
|
+
front_default: string | null;
|
|
1621
|
+
/** The female depiction of this Pokémon from the front in battle. */
|
|
1622
|
+
front_female: string | null;
|
|
1623
|
+
}
|
|
1624
|
+
/** Ultra Sun Ultra Moon sprites. */
|
|
1625
|
+
interface UltraSunUltraMoon {
|
|
1626
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1627
|
+
front_default: string | null;
|
|
1628
|
+
/** The female depiction of this Pokémon from the front in battle. */
|
|
1629
|
+
front_female: string | null;
|
|
1630
|
+
/** The shiny depiction of this Pokémon from the front in battle. */
|
|
1631
|
+
front_shiny: string | null;
|
|
1632
|
+
/** The shiny female depiction of this Pokémon from the back in battle. */
|
|
1633
|
+
front_shiny_female: string | null;
|
|
1634
|
+
}
|
|
1635
|
+
/** Generation-VIII Sprites. */
|
|
1636
|
+
interface GenerationVIIISprites {
|
|
1637
|
+
/** Icon sprites of this Pokémon. */
|
|
1638
|
+
icons: GenerationViiiIcons;
|
|
1639
|
+
/** Brilliant Diamond and Shining Pearl sprites of this Pokémon. */
|
|
1640
|
+
"brilliant-diamond-shining-pearl": BrilliantDiamondShiningPearl;
|
|
1641
|
+
}
|
|
1642
|
+
/** Generation VIII icons. */
|
|
1643
|
+
interface GenerationViiiIcons {
|
|
1644
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1645
|
+
front_default: string | null;
|
|
1646
|
+
/** The female depiction of this Pokémon from the front in battle. */
|
|
1647
|
+
front_female: string | null;
|
|
1648
|
+
}
|
|
1649
|
+
/** Brilliant Diamond and Shining Pearl sprites. */
|
|
1650
|
+
interface BrilliantDiamondShiningPearl {
|
|
1651
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1652
|
+
front_default: string | null;
|
|
1653
|
+
/** The female depiction of this Pokémon from the front in battle. */
|
|
1654
|
+
front_female: string | null;
|
|
1655
|
+
}
|
|
1656
|
+
/** Generation-IX Sprites */
|
|
1657
|
+
interface GenerationIXSprites {
|
|
1658
|
+
/** Scarlet and Violet sprites of this Pokémon. */
|
|
1659
|
+
"scarlet-violet": ScarletViolet;
|
|
1660
|
+
}
|
|
1661
|
+
/** Scarlet and Violet sprites. */
|
|
1662
|
+
interface ScarletViolet {
|
|
1663
|
+
/** The default depiction of this Pokémon from the front in battle. */
|
|
1664
|
+
front_default: string | null;
|
|
1665
|
+
/** The female depiction of this Pokémon from the front in battle. */
|
|
1666
|
+
front_female: string | null;
|
|
1667
|
+
}
|
|
1668
|
+
/**
|
|
1669
|
+
* ## Location Area Encounter
|
|
1670
|
+
* Pokémon location areas where Pokémon can be found.
|
|
1671
|
+
*/
|
|
1672
|
+
interface LocationAreaEncounter {
|
|
1673
|
+
/** The location area the referenced Pokémon can be encountered in. */
|
|
1674
|
+
location_area: NamedAPIResource<LocationArea>;
|
|
1675
|
+
/** A list of versions and encounters with the referenced Pokémon that might happen. */
|
|
1676
|
+
version_details: VersionEncounterDetail[];
|
|
1677
|
+
}
|
|
1678
|
+
/**
|
|
1679
|
+
* ## Pokémon Colors
|
|
1680
|
+
* Colors used for sorting Pokémon in a Pokédex.
|
|
1681
|
+
* The color listed in the Pokédex is usually the color most apparent or covering each Pokémon's body.
|
|
1682
|
+
* No orange category exists; Pokémon that are primarily orange are listed as red or brown.
|
|
1683
|
+
*/
|
|
1684
|
+
interface PokemonColor {
|
|
1685
|
+
/** The identifier for this resource. */
|
|
1686
|
+
id: number;
|
|
1687
|
+
/** The name for this resource. */
|
|
1688
|
+
name: "black" | "blue" | "brown" | "gray" | "green" | "pink" | "purple" | "red" | "white" | "yellow";
|
|
1689
|
+
/** The name of this resource listed in different languages. */
|
|
1690
|
+
names: Name[];
|
|
1691
|
+
/** A list of the Pokémon species that have this color. */
|
|
1692
|
+
pokemon_species: NamedAPIResource<PokemonSpecies>[];
|
|
1693
|
+
}
|
|
1694
|
+
/**
|
|
1695
|
+
* ## Pokémon Form
|
|
1696
|
+
* Some Pokémon may appear in one of multiple, visually different forms.
|
|
1697
|
+
* These differences are purely cosmetic. For variations within a Pokémon species,
|
|
1698
|
+
* which do differ in more than just visuals, the 'Pokémon' entity is used to represent such a variety.
|
|
1699
|
+
*/
|
|
1700
|
+
interface PokemonForm {
|
|
1701
|
+
/** The identifier for this resource. */
|
|
1702
|
+
id: number;
|
|
1703
|
+
/** The name for this resource. */
|
|
1704
|
+
name: string;
|
|
1705
|
+
/** The order in which forms should be sorted within all forms.
|
|
1706
|
+
* Multiple forms may have equal order, in which case they should fall back on sorting by name.
|
|
1707
|
+
*/
|
|
1708
|
+
order: number;
|
|
1709
|
+
/** The order in which forms should be sorted within a species' forms. */
|
|
1710
|
+
form_order: number;
|
|
1711
|
+
/** True for exactly one form used as the default for each Pokémon. */
|
|
1712
|
+
is_default: boolean;
|
|
1713
|
+
/** Whether or not this form can only happen during battle. */
|
|
1714
|
+
is_battle_only: boolean;
|
|
1715
|
+
/** Whether or not this form requires mega evolution. */
|
|
1716
|
+
is_mega: boolean;
|
|
1717
|
+
/** The name of this form. */
|
|
1718
|
+
form_name: string;
|
|
1719
|
+
/** The Pokémon that can take on this form. */
|
|
1720
|
+
pokemon: NamedAPIResource<Pokemon>;
|
|
1721
|
+
/** A set of sprites used to depict this Pokémon form in the game. */
|
|
1722
|
+
sprites: PokemonFormSprites;
|
|
1723
|
+
/** The version group this Pokémon form was introduced in. */
|
|
1724
|
+
version_group: NamedAPIResource<VersionGroup>;
|
|
1725
|
+
/** The form specific full name of this Pokémon form, or empty if the form does not have a specific name. */
|
|
1726
|
+
names: Name[];
|
|
1727
|
+
/** The form specific form name of this Pokémon form, or empty if the form does not have a specific name. */
|
|
1728
|
+
form_names: Name[];
|
|
1729
|
+
/** A list of details showing types this Pokémon has. */
|
|
1730
|
+
types: PokemonType[];
|
|
1731
|
+
/**
|
|
1732
|
+
* The conditions that trigger this (usually battle-only) form, such as holding a Mega Stone or
|
|
1733
|
+
* having a specific ability. Empty for forms that are not triggered.
|
|
1734
|
+
*/
|
|
1735
|
+
trigger_conditions: PokemonFormCondition[];
|
|
1736
|
+
}
|
|
1737
|
+
/** A condition that causes a Pokémon to take on a particular form. */
|
|
1738
|
+
interface PokemonFormCondition {
|
|
1739
|
+
/** The name of the resource that triggers the form. */
|
|
1740
|
+
name: string;
|
|
1741
|
+
/** The URL of the resource that triggers the form. */
|
|
1742
|
+
url: string;
|
|
1743
|
+
/** What kind of resource triggers the form, e.g. `held-item` or `ability`. */
|
|
1744
|
+
trigger: string;
|
|
1745
|
+
/** The form the Pokémon changes from, when the condition switches between two forms. */
|
|
1746
|
+
base_form?: NamedAPIResource<PokemonForm>;
|
|
1747
|
+
}
|
|
1748
|
+
/**
|
|
1749
|
+
* Sprites used to depict this Pokémon form in the game.
|
|
1750
|
+
*/
|
|
1751
|
+
interface PokemonFormSprites {
|
|
1752
|
+
/** The default depiction of this Pokémon form from the front in battle. */
|
|
1753
|
+
front_default: string | null;
|
|
1754
|
+
/** The female depiction of this Pokémon form from the front in battle. */
|
|
1755
|
+
front_female: string | null;
|
|
1756
|
+
/** The shiny depiction of this Pokémon form from the front in battle. */
|
|
1757
|
+
front_shiny: string | null;
|
|
1758
|
+
/** The shiny female depiction of this Pokémon form from the front in battle. */
|
|
1759
|
+
front_shiny_female: string | null;
|
|
1760
|
+
/** The default depiction of this Pokémon form from the back in battle. */
|
|
1761
|
+
back_default: string | null;
|
|
1762
|
+
/** The female depiction of this Pokémon form from the back in battle. */
|
|
1763
|
+
back_female: string | null;
|
|
1764
|
+
/** The shiny depiction of this Pokémon form from the back in battle. */
|
|
1765
|
+
back_shiny: string | null;
|
|
1766
|
+
/** The shiny female depiction of this Pokémon form from the back in battle. */
|
|
1767
|
+
back_shiny_female: string | null;
|
|
1768
|
+
/** Version Sprites of this Pokémon form. */
|
|
1769
|
+
versions: PokemonFormVersionSprites;
|
|
1770
|
+
}
|
|
1771
|
+
/**
|
|
1772
|
+
* Version sprites of a Pokémon form.
|
|
1773
|
+
*
|
|
1774
|
+
* Only the two generations that ship form-specific sprites appear, which is why
|
|
1775
|
+
* this is not the Pokémon-level {@link VersionSprites}.
|
|
1776
|
+
*/
|
|
1777
|
+
interface PokemonFormVersionSprites {
|
|
1778
|
+
/** Generation-VIII Sprites of this Pokémon form. */
|
|
1779
|
+
"generation-viii": PokemonFormGenerationVIIISprites;
|
|
1780
|
+
/** Generation-IX Sprites of this Pokémon form. */
|
|
1781
|
+
"generation-ix": GenerationIXSprites;
|
|
1782
|
+
}
|
|
1783
|
+
/** Generation-VIII sprites of a Pokémon form. */
|
|
1784
|
+
interface PokemonFormGenerationVIIISprites {
|
|
1785
|
+
/** Brilliant Diamond and Shining Pearl sprites of this Pokémon form. */
|
|
1786
|
+
"brilliant-diamond-shining-pearl": BrilliantDiamondShiningPearl;
|
|
1787
|
+
}
|
|
1788
|
+
/**
|
|
1789
|
+
* ## Pokémon Habitat
|
|
1790
|
+
* Habitats are generally different terrain Pokémon can be found in
|
|
1791
|
+
* but can also be areas designated for rare or legendary Pokémon.
|
|
1792
|
+
*/
|
|
1793
|
+
interface PokemonHabitat {
|
|
1794
|
+
/** The identifier for this resource. */
|
|
1795
|
+
id: number;
|
|
1796
|
+
/** The name for this resource. */
|
|
1797
|
+
name: "cave" | "forest" | "grassland" | "mountain" | "rare" | "rough-terrain" | "sea" | "urban" | "waters-edge";
|
|
1798
|
+
/** The name of this resource listed in different languages. */
|
|
1799
|
+
names: Name[];
|
|
1800
|
+
/** A list of the Pokémon species that can be found in this habitat. */
|
|
1801
|
+
pokemon_species: NamedAPIResource<PokemonSpecies>[];
|
|
1802
|
+
}
|
|
1803
|
+
/**
|
|
1804
|
+
* ## Pokémon Shape
|
|
1805
|
+
* Shapes used for sorting Pokémon in a Pokédex.
|
|
1806
|
+
*/
|
|
1807
|
+
interface PokemonShape {
|
|
1808
|
+
/** The identifier for this resource. */
|
|
1809
|
+
id: number;
|
|
1810
|
+
/** The name for this resource. */
|
|
1811
|
+
name: string;
|
|
1812
|
+
/** The "scientific" name of this Pokémon shape listed in different languages. */
|
|
1813
|
+
awesome_names: AwesomeName[];
|
|
1814
|
+
/** The name of this resource listed in different languages. */
|
|
1815
|
+
names: Name[];
|
|
1816
|
+
/** A list of the Pokémon species that have this shape. */
|
|
1817
|
+
pokemon_species: NamedAPIResource<PokemonSpecies>[];
|
|
1818
|
+
}
|
|
1819
|
+
/**
|
|
1820
|
+
* The "scientific" name of the Pokémon shape listed in different languages.
|
|
1821
|
+
*/
|
|
1822
|
+
interface AwesomeName {
|
|
1823
|
+
/** The localized "scientific" name for an API resource in a specific language. */
|
|
1824
|
+
awesome_name: string;
|
|
1825
|
+
/** The language this "scientific" name is in. */
|
|
1826
|
+
language: NamedAPIResource<Language>;
|
|
1827
|
+
}
|
|
1828
|
+
/**
|
|
1829
|
+
* ## Pokémon Species
|
|
1830
|
+
* A Pokémon Species forms the basis for at least one Pokémon.
|
|
1831
|
+
* Attributes of a Pokémon species are shared across all varieties of Pokémon within the species.
|
|
1832
|
+
* A good example is Wormadam; Wormadam is the species which can be found in three different varieties,
|
|
1833
|
+
* Wormadam-Trash, Wormadam-Sandy and Wormadam-Plant */
|
|
1834
|
+
interface PokemonSpecies {
|
|
1835
|
+
/** The identifier for this resource. */
|
|
1836
|
+
id: number;
|
|
1837
|
+
/** The name for this resource. */
|
|
1838
|
+
name: string;
|
|
1839
|
+
/** The order in which species should be sorted. Based on National Dex order, except families are grouped together and sorted by stage. */
|
|
1840
|
+
order: number;
|
|
1841
|
+
/** The chance of this Pokémon being female, in eighths; or -1 for genderless. */
|
|
1842
|
+
gender_rate: number;
|
|
1843
|
+
/** The base capture rate; up to 255. The higher the number, the easier the catch. */
|
|
1844
|
+
capture_rate: number;
|
|
1845
|
+
/** The happiness when caught by a normal Pokéball; up to 255. The higher the number, the happier the Pokémon. */
|
|
1846
|
+
base_happiness: number;
|
|
1847
|
+
/** Whether or not this is a baby Pokémon. */
|
|
1848
|
+
is_baby: boolean;
|
|
1849
|
+
/** Whether or not this is a legendary Pokémon. */
|
|
1850
|
+
is_legendary: boolean;
|
|
1851
|
+
/** Whether or not this is a mythical Pokémon. */
|
|
1852
|
+
is_mythical: boolean;
|
|
1853
|
+
/** Initial hatch counter: one must walk 255 × (hatch_counter + 1) steps before this Pokémon's egg hatches, unless utilizing bonuses like Flame Body's. */
|
|
1854
|
+
hatch_counter: number;
|
|
1855
|
+
/** Whether or not this Pokémon has visual gender differences. */
|
|
1856
|
+
has_gender_differences: boolean;
|
|
1857
|
+
/** Whether or not this Pokémon has multiple forms and can switch between them. */
|
|
1858
|
+
forms_switchable: boolean;
|
|
1859
|
+
/** The rate at which this Pokémon species gains levels. */
|
|
1860
|
+
growth_rate: NamedAPIResource<GrowthRate>;
|
|
1861
|
+
/** A list of Pokédexes and the indexes reserved within them for this Pokémon species. */
|
|
1862
|
+
pokedex_numbers: PokemonSpeciesDexEntry[];
|
|
1863
|
+
/** A list of egg groups this Pokémon species is a member of. */
|
|
1864
|
+
egg_groups: NamedAPIResource<EggGroup>[];
|
|
1865
|
+
/** The color of this Pokémon for Pokédex search. */
|
|
1866
|
+
color: NamedAPIResource<PokemonColor>;
|
|
1867
|
+
/** The shape of this Pokémon for Pokédex search. */
|
|
1868
|
+
shape: NamedAPIResource<PokemonShape>;
|
|
1869
|
+
/** The Pokémon species that evolves into this Pokémon species, if any. */
|
|
1870
|
+
evolves_from_species: NamedAPIResource<PokemonSpecies> | null;
|
|
1871
|
+
/** The evolution chain this Pokémon species is a member of. */
|
|
1872
|
+
evolution_chain: APIResource<EvolutionChain>;
|
|
1873
|
+
/** The habitat this Pokémon species can be encountered in. */
|
|
1874
|
+
habitat: NamedAPIResource<PokemonHabitat>;
|
|
1875
|
+
/** The generation this Pokémon species was introduced in. */
|
|
1876
|
+
generation: NamedAPIResource<Generation>;
|
|
1877
|
+
/** The name of this resource listed in different languages. */
|
|
1878
|
+
names: Name[];
|
|
1879
|
+
/** A list of encounters that can be had with this Pokémon species in pal park. */
|
|
1880
|
+
pal_park_encounters: PalParkEncounterArea[];
|
|
1881
|
+
/** A list of flavor text entries for this Pokémon species. */
|
|
1882
|
+
flavor_text_entries: FlavorText[];
|
|
1883
|
+
/** Descriptions of different forms Pokémon take on within the Pokémon species. */
|
|
1884
|
+
form_descriptions: Description[];
|
|
1885
|
+
/** The genus of this Pokémon species listed in multiple languages. */
|
|
1886
|
+
genera: Genus[];
|
|
1887
|
+
/** A list of the Pokémon that exist within this Pokémon species. */
|
|
1888
|
+
varieties: PokemonSpeciesVariety[];
|
|
1889
|
+
}
|
|
1890
|
+
/**
|
|
1891
|
+
* The genus of the given Pokémon species listed in multiple languages.
|
|
1892
|
+
*/
|
|
1893
|
+
interface Genus {
|
|
1894
|
+
/** The localized genus for the referenced Pokémon species. */
|
|
1895
|
+
genus: string;
|
|
1896
|
+
/** The language this genus is in. */
|
|
1897
|
+
language: NamedAPIResource<Language>;
|
|
1898
|
+
}
|
|
1899
|
+
/** Pokédexes and the indexes reserved within them for the given Pokémon species. */
|
|
1900
|
+
interface PokemonSpeciesDexEntry {
|
|
1901
|
+
/** The index number within the Pokédex. */
|
|
1902
|
+
entry_number: number;
|
|
1903
|
+
/** The Pokédex the referenced Pokémon species can be found in. */
|
|
1904
|
+
pokedex: NamedAPIResource<Pokedex>;
|
|
1905
|
+
}
|
|
1906
|
+
/**
|
|
1907
|
+
* Encounter that can be had with the given Pokémon species in pal park.
|
|
1908
|
+
*/
|
|
1909
|
+
interface PalParkEncounterArea {
|
|
1910
|
+
/** The base score given to the player when the referenced Pokémon is caught during a pal park run. */
|
|
1911
|
+
base_score: number;
|
|
1912
|
+
/** The base rate for encountering the referenced Pokémon in this pal park area. */
|
|
1913
|
+
rate: number;
|
|
1914
|
+
/** The pal park area where this encounter happens. */
|
|
1915
|
+
area: NamedAPIResource<PalParkArea>;
|
|
1916
|
+
}
|
|
1917
|
+
/**
|
|
1918
|
+
* Pokémon that exist within this Pokémon species.
|
|
1919
|
+
*/
|
|
1920
|
+
interface PokemonSpeciesVariety {
|
|
1921
|
+
/** Whether this variety is the default variety. */
|
|
1922
|
+
is_default: boolean;
|
|
1923
|
+
/** The Pokémon variety. */
|
|
1924
|
+
pokemon: NamedAPIResource<Pokemon>;
|
|
1925
|
+
}
|
|
1926
|
+
//#endregion
|
|
1927
|
+
//#region src/models/Pokemon/ability.d.ts
|
|
1928
|
+
/**
|
|
1929
|
+
* ## Ability
|
|
1930
|
+
* Abilities provide passive effects for Pokémon in battle or in the overworld.
|
|
1931
|
+
* Pokémon have multiple possible abilities but can have only one ability at a time.
|
|
1932
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Ability) for greater detail.
|
|
1933
|
+
*/
|
|
1934
|
+
interface Ability {
|
|
1935
|
+
/** The identifier for this resource. */
|
|
1936
|
+
id: number;
|
|
1937
|
+
/** The name for this resource. */
|
|
1938
|
+
name: string;
|
|
1939
|
+
/** Whether or not this ability originated in the main series of the video games. */
|
|
1940
|
+
is_main_series: boolean;
|
|
1941
|
+
/** The generation this ability originated in. */
|
|
1942
|
+
generation: NamedAPIResource<Generation>;
|
|
1943
|
+
/** The name of this resource listed in different languages. */
|
|
1944
|
+
names: Name[];
|
|
1945
|
+
/** The effect of this ability listed in different languages. */
|
|
1946
|
+
effect_entries: VerboseEffect[];
|
|
1947
|
+
/** The list of previous effects this ability has had across version groups. */
|
|
1948
|
+
effect_changes: AbilityEffectChange[];
|
|
1949
|
+
/** The flavor text of this ability listed in different languages. */
|
|
1950
|
+
flavor_text_entries: AbilityFlavorText[];
|
|
1951
|
+
/** A list of Pokémon that could potentially have this ability. */
|
|
1952
|
+
pokemon: AbilityPokemon[];
|
|
1953
|
+
}
|
|
1954
|
+
/**
|
|
1955
|
+
* Previous effects an ability has had across version groups.
|
|
1956
|
+
*/
|
|
1957
|
+
interface AbilityEffectChange {
|
|
1958
|
+
/** The previous effect of this ability listed in different languages. */
|
|
1959
|
+
effect_entries: Effect[];
|
|
1960
|
+
/** The version group in which the previous effect of this ability originated. */
|
|
1961
|
+
version_group: NamedAPIResource<VersionGroup>;
|
|
1962
|
+
}
|
|
1963
|
+
/**
|
|
1964
|
+
* The flavor text of an ability.
|
|
1965
|
+
*/
|
|
1966
|
+
interface AbilityFlavorText {
|
|
1967
|
+
/** The localized name for an API resource in a specific language. */
|
|
1968
|
+
flavor_text: string;
|
|
1969
|
+
/** The language this text resource is in. */
|
|
1970
|
+
language: NamedAPIResource<Language>;
|
|
1971
|
+
/** The version group that uses this flavor text. */
|
|
1972
|
+
version_group: NamedAPIResource<VersionGroup>;
|
|
1973
|
+
}
|
|
1974
|
+
/**
|
|
1975
|
+
* Pokémon that could potentially have the given ability.
|
|
1976
|
+
*/
|
|
1977
|
+
interface AbilityPokemon {
|
|
1978
|
+
/** Whether or not this is a hidden ability for the referenced Pokémon. */
|
|
1979
|
+
is_hidden: boolean;
|
|
1980
|
+
/**
|
|
1981
|
+
* Pokémon have 3 ability 'slots' which hold references to possible abilities they could have.
|
|
1982
|
+
* This is the slot of this ability for the referenced pokemon.
|
|
1983
|
+
*/
|
|
1984
|
+
slot: number;
|
|
1985
|
+
/** The Pokémon this ability could belong to. */
|
|
1986
|
+
pokemon: NamedAPIResource<Pokemon>;
|
|
1987
|
+
}
|
|
1988
|
+
//#endregion
|
|
1989
|
+
//#region src/models/Pokemon/gender.d.ts
|
|
1990
|
+
/**
|
|
1991
|
+
* ## Gender
|
|
1992
|
+
* Genders were introduced in Generation II for the purposes of breeding Pokémon
|
|
1993
|
+
* but can also result in visual differences or even different evolutionary lines.
|
|
1994
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Gender) for greater detail.
|
|
1995
|
+
*/
|
|
1996
|
+
interface Gender {
|
|
1997
|
+
/** The identifier for this resource. */
|
|
1998
|
+
id: number;
|
|
1999
|
+
/** The name for this resource. */
|
|
2000
|
+
name: "male" | "female" | "genderless";
|
|
2001
|
+
/** A list of Pokémon species that can be this gender and how likely it is that they will be. */
|
|
2002
|
+
pokemon_species_details: PokemonSpeciesGender[];
|
|
2003
|
+
/** A list of Pokémon species that required this gender in order for a Pokémon to evolve into them. */
|
|
2004
|
+
required_for_evolution: NamedAPIResource<PokemonSpecies>[];
|
|
2005
|
+
}
|
|
2006
|
+
/**
|
|
2007
|
+
* Pokémon species that can be this gender and how likely it is that they will be.
|
|
2008
|
+
*/
|
|
2009
|
+
interface PokemonSpeciesGender {
|
|
2010
|
+
/** The chance of this Pokémon being female, in eighths; or -1 for genderless. */
|
|
2011
|
+
rate: number;
|
|
2012
|
+
/** A Pokémon species that can be the referenced gender. */
|
|
2013
|
+
pokemon_species: NamedAPIResource<PokemonSpecies>;
|
|
2014
|
+
}
|
|
2015
|
+
//#endregion
|
|
2016
|
+
//#region src/models/Moves/moves.d.ts
|
|
2017
|
+
/**
|
|
2018
|
+
* ## Move Target
|
|
2019
|
+
* Targets moves can be directed at during battle. Targets can be Pokémon, environments or even other moves.
|
|
2020
|
+
*/
|
|
2021
|
+
interface MoveTarget {
|
|
2022
|
+
/** The identifier for this resource. */
|
|
2023
|
+
id: number;
|
|
2024
|
+
/** The name for this resource. */
|
|
2025
|
+
name: string;
|
|
2026
|
+
/** The description of this resource listed in different languages. */
|
|
2027
|
+
descriptions: Description[];
|
|
2028
|
+
/** A list of moves that are directed at this target. */
|
|
2029
|
+
moves: NamedAPIResource<Move>[];
|
|
2030
|
+
/** The name of this resource listed in different languages. */
|
|
2031
|
+
names: Name[];
|
|
2032
|
+
}
|
|
2033
|
+
/**
|
|
2034
|
+
* ## Move Learn Method
|
|
2035
|
+
* Methods by which Pokémon can learn moves.
|
|
2036
|
+
*/
|
|
2037
|
+
interface MoveLearnMethod {
|
|
2038
|
+
/** The identifier for this resource. */
|
|
2039
|
+
id: number;
|
|
2040
|
+
/** The name for this resource. */
|
|
2041
|
+
name: string;
|
|
2042
|
+
/** The description of this resource listed in different languages. */
|
|
2043
|
+
descriptions: Description[];
|
|
2044
|
+
/** The name of this resource listed in different languages. */
|
|
2045
|
+
names: Name[];
|
|
2046
|
+
/** A list of version groups where moves can be learned through this method. */
|
|
2047
|
+
version_groups: NamedAPIResource<VersionGroup>[];
|
|
2048
|
+
}
|
|
2049
|
+
/**
|
|
2050
|
+
* ## Move Damage Class
|
|
2051
|
+
* Damage classes moves can have, e.g. physical, special, or non-damaging.
|
|
2052
|
+
*/
|
|
2053
|
+
interface MoveDamageClass {
|
|
2054
|
+
/** The identifier for this resource. */
|
|
2055
|
+
id: number;
|
|
2056
|
+
/** The name for this resource. */
|
|
2057
|
+
name: string;
|
|
2058
|
+
/** The description of this resource listed in different languages. */
|
|
2059
|
+
descriptions: Description[];
|
|
2060
|
+
/** A list of moves that fall into this damage class. */
|
|
2061
|
+
moves: NamedAPIResource<Move>[];
|
|
2062
|
+
/** The name of this resource listed in different languages. */
|
|
2063
|
+
names: Name[];
|
|
2064
|
+
}
|
|
2065
|
+
/**
|
|
2066
|
+
* ## Move Category
|
|
2067
|
+
* Very general categories that loosely group move effects.
|
|
2068
|
+
*/
|
|
2069
|
+
interface MoveCategory {
|
|
2070
|
+
/** The identifier for this resource. */
|
|
2071
|
+
id: number;
|
|
2072
|
+
/** The name for this resource. */
|
|
2073
|
+
name: string;
|
|
2074
|
+
/** A list of moves that fall into this category. */
|
|
2075
|
+
moves: NamedAPIResource<Move>[];
|
|
2076
|
+
/** The description of this resource listed in different languages. */
|
|
2077
|
+
descriptions: Description[];
|
|
2078
|
+
}
|
|
2079
|
+
/**
|
|
2080
|
+
* ## Move Battle Style
|
|
2081
|
+
* Styles of moves when used in the Battle Palace.
|
|
2082
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Battle_Frontier_(Generation_III)) for greater detail.
|
|
2083
|
+
*/
|
|
2084
|
+
interface MoveBattleStyle {
|
|
2085
|
+
/** The identifier for this resource. */
|
|
2086
|
+
id: number;
|
|
2087
|
+
/** The name for this resource. */
|
|
2088
|
+
name: "attack" | "defense" | "support";
|
|
2089
|
+
/** The name of this resource listed in different languages. */
|
|
2090
|
+
names: Name[];
|
|
2091
|
+
}
|
|
2092
|
+
/**
|
|
2093
|
+
* ## Move Ailment
|
|
2094
|
+
* Move Ailments are status conditions caused by moves used during battle.
|
|
2095
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Status_condition) for greater detail.
|
|
2096
|
+
*/
|
|
2097
|
+
interface MoveAilment {
|
|
2098
|
+
/** The identifier for this resource. */
|
|
2099
|
+
id: number;
|
|
2100
|
+
/** The name for this resource. */
|
|
2101
|
+
name: string;
|
|
2102
|
+
/** A list of moves that cause this ailment. */
|
|
2103
|
+
moves: NamedAPIResource<Move>[];
|
|
2104
|
+
/** The name of this resource listed in different languages. */
|
|
2105
|
+
names: Name[];
|
|
2106
|
+
}
|
|
2107
|
+
/** The values a move had in a previous version group. */
|
|
2108
|
+
interface PastMoveStatValues {
|
|
2109
|
+
/** The percent value of how likely this move is to be successful. */
|
|
2110
|
+
accuracy: number | null;
|
|
2111
|
+
/** The percent value of how likely it is this move's effect will take effect. */
|
|
2112
|
+
effect_chance: number | null;
|
|
2113
|
+
/** The base power of this move with a value of 0 if it does not have a base power. */
|
|
2114
|
+
power: number | null;
|
|
2115
|
+
/** Power points. The number of times this move can be used. */
|
|
2116
|
+
pp: number | null;
|
|
2117
|
+
/** The effect of this move listed in different languages. */
|
|
2118
|
+
effect_entries: VerboseEffect[];
|
|
2119
|
+
/** The elemental type of this move. */
|
|
2120
|
+
type: NamedAPIResource<Type> | null;
|
|
2121
|
+
/** The version group in which these move stat values were in effect. */
|
|
2122
|
+
version_group: NamedAPIResource<VersionGroup>;
|
|
2123
|
+
}
|
|
2124
|
+
/** A stat this move changes, and by how much. */
|
|
2125
|
+
interface MoveStatChange {
|
|
2126
|
+
/** The amount of change. */
|
|
2127
|
+
change: number;
|
|
2128
|
+
/** The stat being affected. */
|
|
2129
|
+
stat: NamedAPIResource<Stat>;
|
|
2130
|
+
}
|
|
2131
|
+
/** Metadata about a move. */
|
|
2132
|
+
interface MoveMetaData {
|
|
2133
|
+
/** The status ailment this move inflicts on its target. */
|
|
2134
|
+
ailment: NamedAPIResource<MoveAilment>;
|
|
2135
|
+
/** The category of move this move falls under, e.g. damage or ailment. */
|
|
2136
|
+
category: NamedAPIResource<MoveCategory>;
|
|
2137
|
+
/** The minimum number of times this move hits. Null if it always only hits once. */
|
|
2138
|
+
min_hits: number | null;
|
|
2139
|
+
/** The maximum number of times this move hits. Null if it always only hits once. */
|
|
2140
|
+
max_hits: number | null;
|
|
2141
|
+
/** The minimum number of turns this move continues to take effect. Null if it always only lasts one turn. */
|
|
2142
|
+
min_turns: number | null;
|
|
2143
|
+
/** The maximum number of turns this move continues to take effect. Null if it always only lasts one turn. */
|
|
2144
|
+
max_turns: number | null;
|
|
2145
|
+
/** HP drain (if positive) or Recoil damage (if negative), in percent of damage done. */
|
|
2146
|
+
drain: number;
|
|
2147
|
+
/** The amount of hp gained by the attacking Pokémon, in percent of its maximum HP. */
|
|
2148
|
+
healing: number;
|
|
2149
|
+
/** Critical hit rate bonus. */
|
|
2150
|
+
crit_rate: number;
|
|
2151
|
+
/** The likelihood this attack will cause an ailment. */
|
|
2152
|
+
ailment_chance: number;
|
|
2153
|
+
/** The likelihood this attack will cause the target Pokémon to flinch. */
|
|
2154
|
+
flinch_chance: number;
|
|
2155
|
+
/** The likelihood this attack will cause a stat change in the target Pokémon. */
|
|
2156
|
+
stat_chance: number;
|
|
2157
|
+
}
|
|
2158
|
+
/**
|
|
2159
|
+
* The flavor text of this move.
|
|
2160
|
+
*/
|
|
2161
|
+
interface MoveFlavorText {
|
|
2162
|
+
/** The localized flavor text for an API resource in a specific language. */
|
|
2163
|
+
flavor_text: string;
|
|
2164
|
+
/** The language this name is in. */
|
|
2165
|
+
language: NamedAPIResource<Language>;
|
|
2166
|
+
/** The version group that uses this flavor text. */
|
|
2167
|
+
version_group: NamedAPIResource<VersionGroup>;
|
|
2168
|
+
}
|
|
2169
|
+
/**
|
|
2170
|
+
* A detail of moves this move can be used before or after, granting additional appeal points in super contests.
|
|
2171
|
+
*/
|
|
2172
|
+
interface ContestComboDetail {
|
|
2173
|
+
/** A list of moves to use before this move. */
|
|
2174
|
+
use_before: NamedAPIResource<Move>[] | null;
|
|
2175
|
+
/** A list of moves to use after this move. */
|
|
2176
|
+
use_after: NamedAPIResource<Move>[] | null;
|
|
2177
|
+
}
|
|
2178
|
+
/**
|
|
2179
|
+
* A detail of normal and super contest combos that require this move.
|
|
2180
|
+
*/
|
|
2181
|
+
interface ContestComboSets {
|
|
2182
|
+
/** A detail of moves this move can be used before or after, granting additional appeal points in contests. */
|
|
2183
|
+
normal: ContestComboDetail;
|
|
2184
|
+
/** A detail of moves this move can be used before or after, granting additional appeal points in super contests. */
|
|
2185
|
+
super: ContestComboDetail;
|
|
2186
|
+
}
|
|
2187
|
+
/**
|
|
2188
|
+
* ## Move
|
|
2189
|
+
* Moves are the skills of Pokémon in battle. In battle, a Pokémon uses one move each turn.
|
|
2190
|
+
* Some moves (including those learned by Hidden Machine) can be used outside of battle as well,
|
|
2191
|
+
* usually for the purpose of removing obstacles or exploring new areas.
|
|
2192
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Move) for greater detail.
|
|
2193
|
+
*/
|
|
2194
|
+
interface Move {
|
|
2195
|
+
/** The identifier for this resource. */
|
|
2196
|
+
id: number;
|
|
2197
|
+
/** The name for this resource. */
|
|
2198
|
+
name: string;
|
|
2199
|
+
/** The percent value of how likely this move is to be successful. */
|
|
2200
|
+
accuracy: number | null;
|
|
2201
|
+
/** The percent value of how likely it is this move's effect will happen. */
|
|
2202
|
+
effect_chance: number | null;
|
|
2203
|
+
/** Power points. The number of times this move can be used. */
|
|
2204
|
+
pp: number | null;
|
|
2205
|
+
/**
|
|
2206
|
+
* A value between -8 and 8. Sets the order in which moves are executed during battle.
|
|
2207
|
+
* See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Priority) for greater detail.
|
|
2208
|
+
*/
|
|
2209
|
+
priority: -8 | -7 | -6 | -5 | -4 | -3 | -2 | -1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8;
|
|
2210
|
+
/** The base power of this move with a value of 0 if it does not have a base power. */
|
|
2211
|
+
power: number | null;
|
|
2212
|
+
/** A detail of normal and super contest combos that require this move. */
|
|
2213
|
+
contest_combos: ContestComboSets | null;
|
|
2214
|
+
/** The type of appeal this move gives a Pokémon when used in a contest. */
|
|
2215
|
+
contest_type: NamedAPIResource<ContestType> | null;
|
|
2216
|
+
/** The effect the move has when used in a contest. */
|
|
2217
|
+
contest_effect: APIResource<ContestEffect> | null;
|
|
2218
|
+
/** The type of damage the move inflicts on the target, e.g. physical. */
|
|
2219
|
+
damage_class: NamedAPIResource<MoveDamageClass> | null;
|
|
2220
|
+
/** The effect of this move listed in different languages. */
|
|
2221
|
+
effect_entries: VerboseEffect[];
|
|
2222
|
+
/** The list of previous effects this move has had across version groups of the games. */
|
|
2223
|
+
effect_changes: AbilityEffectChange[];
|
|
2224
|
+
/** The flavor text of this move listed in different languages. */
|
|
2225
|
+
flavor_text_entries: MoveFlavorText[];
|
|
2226
|
+
/** The generation in which this move was introduced. */
|
|
2227
|
+
generation: NamedAPIResource<Generation>;
|
|
2228
|
+
/** A list of the machines that teach this move. */
|
|
2229
|
+
machines: MachineVersionDetail[];
|
|
2230
|
+
/** Metadata about this move. */
|
|
2231
|
+
meta: MoveMetaData | null;
|
|
2232
|
+
/** The name of this resource listed in different languages. */
|
|
2233
|
+
names: Name[];
|
|
2234
|
+
/** A list of move resource value changes across version groups of the game. */
|
|
2235
|
+
past_values: PastMoveStatValues[];
|
|
2236
|
+
/** A list of stats this move affects and by how much. */
|
|
2237
|
+
stat_changes: MoveStatChange[];
|
|
2238
|
+
/** The effect the move has when used in a super contest. */
|
|
2239
|
+
super_contest_effect: APIResource<SuperContestEffect> | null;
|
|
2240
|
+
/** The type of target that will receive the effects of the attack. */
|
|
2241
|
+
target: NamedAPIResource<MoveTarget>;
|
|
2242
|
+
/** The elemental type of this move. */
|
|
2243
|
+
type: NamedAPIResource<Type>;
|
|
2244
|
+
/** A list of Pokémon that learned this move. */
|
|
2245
|
+
learned_by_pokemon: NamedAPIResource<Pokemon>[];
|
|
2246
|
+
}
|
|
2247
|
+
//#endregion
|
|
2248
|
+
//#region src/models/Game/generation.d.ts
|
|
2249
|
+
/**
|
|
2250
|
+
* ## Generation
|
|
2251
|
+
* A generation is a grouping of the Pokémon games that separates them based on the Pokémon they include.
|
|
2252
|
+
* In each generation, a new set of Pokémon, Moves, Abilities and Types that did not exist in the previous generation are released.
|
|
2253
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Generation) for greater detail.
|
|
2254
|
+
*/
|
|
2255
|
+
interface Generation {
|
|
2256
|
+
/** The identifier for this resource. */
|
|
2257
|
+
id: number;
|
|
2258
|
+
/** The name for this resource. */
|
|
2259
|
+
name: string;
|
|
2260
|
+
/** A list of abilities that were introduced in this generation. */
|
|
2261
|
+
abilities: NamedAPIResource<Ability>[];
|
|
2262
|
+
/** The name of this resource listed in different languages. */
|
|
2263
|
+
names: Name[];
|
|
2264
|
+
/** The main region travelled in this generation. */
|
|
2265
|
+
main_region: NamedAPIResource<Region>;
|
|
2266
|
+
/** A list of moves that were introduced in this generation. */
|
|
2267
|
+
moves: NamedAPIResource<Move>[];
|
|
2268
|
+
/** A list of Pokémon species that were introduced in this generation. */
|
|
2269
|
+
pokemon_species: NamedAPIResource<PokemonSpecies>[];
|
|
2270
|
+
/** A list of types that were introduced in this generation. */
|
|
2271
|
+
types: NamedAPIResource<Type>[];
|
|
2272
|
+
/** A list of version groups that were introduced in this generation. */
|
|
2273
|
+
version_groups: NamedAPIResource<VersionGroup>[];
|
|
2274
|
+
}
|
|
2275
|
+
//#endregion
|
|
2276
|
+
//#region src/models/Location/region.d.ts
|
|
2277
|
+
/**
|
|
2278
|
+
* ## Region
|
|
2279
|
+
* A region is an organized area of the Pokémon world.
|
|
2280
|
+
* Most often, the main difference between regions is
|
|
2281
|
+
* the species of Pokémon that can be encountered within them.
|
|
2282
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Region) for greater detail.
|
|
2283
|
+
*/
|
|
2284
|
+
type Region = {
|
|
2285
|
+
/** The identifier for this resource. */
|
|
2286
|
+
id: number;
|
|
2287
|
+
/** A list of locations that can be found in this region. */
|
|
2288
|
+
locations: NamedAPIResource<Location>[];
|
|
2289
|
+
/** The name for this resource. */
|
|
2290
|
+
name: string;
|
|
2291
|
+
/** The name of this resource listed in different languages. */
|
|
2292
|
+
names: Name[];
|
|
2293
|
+
/** The generation this region was introduced in. */
|
|
2294
|
+
main_generation: NamedAPIResource<Generation>;
|
|
2295
|
+
/** A list of Pokédexes that catalogue Pokémon in this region. */
|
|
2296
|
+
pokedexes: NamedAPIResource<Pokedex>[];
|
|
2297
|
+
/** A list of version groups where this region can be visited. */
|
|
2298
|
+
version_groups: NamedAPIResource<VersionGroup>[];
|
|
2299
|
+
};
|
|
2300
|
+
//#endregion
|
|
2301
|
+
//#region src/models/Game/version.d.ts
|
|
2302
|
+
/**
|
|
2303
|
+
* ## Version
|
|
2304
|
+
* Versions of the games, e.g. Red, Blue or Yellow.
|
|
2305
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Core_series) for greater detail.
|
|
2306
|
+
*/
|
|
2307
|
+
interface Version {
|
|
2308
|
+
/** The identifier for this resource. */
|
|
2309
|
+
id: number;
|
|
2310
|
+
/** The name for this resource. */
|
|
2311
|
+
name: string;
|
|
2312
|
+
/** The name of this resource listed in different languages. */
|
|
2313
|
+
names: Name[];
|
|
2314
|
+
/** The version group this version belongs to. */
|
|
2315
|
+
version_group: NamedAPIResource<VersionGroup>;
|
|
2316
|
+
}
|
|
2317
|
+
/**
|
|
2318
|
+
* ## Version Group
|
|
2319
|
+
* Version groups categorize highly similar versions of the games.
|
|
2320
|
+
*/
|
|
2321
|
+
interface VersionGroup {
|
|
2322
|
+
/** The identifier for this resource. */
|
|
2323
|
+
id: number;
|
|
2324
|
+
/** The name for this resource. */
|
|
2325
|
+
name: string;
|
|
2326
|
+
/** Order for sorting. Almost by date of release, except similar versions are grouped together. */
|
|
2327
|
+
order: number;
|
|
2328
|
+
/** The generation this version was introduced in. */
|
|
2329
|
+
generation: NamedAPIResource<Generation>;
|
|
2330
|
+
/** A list of methods in which Pokémon can learn moves in this version group. */
|
|
2331
|
+
move_learn_methods: NamedAPIResource<MoveLearnMethod>[];
|
|
2332
|
+
/** A list of Pokédexes introduced in this version group. */
|
|
2333
|
+
pokedexes: NamedAPIResource<Pokedex>[];
|
|
2334
|
+
/** A list of regions that can be visited in this version group. */
|
|
2335
|
+
regions: NamedAPIResource<Region>[];
|
|
2336
|
+
/** The versions this version group owns. */
|
|
2337
|
+
versions: NamedAPIResource<Version>[];
|
|
2338
|
+
}
|
|
2339
|
+
//#endregion
|
|
2340
|
+
//#region src/models/Common/flavor-text.d.ts
|
|
2341
|
+
/**
|
|
2342
|
+
* The localized flavor text for an API resource in a specific language.
|
|
2343
|
+
*/
|
|
2344
|
+
interface FlavorText {
|
|
2345
|
+
/** The localized flavor text for an API resource in a specific language. */
|
|
2346
|
+
flavor_text: string;
|
|
2347
|
+
/** The language this name is in. */
|
|
2348
|
+
language: NamedAPIResource<Language>;
|
|
2349
|
+
/** The game version this flavor text appears in. */
|
|
2350
|
+
version: NamedAPIResource<Version>;
|
|
2351
|
+
}
|
|
2352
|
+
//#endregion
|
|
2353
|
+
//#region src/models/Common/generation.d.ts
|
|
2354
|
+
/**
|
|
2355
|
+
* The generation relevant to this game index.
|
|
2356
|
+
*/
|
|
2357
|
+
interface GenerationGameIndex {
|
|
2358
|
+
/** The internal id of an API resource within game data. */
|
|
2359
|
+
game_index: number;
|
|
2360
|
+
/** The generation relevant to this game index. */
|
|
2361
|
+
generation: NamedAPIResource<Generation>;
|
|
2362
|
+
}
|
|
2363
|
+
//#endregion
|
|
2364
|
+
//#region src/models/Machine/machine.d.ts
|
|
2365
|
+
/**
|
|
2366
|
+
* ## Machine
|
|
2367
|
+
* Machines are the representation of items that teach moves to Pokémon.
|
|
2368
|
+
* They vary from version to version, so it is not certain that one specific
|
|
2369
|
+
* [TM (Technical Machine)](https://bulbapedia.bulbagarden.net/wiki/TM) or
|
|
2370
|
+
* [HM (Hidden Machine)](https://bulbapedia.bulbagarden.net/wiki/HM) corresponds to a single Machine.
|
|
2371
|
+
*/
|
|
2372
|
+
type Machine = {
|
|
2373
|
+
/** The identifier for this resource. */
|
|
2374
|
+
id: number;
|
|
2375
|
+
/** The TM or HM item that corresponds to this machine. */
|
|
2376
|
+
item: NamedAPIResource<Item>;
|
|
2377
|
+
/** The move that is taught by this machine. */
|
|
2378
|
+
move: NamedAPIResource<Move>;
|
|
2379
|
+
/** The version group that this machine applies to. */
|
|
2380
|
+
version_group: NamedAPIResource<VersionGroup>;
|
|
2381
|
+
};
|
|
2382
|
+
//#endregion
|
|
2383
|
+
//#region src/models/Common/machine.d.ts
|
|
2384
|
+
/**
|
|
2385
|
+
* The machine that teaches a move from an item.
|
|
2386
|
+
*/
|
|
2387
|
+
interface MachineVersionDetail {
|
|
2388
|
+
/** The machine that teaches a move from an item. */
|
|
2389
|
+
machine: APIResource<Machine>;
|
|
2390
|
+
/** The version group of this specific machine. */
|
|
2391
|
+
version_group: NamedAPIResource<VersionGroup>;
|
|
2392
|
+
}
|
|
2393
|
+
//#endregion
|
|
2394
|
+
//#region src/models/Common/verbose.d.ts
|
|
2395
|
+
/**
|
|
2396
|
+
* The localized effect for an API resource.
|
|
2397
|
+
*/
|
|
2398
|
+
interface VerboseEffect {
|
|
2399
|
+
/** The localized effect text for an API resource in a specific language. */
|
|
2400
|
+
effect: string;
|
|
2401
|
+
/** The localized effect text in brief. */
|
|
2402
|
+
short_effect: string;
|
|
2403
|
+
/** The language this effect is in. */
|
|
2404
|
+
language: NamedAPIResource<Language>;
|
|
2405
|
+
}
|
|
2406
|
+
//#endregion
|
|
2407
|
+
//#region src/models/Common/version.d.ts
|
|
2408
|
+
/**
|
|
2409
|
+
* Encounters and their specific details.
|
|
2410
|
+
*/
|
|
2411
|
+
interface VersionEncounterDetail {
|
|
2412
|
+
/** The game version this encounter happens in. */
|
|
2413
|
+
version: NamedAPIResource<Version>;
|
|
2414
|
+
/** The total percentage of all encounter potential. */
|
|
2415
|
+
max_chance: number;
|
|
2416
|
+
/** A list of encounters and their specifics. */
|
|
2417
|
+
encounter_details: Encounter[];
|
|
2418
|
+
}
|
|
2419
|
+
/**
|
|
2420
|
+
* The internal id and version of an API resource.
|
|
2421
|
+
*/
|
|
2422
|
+
interface VersionGameIndex {
|
|
2423
|
+
/** The internal id of an API resource within game data. */
|
|
2424
|
+
game_index: number;
|
|
2425
|
+
/** The version relevant to this game index. */
|
|
2426
|
+
version: NamedAPIResource<Version>;
|
|
2427
|
+
}
|
|
2428
|
+
/**
|
|
2429
|
+
* The flavor text of an API resource.
|
|
2430
|
+
*/
|
|
2431
|
+
interface VersionGroupFlavorText {
|
|
2432
|
+
/** The localized name for an API resource in a specific language. */
|
|
2433
|
+
text: string;
|
|
2434
|
+
/** The language this name is in. */
|
|
2435
|
+
language: NamedAPIResource<Language>;
|
|
2436
|
+
/** The version group which uses this flavor text. */
|
|
2437
|
+
version_group: NamedAPIResource<VersionGroup>;
|
|
2438
|
+
}
|
|
2439
|
+
//#endregion
|
|
2440
|
+
//#region src/models/Berry/berry.d.ts
|
|
2441
|
+
/**
|
|
2442
|
+
* ## Berry
|
|
2443
|
+
* Berries are small fruits that can provide HP and status condition restoration,
|
|
2444
|
+
* stat enhancement, and even damage negation when eaten by Pokémon.
|
|
2445
|
+
*
|
|
2446
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Berry) for greater detail.
|
|
2447
|
+
*/
|
|
2448
|
+
type Berry = {
|
|
2449
|
+
/** The identifier for this resource. */
|
|
2450
|
+
id: number;
|
|
2451
|
+
/** The name for this resource. */
|
|
2452
|
+
name: string;
|
|
2453
|
+
/** Time it takes the tree to grow one stage, in hours. Berry trees go through four of these growth stages before they can be picked. */
|
|
2454
|
+
growth_time: number;
|
|
2455
|
+
/** The maximum number of these berries that can grow on one tree in Generation IV. */
|
|
2456
|
+
max_harvest: number;
|
|
2457
|
+
/** The power of the move "Natural Gift" when used with this Berry. */
|
|
2458
|
+
natural_gift_power: number;
|
|
2459
|
+
/** The size of this Berry, in millimeters. */
|
|
2460
|
+
size: number;
|
|
2461
|
+
/** The smoothness of this Berry, used in making Pokéblocks or Poffins. */
|
|
2462
|
+
smoothness: number;
|
|
2463
|
+
/** The speed at which this Berry dries out the soil as it grows. A higher rate means the soil dries more quickly. */
|
|
2464
|
+
soil_dryness: number;
|
|
2465
|
+
/** The firmness of this berry, used in making Pokéblocks or Poffins. */
|
|
2466
|
+
firmness: NamedAPIResource<BerryFirmness>;
|
|
2467
|
+
/** A list of references to each flavor a berry can have and the potency of each of those flavors in regard to this berry. */
|
|
2468
|
+
flavors: BerryFlavorMap[];
|
|
2469
|
+
/** Berries are actually items. This is a reference to the item specific data for this berry. */
|
|
2470
|
+
item: NamedAPIResource<Item>;
|
|
2471
|
+
/** The type inherited by "Natural Gift" when used with this Berry. */
|
|
2472
|
+
natural_gift_type: NamedAPIResource<Type>;
|
|
2473
|
+
};
|
|
2474
|
+
/**
|
|
2475
|
+
* Reference to the flavor a berry can have and the potency of each of those flavors in regard to this berry.
|
|
2476
|
+
*/
|
|
2477
|
+
type BerryFlavorMap = {
|
|
2478
|
+
/** How powerful the referenced flavor is for this berry. */
|
|
2479
|
+
potency: number;
|
|
2480
|
+
/** The referenced berry flavor. */
|
|
2481
|
+
flavor: NamedAPIResource<BerryFlavor>;
|
|
2482
|
+
};
|
|
2483
|
+
/**
|
|
2484
|
+
* ## Berry Flavor
|
|
2485
|
+
* Flavors determine whether a Pokémon will benefit or suffer from eating a berry based on its nature.
|
|
2486
|
+
*
|
|
2487
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Flavor) for greater detail.
|
|
2488
|
+
*/
|
|
2489
|
+
type BerryFlavor = {
|
|
2490
|
+
/** The identifier for this resource. */
|
|
2491
|
+
id: number;
|
|
2492
|
+
/** The name for this resource. */
|
|
2493
|
+
name: "spicy" | "dry" | "sweet" | "bitter" | "sour";
|
|
2494
|
+
/** A list of the berries with this flavor. */
|
|
2495
|
+
berries: FlavorBerryMap[];
|
|
2496
|
+
/** The contest type that correlates with this berry flavor. */
|
|
2497
|
+
contest_type: NamedAPIResource<ContestType>;
|
|
2498
|
+
/** The name of this resource listed in different languages. */
|
|
2499
|
+
names: Name[];
|
|
2500
|
+
};
|
|
2501
|
+
/**
|
|
2502
|
+
* Berry with the given flavor.
|
|
2503
|
+
*/
|
|
2504
|
+
type FlavorBerryMap = {
|
|
2505
|
+
/** How powerful the referenced flavor is for this berry. */
|
|
2506
|
+
potency: number;
|
|
2507
|
+
/** The berry with the referenced flavor. */
|
|
2508
|
+
berry: NamedAPIResource<Berry>;
|
|
2509
|
+
};
|
|
2510
|
+
/**
|
|
2511
|
+
* ## Berry Firmness
|
|
2512
|
+
* Berries can be soft, very soft, hard, super hard or very hard.
|
|
2513
|
+
*
|
|
2514
|
+
* - See [Bulbapedia](https://bulbapedia.bulbagarden.net/wiki/Category:Berries_by_firmness) for greater detail.
|
|
2515
|
+
*/
|
|
2516
|
+
type BerryFirmness = {
|
|
2517
|
+
/** The identifier for this resource. */
|
|
2518
|
+
id: number;
|
|
2519
|
+
/** The name for this resource. */
|
|
2520
|
+
name: "very-soft" | "soft" | "hard" | "very-hard" | "super-hard";
|
|
2521
|
+
/** A list of the berries with this firmness. */
|
|
2522
|
+
berries: NamedAPIResource<Berry>[];
|
|
2523
|
+
/** The name of this resource listed in different languages. */
|
|
2524
|
+
names: Name[];
|
|
2525
|
+
};
|
|
2526
|
+
//#endregion
|
|
2527
|
+
//#region src/config/cache.d.ts
|
|
2528
|
+
/**
|
|
2529
|
+
* ## Cache Store
|
|
2530
|
+
* The contract a client uses to cache responses, keyed by request URL.
|
|
2531
|
+
*
|
|
2532
|
+
* Every method may return a promise, so remote backends (Redis, KV stores) work
|
|
2533
|
+
* as-is. Values cross this boundary as parsed objects; expiry is the store's own
|
|
2534
|
+
* business.
|
|
2535
|
+
*/
|
|
2536
|
+
interface CacheStore {
|
|
2537
|
+
get(key: string): unknown | Promise<unknown>;
|
|
2538
|
+
set(key: string, value: unknown): void | Promise<void>;
|
|
2539
|
+
delete?(key: string): void | Promise<void>;
|
|
2540
|
+
clear?(): void | Promise<void>;
|
|
2541
|
+
}
|
|
2542
|
+
/**
|
|
2543
|
+
* ## Memory Cache Options
|
|
2544
|
+
* Used to configure the default in-memory store.
|
|
2545
|
+
*/
|
|
2546
|
+
interface MemoryCacheOptions {
|
|
2547
|
+
/** How long a cached response stays fresh, in milliseconds. Defaults to 5 minutes. */
|
|
2548
|
+
ttl?: number;
|
|
2549
|
+
/** Maximum number of responses kept. The least recently used entry is evicted. Defaults to 500. */
|
|
2550
|
+
maxEntries?: number;
|
|
2551
|
+
}
|
|
2552
|
+
/**
|
|
2553
|
+
* ## Memory Cache
|
|
2554
|
+
* The default {@link CacheStore}: a bounded, time-to-live cache held in memory.
|
|
2555
|
+
*
|
|
2556
|
+
* Values are stored and returned by reference — mutating a response also mutates
|
|
2557
|
+
* what later cache hits return, so treat responses as read-only.
|
|
2558
|
+
*/
|
|
2559
|
+
declare class MemoryCache implements CacheStore {
|
|
2560
|
+
private readonly entries;
|
|
2561
|
+
private readonly ttl;
|
|
2562
|
+
private readonly maxEntries;
|
|
2563
|
+
constructor(options?: MemoryCacheOptions);
|
|
2564
|
+
get(key: string): unknown;
|
|
2565
|
+
set(key: string, value: unknown): void;
|
|
2566
|
+
delete(key: string): void;
|
|
2567
|
+
clear(): void;
|
|
2568
|
+
}
|
|
2569
|
+
/**
|
|
2570
|
+
* ## Web Storage Like
|
|
2571
|
+
* The part of the browser's `Storage` interface a {@link WebStorageCache} uses.
|
|
2572
|
+
*
|
|
2573
|
+
* Declared structurally rather than as the DOM's `Storage`: the package compiles
|
|
2574
|
+
* without `lib.dom`, and stays usable anywhere the same shape exists.
|
|
2575
|
+
*
|
|
2576
|
+
* Every method may return a promise, so a React Native `AsyncStorage` works as-is.
|
|
2577
|
+
* Key enumeration is the one place the two shapes differ: `Storage` exposes
|
|
2578
|
+
* `length` and `key(index)`, `AsyncStorage` exposes `getAllKeys`, and a property
|
|
2579
|
+
* cannot be awaited — so both are accepted, and a storage offering neither still
|
|
2580
|
+
* caches; it just never evicts or clears.
|
|
2581
|
+
*/
|
|
2582
|
+
interface WebStorageLike {
|
|
2583
|
+
getItem(key: string): string | null | Promise<string | null>;
|
|
2584
|
+
setItem(key: string, value: string): void | Promise<void>;
|
|
2585
|
+
removeItem(key: string): void | Promise<void>;
|
|
2586
|
+
/** Every key held, this store's and the application's alike. */
|
|
2587
|
+
getAllKeys?(): readonly string[] | Promise<readonly string[]>;
|
|
2588
|
+
key?(index: number): string | null;
|
|
2589
|
+
readonly length?: number;
|
|
2590
|
+
}
|
|
2591
|
+
/**
|
|
2592
|
+
* ## Web Storage Cache Options
|
|
2593
|
+
* Used to configure a store backed by `localStorage` or `sessionStorage`.
|
|
2594
|
+
*/
|
|
2595
|
+
interface WebStorageCacheOptions {
|
|
2596
|
+
/**
|
|
2597
|
+
* Where entries are kept. Pass `localStorage`, `sessionStorage`, a React Native
|
|
2598
|
+
* `AsyncStorage`, or anything else matching {@link WebStorageLike}.
|
|
2599
|
+
*/
|
|
2600
|
+
storage: WebStorageLike;
|
|
2601
|
+
/** How long a cached response stays fresh, in milliseconds. Defaults to 5 minutes. */
|
|
2602
|
+
ttl?: number;
|
|
2603
|
+
/** Namespace for the keys this store writes. Defaults to `pokenode:`. */
|
|
2604
|
+
prefix?: string;
|
|
2605
|
+
}
|
|
2606
|
+
/**
|
|
2607
|
+
* ## Web Storage Cache
|
|
2608
|
+
* A {@link CacheStore} backed by `localStorage` or `sessionStorage`, so a cached
|
|
2609
|
+
* response survives a page reload.
|
|
2610
|
+
*
|
|
2611
|
+
* ```ts
|
|
2612
|
+
* const api = new PokemonClient({ cache: new WebStorageCache({ storage: localStorage }) });
|
|
2613
|
+
* ```
|
|
2614
|
+
*
|
|
2615
|
+
* Only keys under {@link WebStorageCacheOptions.prefix} are ever read, evicted or
|
|
2616
|
+
* cleared — the storage is assumed to be shared with the surrounding application.
|
|
2617
|
+
*
|
|
2618
|
+
* Values round-trip through JSON, so unlike {@link MemoryCache} every hit returns a
|
|
2619
|
+
* fresh copy. Anything a `JSON.stringify` cannot represent does not survive, which
|
|
2620
|
+
* covers every PokéAPI response.
|
|
2621
|
+
*
|
|
2622
|
+
* A storage that throws instead of answering is treated as empty: a read is a miss
|
|
2623
|
+
* and a write is dropped, because neither is worth failing the request that
|
|
2624
|
+
* triggered it over.
|
|
2625
|
+
*/
|
|
2626
|
+
declare class WebStorageCache implements CacheStore {
|
|
2627
|
+
private readonly storage;
|
|
2628
|
+
private readonly ttl;
|
|
2629
|
+
private readonly prefix;
|
|
2630
|
+
constructor(options: WebStorageCacheOptions);
|
|
2631
|
+
get(key: string): Promise<unknown>;
|
|
2632
|
+
set(key: string, value: unknown): Promise<void>;
|
|
2633
|
+
delete(key: string): Promise<void>;
|
|
2634
|
+
clear(): Promise<void>;
|
|
2635
|
+
/** Reads a namespaced key, treating unreadable content as a miss. */
|
|
2636
|
+
private read;
|
|
2637
|
+
/**
|
|
2638
|
+
* Frees space by dropping expired entries, falling back to the ones closest to
|
|
2639
|
+
* expiring when nothing has expired yet.
|
|
2640
|
+
*/
|
|
2641
|
+
private evict;
|
|
2642
|
+
/**
|
|
2643
|
+
* Collects this store's keys before any removal: `key(index)` walks a list that
|
|
2644
|
+
* shifts underneath a loop that deletes as it goes.
|
|
2645
|
+
*/
|
|
2646
|
+
private ownKeys;
|
|
2647
|
+
/**
|
|
2648
|
+
* Every key the storage holds, however it is willing to list them. A storage
|
|
2649
|
+
* offering no enumeration at all reports none, which leaves eviction and
|
|
2650
|
+
* `clear` as no-ops rather than an error on a path that only tidies up.
|
|
2651
|
+
*/
|
|
2652
|
+
private allKeys;
|
|
2653
|
+
/** Removes a key on a path that is only tidying up, where a refusal is moot. */
|
|
2654
|
+
private remove;
|
|
2655
|
+
}
|
|
2656
|
+
//#endregion
|
|
2657
|
+
//#region src/config/logger.d.ts
|
|
2658
|
+
/**
|
|
2659
|
+
* Fields shared by every payload.
|
|
2660
|
+
*
|
|
2661
|
+
* The text is carried twice on purpose. pino, bunyan and roarr read `msg`;
|
|
2662
|
+
* winston reads `message`. Sending both is what lets a logger from either family
|
|
2663
|
+
* be passed straight in, with no adapter to write and nothing logged as
|
|
2664
|
+
* `undefined`.
|
|
2665
|
+
*/
|
|
2666
|
+
interface LogFields {
|
|
2667
|
+
/** Which point of the request lifecycle this is, for filtering. */
|
|
2668
|
+
event: "request" | "response" | "error";
|
|
2669
|
+
msg: string;
|
|
2670
|
+
message: string;
|
|
2671
|
+
/** The request URL, with any credentials the base URL carried removed. */
|
|
2672
|
+
url: string;
|
|
2673
|
+
}
|
|
2674
|
+
/**
|
|
2675
|
+
* ## Log Request Payload
|
|
2676
|
+
* A request is about to be resolved, from cache or over the network.
|
|
2677
|
+
*/
|
|
2678
|
+
interface LogRequestPayload extends LogFields {
|
|
2679
|
+
event: "request";
|
|
2680
|
+
/** The HTTP method, uppercase, as RFC 9110 and OpenTelemetry both expect. */
|
|
2681
|
+
method: string;
|
|
2682
|
+
}
|
|
2683
|
+
/**
|
|
2684
|
+
* ## Log Response Payload
|
|
2685
|
+
* A response was produced.
|
|
2686
|
+
*/
|
|
2687
|
+
interface LogResponsePayload extends LogFields {
|
|
2688
|
+
event: "response";
|
|
2689
|
+
status: number;
|
|
2690
|
+
/**
|
|
2691
|
+
* Where the response came from.
|
|
2692
|
+
*
|
|
2693
|
+
* - `network` — a round trip was made.
|
|
2694
|
+
* - `cache` — served by the {@link CacheStore}; nothing left the process.
|
|
2695
|
+
* - `in-flight` — an identical request was already on the wire and this caller
|
|
2696
|
+
* shared it, so it made no round trip of its own.
|
|
2697
|
+
*
|
|
2698
|
+
* Counting only `network` gives the number of requests the PokéAPI actually
|
|
2699
|
+
* saw. Every caller reports, so counting all three gives the number of calls
|
|
2700
|
+
* the application made.
|
|
2701
|
+
*/
|
|
2702
|
+
source: "network" | "cache" | "in-flight";
|
|
2703
|
+
/** How long the client took to resolve the request, in milliseconds. */
|
|
2704
|
+
durationMs: number;
|
|
2705
|
+
}
|
|
2706
|
+
/**
|
|
2707
|
+
* ## Log Error Payload
|
|
2708
|
+
* A request failed.
|
|
2709
|
+
*
|
|
2710
|
+
* The error is carried twice for the same reason the message is: pino runs its
|
|
2711
|
+
* error serializer on `err` and nothing else, so an `Error` under any other key
|
|
2712
|
+
* would reach the log as `{}` — no message, no stack.
|
|
2713
|
+
*/
|
|
2714
|
+
interface LogErrorPayload extends LogFields {
|
|
2715
|
+
event: "error";
|
|
2716
|
+
/** Whatever `fetch` or the API produced. */
|
|
2717
|
+
err: unknown;
|
|
2718
|
+
error: unknown;
|
|
2719
|
+
}
|
|
2720
|
+
/**
|
|
2721
|
+
* ## Logger
|
|
2722
|
+
* Where a client reports what it did.
|
|
2723
|
+
*
|
|
2724
|
+
* Deliberately the shape every logging library already has, so one can be passed
|
|
2725
|
+
* without glue:
|
|
2726
|
+
*
|
|
2727
|
+
* ```ts
|
|
2728
|
+
* new PokemonClient({ logger: pino() });
|
|
2729
|
+
* new PokemonClient({ logger: console });
|
|
2730
|
+
* new PokemonClient({ logger: winston.createLogger() });
|
|
2731
|
+
* ```
|
|
2732
|
+
*
|
|
2733
|
+
* Requests and responses go to `debug`; failures go to `error`. Nothing is
|
|
2734
|
+
* logged unless a logger is passed, and a client never picks a level of its own.
|
|
2735
|
+
*/
|
|
2736
|
+
interface Logger {
|
|
2737
|
+
debug(payload: LogRequestPayload | LogResponsePayload): void;
|
|
2738
|
+
error(payload: LogErrorPayload): void;
|
|
2739
|
+
}
|
|
2740
|
+
/**
|
|
2741
|
+
* A {@link Logger} that writes the request lifecycle to the console as one
|
|
2742
|
+
* formatted line per event.
|
|
2743
|
+
*
|
|
2744
|
+
* `console` itself is a valid {@link Logger} and logs the payload as an object;
|
|
2745
|
+
* this is for when the terminal should stay readable.
|
|
2746
|
+
*/
|
|
2747
|
+
declare const consoleLogger: Logger;
|
|
2748
|
+
//#endregion
|
|
2749
|
+
//#region src/constants/base.d.ts
|
|
2750
|
+
declare const BASE_URL: {
|
|
2751
|
+
readonly REST: "https://pokeapi.co/api/v2";
|
|
2752
|
+
/** Root of the sprite repository the API's own sprite URLs point at. */
|
|
2753
|
+
readonly SPRITES: "https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites";
|
|
2754
|
+
};
|
|
2755
|
+
//#endregion
|
|
2756
|
+
//#region src/constants/berries.d.ts
|
|
2757
|
+
/** Enum of Berries (NAME - ID) */
|
|
2758
|
+
declare const BERRIES: {
|
|
2759
|
+
readonly CHERI: 1;
|
|
2760
|
+
readonly CHESTO: 2;
|
|
2761
|
+
readonly PECHA: 3;
|
|
2762
|
+
readonly RAWST: 4;
|
|
2763
|
+
readonly ASPEAR: 5;
|
|
2764
|
+
readonly LEPPA: 6;
|
|
2765
|
+
readonly ORAN: 7;
|
|
2766
|
+
readonly PERSIM: 8;
|
|
2767
|
+
readonly LUM: 9;
|
|
2768
|
+
readonly SITRUS: 10;
|
|
2769
|
+
readonly FIGY: 11;
|
|
2770
|
+
readonly WIKI: 12;
|
|
2771
|
+
readonly MAGO: 13;
|
|
2772
|
+
readonly AGUAV: 14;
|
|
2773
|
+
readonly IAPAPA: 15;
|
|
2774
|
+
readonly RAZZ: 16;
|
|
2775
|
+
readonly BLUK: 17;
|
|
2776
|
+
readonly NANAB: 18;
|
|
2777
|
+
readonly WEPEAR: 19;
|
|
2778
|
+
readonly PINAP: 20;
|
|
2779
|
+
readonly POMEG: 21;
|
|
2780
|
+
readonly KELPSY: 22;
|
|
2781
|
+
readonly QUALOT: 23;
|
|
2782
|
+
readonly HONDEW: 24;
|
|
2783
|
+
readonly GREPA: 25;
|
|
2784
|
+
readonly TAMATO: 26;
|
|
2785
|
+
readonly CORNN: 27;
|
|
2786
|
+
readonly MAGOST: 28;
|
|
2787
|
+
readonly RABUTA: 29;
|
|
2788
|
+
readonly NOMEL: 30;
|
|
2789
|
+
readonly SPELON: 31;
|
|
2790
|
+
readonly PAMTRE: 32;
|
|
2791
|
+
readonly WATMEL: 33;
|
|
2792
|
+
readonly DURIN: 34;
|
|
2793
|
+
readonly BELUE: 35;
|
|
2794
|
+
readonly OCCA: 36;
|
|
2795
|
+
readonly PASSHO: 37;
|
|
2796
|
+
readonly WACAN: 38;
|
|
2797
|
+
readonly RINDO: 39;
|
|
2798
|
+
readonly YACHE: 40;
|
|
2799
|
+
readonly CHOPLE: 41;
|
|
2800
|
+
readonly KEBIA: 42;
|
|
2801
|
+
readonly SHUCA: 43;
|
|
2802
|
+
readonly COBA: 44;
|
|
2803
|
+
readonly PAYAPA: 45;
|
|
2804
|
+
readonly TANGA: 46;
|
|
2805
|
+
readonly CHARTI: 47;
|
|
2806
|
+
readonly KASIB: 48;
|
|
2807
|
+
readonly HABAN: 49;
|
|
2808
|
+
readonly COLBUR: 50;
|
|
2809
|
+
readonly BABIRI: 51;
|
|
2810
|
+
readonly CHILAN: 52;
|
|
2811
|
+
readonly LIECHI: 53;
|
|
2812
|
+
readonly GANLON: 54;
|
|
2813
|
+
readonly SALAC: 55;
|
|
2814
|
+
readonly PETAYA: 56;
|
|
2815
|
+
readonly APICOT: 57;
|
|
2816
|
+
readonly LANSAT: 58;
|
|
2817
|
+
readonly STARF: 59;
|
|
2818
|
+
readonly ENIGMA: 60;
|
|
2819
|
+
readonly MICLE: 61;
|
|
2820
|
+
readonly CUSTAP: 62;
|
|
2821
|
+
readonly JABOCA: 63;
|
|
2822
|
+
readonly ROWAP: 64;
|
|
2823
|
+
};
|
|
2824
|
+
/** Enum of Berry Firmnesses (NAME - ID) */
|
|
2825
|
+
declare const BERRY_FIRMNESSES: {
|
|
2826
|
+
readonly VERY_SOFT: 1;
|
|
2827
|
+
readonly SOFT: 2;
|
|
2828
|
+
readonly HARD: 3;
|
|
2829
|
+
readonly VERY_HARD: 4;
|
|
2830
|
+
readonly SUPER_HARD: 5;
|
|
2831
|
+
};
|
|
2832
|
+
declare const BERRY_FLAVORS: {
|
|
2833
|
+
readonly SPICY: 1;
|
|
2834
|
+
readonly DRY: 2;
|
|
2835
|
+
readonly SWEET: 3;
|
|
2836
|
+
readonly BITTER: 4;
|
|
2837
|
+
readonly SOUR: 5;
|
|
2838
|
+
};
|
|
2839
|
+
//#endregion
|
|
2840
|
+
//#region src/constants/contests.d.ts
|
|
2841
|
+
declare const CONTEST_TYPES: {
|
|
2842
|
+
readonly COOL: 1;
|
|
2843
|
+
readonly BEAUTY: 2;
|
|
2844
|
+
readonly CUTE: 3;
|
|
2845
|
+
readonly SMART: 4;
|
|
2846
|
+
readonly TOUGH: 5;
|
|
2847
|
+
};
|
|
2848
|
+
//#endregion
|
|
2849
|
+
//#region src/constants/currencies.d.ts
|
|
2850
|
+
declare const CURRENCIES: {
|
|
2851
|
+
readonly POKE_DOLLAR: 1;
|
|
2852
|
+
readonly COIN: 2;
|
|
2853
|
+
readonly VOLCANIC_ASH: 3;
|
|
2854
|
+
readonly POKE_COUPON: 4;
|
|
2855
|
+
readonly BERRY_POWDER: 5;
|
|
2856
|
+
readonly BATTLE_POINT: 6;
|
|
2857
|
+
readonly SPHERE: 7;
|
|
2858
|
+
readonly CASTLE_POINT: 8;
|
|
2859
|
+
readonly WATT: 9;
|
|
2860
|
+
readonly ATHLETE_POINT: 10;
|
|
2861
|
+
readonly DREAM_POINT: 11;
|
|
2862
|
+
readonly DREAM_WORLD_BERRY: 12;
|
|
2863
|
+
readonly POKE_MILE: 13;
|
|
2864
|
+
readonly FESTIVAL_COIN: 14;
|
|
2865
|
+
readonly POKE_BEAN: 15;
|
|
2866
|
+
readonly HOME_POINT: 16;
|
|
2867
|
+
readonly MERIT_POINT: 17;
|
|
2868
|
+
readonly LEAGUE_POINT: 18;
|
|
2869
|
+
readonly BLUEBERRY_POINT: 19;
|
|
2870
|
+
};
|
|
2871
|
+
//#endregion
|
|
2872
|
+
//#region src/constants/encounters.d.ts
|
|
2873
|
+
declare const ENCOUNTER_METHODS: {
|
|
2874
|
+
readonly WALK: 1;
|
|
2875
|
+
readonly OLD_ROD: 2;
|
|
2876
|
+
readonly GOOD_ROD: 3;
|
|
2877
|
+
readonly SUPER_ROD: 4;
|
|
2878
|
+
readonly SURF: 5;
|
|
2879
|
+
readonly ROCK_SMASH: 6;
|
|
2880
|
+
readonly HEADBUTT: 7;
|
|
2881
|
+
readonly DARK_GRASS: 8;
|
|
2882
|
+
readonly GRASS_SPOTS: 9;
|
|
2883
|
+
readonly CAVE_SPOTS: 10;
|
|
2884
|
+
readonly BRIDGE_SPOTS: 11;
|
|
2885
|
+
readonly SUPER_ROD_SPOTS: 12;
|
|
2886
|
+
readonly SURF_SPOTS: 13;
|
|
2887
|
+
readonly YELLOW_FLOWERS: 14;
|
|
2888
|
+
readonly PURPLE_FLOWERS: 15;
|
|
2889
|
+
readonly RED_FLOWERS: 16;
|
|
2890
|
+
readonly ROUGH_TERRAIN: 17;
|
|
2891
|
+
readonly GIFT: 18;
|
|
2892
|
+
readonly GIFT_EGG: 19;
|
|
2893
|
+
readonly ONLY_ONE: 20;
|
|
2894
|
+
readonly POKEFLUTE: 21;
|
|
2895
|
+
readonly HEADBUTT_LOW: 22;
|
|
2896
|
+
readonly HEADBUTT_NORMAL: 23;
|
|
2897
|
+
readonly HEADBUT_HIGH: 24;
|
|
2898
|
+
readonly SQUIRT_BOTTLE: 25;
|
|
2899
|
+
readonly WAILMER_PAIL: 26;
|
|
2900
|
+
readonly SEAWEED: 27;
|
|
2901
|
+
};
|
|
2902
|
+
declare const ENCOUNTER_CONDITIONS: {
|
|
2903
|
+
readonly SWARM: 1;
|
|
2904
|
+
readonly TIME: 2;
|
|
2905
|
+
readonly RADAR: 3;
|
|
2906
|
+
readonly SLOT2: 4;
|
|
2907
|
+
readonly RADIO: 5;
|
|
2908
|
+
readonly SEASON: 6;
|
|
2909
|
+
readonly STARTER: 7;
|
|
2910
|
+
readonly TV_OPTION: 8;
|
|
2911
|
+
readonly STORY_PROGRESS: 9;
|
|
2912
|
+
readonly OTHER: 10;
|
|
2913
|
+
};
|
|
2914
|
+
declare const ENCOUNTER_CONDITION_VALUES: {
|
|
2915
|
+
readonly SWARM_YES: 1;
|
|
2916
|
+
readonly SWARM_NO: 2;
|
|
2917
|
+
readonly TIME_MORNING: 3;
|
|
2918
|
+
readonly TIME_DAY: 4;
|
|
2919
|
+
readonly TIME_NIGHT: 5;
|
|
2920
|
+
readonly RADAR_ON: 6;
|
|
2921
|
+
readonly RADAR_OFF: 7;
|
|
2922
|
+
readonly SLOT2_NONE: 8;
|
|
2923
|
+
readonly SLOT2_RUBY: 9;
|
|
2924
|
+
readonly SLOT2_SAPHIRE: 10;
|
|
2925
|
+
readonly SLOT2_EMERALD: 11;
|
|
2926
|
+
readonly SLOT2_FIRERED: 12;
|
|
2927
|
+
readonly SLOT2_LEAFGREEN: 13;
|
|
2928
|
+
readonly RADIO_OFF: 14;
|
|
2929
|
+
readonly RADIO_HOEN: 15;
|
|
2930
|
+
readonly RADIO_SINNOH: 16;
|
|
2931
|
+
readonly SEASON_SPRING: 17;
|
|
2932
|
+
readonly SEASON_SUMMER: 18;
|
|
2933
|
+
readonly SWASON_AUTUMN: 19;
|
|
2934
|
+
readonly SEASON_WINTER: 20;
|
|
2935
|
+
readonly STARTER_BULBASAUR: 21;
|
|
2936
|
+
readonly STARTER_SQUIRTLE: 22;
|
|
2937
|
+
readonly STARTER_CHARMANDER: 23;
|
|
2938
|
+
readonly STARTER_CHESPIN: 24;
|
|
2939
|
+
readonly STARTER_FENNEKIN: 25;
|
|
2940
|
+
readonly STARTER_FROAKIE: 26;
|
|
2941
|
+
readonly TV_OPTION_BLUE: 27;
|
|
2942
|
+
readonly TV_OPTION_RED: 28;
|
|
2943
|
+
readonly STORY_PROGRESS_AWAKENED_BEASTS: 29;
|
|
2944
|
+
readonly STORY_PROGRESS_BEAT_GALACTIC_CORONET: 30;
|
|
2945
|
+
readonly STORY_PROGRESS_OAK_ETERNA_CITY: 31;
|
|
2946
|
+
readonly STORY_PROGRESS_OAK_VERMILION_COPYCAT: 32;
|
|
2947
|
+
readonly STORY_PROGRESS_MET_TORNADUS_THUNDURUS: 33;
|
|
2948
|
+
readonly STORY_PROGRESS_BEAT_ELITE_FOUR_ROUND_TWO: 34;
|
|
2949
|
+
readonly STORY_PROGRESS_HALL_OF_FAME: 35;
|
|
2950
|
+
readonly STORY_PROGRESS_NONE: 36;
|
|
2951
|
+
readonly STORY_PROGRESS_NATIONAL_DEX: 37;
|
|
2952
|
+
readonly OTHER_NONE: 38;
|
|
2953
|
+
readonly OTHER_SNORLAX_LL_BEAT_LEAGUE: 39;
|
|
2954
|
+
};
|
|
2955
|
+
//#endregion
|
|
2956
|
+
//#region src/constants/endpoints.d.ts
|
|
2957
|
+
/**
|
|
2958
|
+
* Endpoints of the PokéAPI
|
|
2959
|
+
*/
|
|
2960
|
+
declare const ENDPOINTS: {
|
|
2961
|
+
readonly BERRY: "/berry";
|
|
2962
|
+
readonly BERRY_FIRMNESS: "/berry-firmness";
|
|
2963
|
+
readonly BERRY_FLAVOR: "/berry-flavor";
|
|
2964
|
+
readonly CONTEST_TYPE: "/contest-type";
|
|
2965
|
+
readonly CONTEST_EFFECT: "/contest-effect";
|
|
2966
|
+
readonly SUPER_CONTEST_EFFECT: "/super-contest-effect";
|
|
2967
|
+
readonly CURRENCY: "/currency";
|
|
2968
|
+
readonly ENCOUNTER_METHOD: "/encounter-method";
|
|
2969
|
+
readonly ENCOUNTER_CONDITION: "/encounter-condition";
|
|
2970
|
+
readonly ENCOUNTER_CONDITION_VALUE: "/encounter-condition-value";
|
|
2971
|
+
readonly EVOLUTION_CHAIN: "/evolution-chain";
|
|
2972
|
+
readonly EVOLUTION_TRIGGER: "/evolution-trigger";
|
|
2973
|
+
readonly GENERATION: "/generation";
|
|
2974
|
+
readonly POKEDEX: "/pokedex";
|
|
2975
|
+
readonly VERSION: "/version";
|
|
2976
|
+
readonly VERSION_GROUP: "/version-group";
|
|
2977
|
+
readonly ITEM: "/item";
|
|
2978
|
+
readonly ITEM_ATTRIBUTE: "/item-attribute";
|
|
2979
|
+
readonly ITEM_CATEGORY: "/item-category";
|
|
2980
|
+
readonly ITEM_FLING_EFFECT: "/item-fling-effect";
|
|
2981
|
+
readonly ITEM_POCKET: "/item-pocket";
|
|
2982
|
+
readonly LOCATION: "/location";
|
|
2983
|
+
readonly LOCATION_AREA: "/location-area";
|
|
2984
|
+
readonly PALPARK_AREA: "/pal-park-area";
|
|
2985
|
+
readonly REGION: "/region";
|
|
2986
|
+
readonly MACHINE: "/machine";
|
|
2987
|
+
readonly MOVE: "/move";
|
|
2988
|
+
readonly MOVE_AILMENT: "/move-ailment";
|
|
2989
|
+
readonly MOVE_BATTLE_STYLE: "/move-battle-style";
|
|
2990
|
+
readonly MOVE_CATEGORY: "/move-category";
|
|
2991
|
+
readonly MOVE_DAMAGE_CLASS: "/move-damage-class";
|
|
2992
|
+
readonly MOVE_LEARN_METHOD: "/move-learn-method";
|
|
2993
|
+
readonly MOVE_TARGET: "/move-target";
|
|
2994
|
+
readonly ABILITY: "/ability";
|
|
2995
|
+
readonly CHARACTERISTIC: "/characteristic";
|
|
2996
|
+
readonly EGG_GROUP: "/egg-group";
|
|
2997
|
+
readonly GENDER: "/gender";
|
|
2998
|
+
readonly GROWTH_RATE: "/growth-rate";
|
|
2999
|
+
readonly NATURE: "/nature";
|
|
3000
|
+
readonly POKEATHLON_STAT: "/pokeathlon-stat";
|
|
3001
|
+
readonly POKEMON: "/pokemon";
|
|
3002
|
+
readonly POKEMON_COLOR: "/pokemon-color";
|
|
3003
|
+
readonly POKEMON_FORM: "/pokemon-form";
|
|
3004
|
+
readonly POKEMON_HABITAT: "/pokemon-habitat";
|
|
3005
|
+
readonly POKEMON_SHAPE: "/pokemon-shape";
|
|
3006
|
+
readonly POKEMON_SPECIES: "/pokemon-species";
|
|
3007
|
+
readonly STAT: "/stat";
|
|
3008
|
+
readonly TYPE: "/type";
|
|
3009
|
+
readonly LANGUAGE: "/language";
|
|
3010
|
+
};
|
|
3011
|
+
type ObjectValue<T> = T[keyof T];
|
|
3012
|
+
type Endpoint = ObjectValue<typeof ENDPOINTS>;
|
|
3013
|
+
//#endregion
|
|
3014
|
+
//#region src/constants/evolutions.d.ts
|
|
3015
|
+
declare const EVOLUTION_TRIGGERS: {
|
|
3016
|
+
readonly LEVEL_UP: 1;
|
|
3017
|
+
readonly TRADE: 2;
|
|
3018
|
+
readonly USE_ITEM: 3;
|
|
3019
|
+
readonly SHED: 4;
|
|
3020
|
+
readonly SPIN: 5;
|
|
3021
|
+
readonly TOWER_OF_DARKNESS: 6;
|
|
3022
|
+
readonly TOWER_OF_WATER: 7;
|
|
3023
|
+
readonly THREE_CRITICAL_HITS: 8;
|
|
3024
|
+
readonly TAKE_DAMAGE: 9;
|
|
3025
|
+
readonly OTHER: 10;
|
|
3026
|
+
};
|
|
3027
|
+
//#endregion
|
|
3028
|
+
//#region src/constants/games.d.ts
|
|
3029
|
+
declare const GENERATIONS: {
|
|
3030
|
+
readonly GENERATION_I: 1;
|
|
3031
|
+
readonly GENERATION_II: 2;
|
|
3032
|
+
readonly GENERATION_III: 3;
|
|
3033
|
+
readonly GENERATION_IV: 4;
|
|
3034
|
+
readonly GENERATION_V: 5;
|
|
3035
|
+
readonly GENERATION_VI: 6;
|
|
3036
|
+
readonly GENERATION_VII: 7;
|
|
3037
|
+
readonly GENERATION_VIII: 8;
|
|
3038
|
+
};
|
|
3039
|
+
declare const POKEDEXES: {
|
|
3040
|
+
readonly NATIONAL: 1;
|
|
3041
|
+
readonly KANTO: 2;
|
|
3042
|
+
readonly ORIGINAL_JOHTO: 3;
|
|
3043
|
+
readonly HOENN: 4;
|
|
3044
|
+
readonly ORIGINAL_SINNOH: 5;
|
|
3045
|
+
readonly EXTENDED_SINNOH: 6;
|
|
3046
|
+
readonly UPDATED_JOHTO: 7;
|
|
3047
|
+
readonly ORIGINAL_UNOVA: 8;
|
|
3048
|
+
readonly UPDATED_UNOVA: 9;
|
|
3049
|
+
readonly CONQUEST_GALLERY: 11;
|
|
3050
|
+
readonly KALOS_CENTRAL: 12;
|
|
3051
|
+
readonly KALOS_COASTAL: 13;
|
|
3052
|
+
readonly KALOS_MONTAIN: 14;
|
|
3053
|
+
readonly UPDATED_HOENN: 15;
|
|
3054
|
+
readonly ORIGINAL_ALOLA: 16;
|
|
3055
|
+
readonly ORIGINAL_MELEMELE: 17;
|
|
3056
|
+
readonly ORIGINAL_AKALA: 18;
|
|
3057
|
+
readonly ORIGINAL_ULAULA: 19;
|
|
3058
|
+
readonly ORIGINAL_PONI: 20;
|
|
3059
|
+
readonly UPDATED_ALOLA: 21;
|
|
3060
|
+
readonly UPDATED_MELEMELE: 22;
|
|
3061
|
+
readonly UPDATED_AKALA: 23;
|
|
3062
|
+
readonly UPDATED_ULAULA: 24;
|
|
3063
|
+
readonly UPDATED_PONI: 25;
|
|
3064
|
+
readonly UPDATED_KANTO: 26;
|
|
3065
|
+
readonly GALAR: 27;
|
|
3066
|
+
readonly ISLE_OF_ARMOR: 28;
|
|
3067
|
+
readonly CROWN_TUNDRA: 29;
|
|
3068
|
+
};
|
|
3069
|
+
declare const VERSIONS: {
|
|
3070
|
+
readonly RED: 1;
|
|
3071
|
+
readonly BLUE: 2;
|
|
3072
|
+
readonly YELLOW: 3;
|
|
3073
|
+
readonly GOLD: 4;
|
|
3074
|
+
readonly SILVER: 5;
|
|
3075
|
+
readonly CRYSTAL: 6;
|
|
3076
|
+
readonly RUBY: 7;
|
|
3077
|
+
readonly SAPPHIRE: 8;
|
|
3078
|
+
readonly EMERALD: 9;
|
|
3079
|
+
readonly FIRERED: 10;
|
|
3080
|
+
readonly LEAFGREEN: 11;
|
|
3081
|
+
readonly DIAMOND: 12;
|
|
3082
|
+
readonly PEARL: 13;
|
|
3083
|
+
readonly PLATINUM: 14;
|
|
3084
|
+
readonly HEARTGOLD: 15;
|
|
3085
|
+
readonly SOULSILVER: 16;
|
|
3086
|
+
readonly BLACK: 17;
|
|
3087
|
+
readonly WHITE: 18;
|
|
3088
|
+
readonly COLOSSEUM: 19;
|
|
3089
|
+
readonly XD: 20;
|
|
3090
|
+
readonly BLACK_2: 21;
|
|
3091
|
+
readonly WHITE_2: 22;
|
|
3092
|
+
readonly X: 23;
|
|
3093
|
+
readonly Y: 24;
|
|
3094
|
+
readonly OMEGA_RUBY: 25;
|
|
3095
|
+
readonly ALPHA_SAPPHIRE: 26;
|
|
3096
|
+
readonly SUN: 27;
|
|
3097
|
+
readonly MOON: 28;
|
|
3098
|
+
readonly ULTRA_SUN: 29;
|
|
3099
|
+
readonly ULTRA_MOON: 30;
|
|
3100
|
+
readonly LETS_GO_PIKACHU: 31;
|
|
3101
|
+
readonly LETS_GO_EEVEE: 32;
|
|
3102
|
+
readonly SWORD: 33;
|
|
3103
|
+
readonly SHIELD: 34;
|
|
3104
|
+
readonly THE_ISLE_OF_ARMOR: 35;
|
|
3105
|
+
readonly THE_CROWN_TUNDRA: 36;
|
|
3106
|
+
readonly BRILLIANT_DIAMOND: 37;
|
|
3107
|
+
readonly SHINING_PEARL: 38;
|
|
3108
|
+
readonly LEGENDS_ARCEUS: 39;
|
|
3109
|
+
};
|
|
3110
|
+
declare const VERSION_GROUPS: {
|
|
3111
|
+
readonly RED_BLUE: 1;
|
|
3112
|
+
readonly YELLOW: 2;
|
|
3113
|
+
readonly GOLD_SILVER: 3;
|
|
3114
|
+
readonly CRYSTAL: 4;
|
|
3115
|
+
readonly RUBY_SAPPHIRE: 5;
|
|
3116
|
+
readonly EMERALD: 6;
|
|
3117
|
+
readonly FIRERED_LEAFGREEN: 7;
|
|
3118
|
+
readonly DIAMOND_PEARL: 8;
|
|
3119
|
+
readonly PLATINUM: 9;
|
|
3120
|
+
readonly HEARTGOLD_SOULSILVER: 10;
|
|
3121
|
+
readonly BLACK_WHITE: 11;
|
|
3122
|
+
readonly COLOSSEUM: 12;
|
|
3123
|
+
readonly XD: 13;
|
|
3124
|
+
readonly BLACK_2_WHITE_2: 14;
|
|
3125
|
+
readonly X_Y: 15;
|
|
3126
|
+
readonly OMEGA_RUBY_ALPHA_SAPPHIRE: 16;
|
|
3127
|
+
readonly SUN_MOON: 17;
|
|
3128
|
+
readonly ULTRA_SUN_ULTRA_MOON: 18;
|
|
3129
|
+
readonly LETS_GO: 19;
|
|
3130
|
+
readonly SWORD_SHIELD: 20;
|
|
3131
|
+
readonly THE_ISLE_OF_ARMOR: 21;
|
|
3132
|
+
readonly THE_CROWN_TUNDRA: 22;
|
|
3133
|
+
readonly BRILLIANT_DIAMOND_AND_SHINING_PEARL: 23;
|
|
3134
|
+
readonly LEGENDS_ARCEUS: 24;
|
|
3135
|
+
};
|
|
3136
|
+
//#endregion
|
|
3137
|
+
//#region src/constants/items.d.ts
|
|
3138
|
+
declare const ITEM_ATTRIBUTES: {
|
|
3139
|
+
readonly COUNTABLE: 1;
|
|
3140
|
+
readonly CONSUMABLE: 2;
|
|
3141
|
+
readonly USABLE_OVERWORLD: 3;
|
|
3142
|
+
readonly USABLE_IN_BATTLE: 4;
|
|
3143
|
+
readonly HOLDABLE: 5;
|
|
3144
|
+
readonly HOLDABLE_PASSIVE: 6;
|
|
3145
|
+
readonly HOLDABLE_ACTIVE: 7;
|
|
3146
|
+
readonly UNDERGROUND: 8;
|
|
3147
|
+
};
|
|
3148
|
+
declare const ITEM_CATEGORIES: {
|
|
3149
|
+
readonly STAT_BOOSTS: 1;
|
|
3150
|
+
readonly EFFORT_DROP: 2;
|
|
3151
|
+
readonly MEDICINE: 3;
|
|
3152
|
+
readonly OTHER: 4;
|
|
3153
|
+
readonly IN_A_PINCH: 5;
|
|
3154
|
+
readonly PICKY_HEALING: 6;
|
|
3155
|
+
readonly TYPE_PROTECTION: 7;
|
|
3156
|
+
readonly BAKING_ONLY: 8;
|
|
3157
|
+
readonly COLLECTIBLES: 9;
|
|
3158
|
+
readonly EVOLUTION: 10;
|
|
3159
|
+
readonly SPELUNKING: 11;
|
|
3160
|
+
readonly HELD_ITEMS: 12;
|
|
3161
|
+
readonly CHOICE: 13;
|
|
3162
|
+
readonly EFFORT_TRAINING: 14;
|
|
3163
|
+
readonly BAD_HELD_ITEMS: 15;
|
|
3164
|
+
readonly TRAINING: 16;
|
|
3165
|
+
readonly PLATES: 17;
|
|
3166
|
+
readonly SPECIES_SPECIFIC: 18;
|
|
3167
|
+
readonly TYPE_ENHANCEMENT: 19;
|
|
3168
|
+
readonly EVENT_ITEMS: 20;
|
|
3169
|
+
readonly GAMEPLAY: 21;
|
|
3170
|
+
readonly PLOT_ADVANCEMENT: 22;
|
|
3171
|
+
readonly UNUSED: 23;
|
|
3172
|
+
readonly LOOT: 24;
|
|
3173
|
+
readonly ALL_MAIL: 25;
|
|
3174
|
+
readonly VITAMINS: 26;
|
|
3175
|
+
readonly HEALING: 27;
|
|
3176
|
+
readonly PP_RECOVERY: 28;
|
|
3177
|
+
readonly REVIVAL: 29;
|
|
3178
|
+
readonly STATUS_CURES: 30;
|
|
3179
|
+
readonly MULCH: 32;
|
|
3180
|
+
readonly SPECIAL_BALLS: 33;
|
|
3181
|
+
readonly STANDARD_BALLS: 34;
|
|
3182
|
+
readonly DEX_COMPLETION: 35;
|
|
3183
|
+
readonly SCARVES: 36;
|
|
3184
|
+
readonly ALL_MACHINES: 37;
|
|
3185
|
+
readonly FLUTES: 38;
|
|
3186
|
+
readonly APRICORN_BALLS: 39;
|
|
3187
|
+
readonly APRICORN_BOX: 40;
|
|
3188
|
+
readonly DATA_CARDS: 41;
|
|
3189
|
+
readonly JEWELS: 42;
|
|
3190
|
+
readonly MIRACLE_SHOOTER: 43;
|
|
3191
|
+
readonly MEGA_STONES: 44;
|
|
3192
|
+
readonly MEMORIES: 45;
|
|
3193
|
+
readonly Z_CRYSTALS: 46;
|
|
3194
|
+
readonly SPECIES_CANDIES: 47;
|
|
3195
|
+
readonly CATCHING_BONUS: 48;
|
|
3196
|
+
readonly DYNAMAX_CRISTALS: 49;
|
|
3197
|
+
readonly NATURE_MINTS: 50;
|
|
3198
|
+
readonly CURRY_INGREDIENTS: 51;
|
|
3199
|
+
};
|
|
3200
|
+
declare const ITEM_FLING_EFFECTS: {
|
|
3201
|
+
readonly BADLY_POISON: 1;
|
|
3202
|
+
readonly BURN: 2;
|
|
3203
|
+
readonly BERRY_EFFECT: 3;
|
|
3204
|
+
readonly HERB_EFFECT: 4;
|
|
3205
|
+
readonly PARALYZE: 5;
|
|
3206
|
+
readonly POISON: 6;
|
|
3207
|
+
readonly FLINCH: 7;
|
|
3208
|
+
};
|
|
3209
|
+
declare const ITEM_POCKETS: {
|
|
3210
|
+
readonly MISC: 1;
|
|
3211
|
+
readonly MEDICINE: 2;
|
|
3212
|
+
readonly POKEBALLS: 3;
|
|
3213
|
+
readonly MACHINES: 4;
|
|
3214
|
+
readonly BERRIES: 5;
|
|
3215
|
+
readonly MAIL: 6;
|
|
3216
|
+
readonly BATTLE: 7;
|
|
3217
|
+
readonly KEY: 8;
|
|
3218
|
+
};
|
|
3219
|
+
//#endregion
|
|
3220
|
+
//#region src/constants/locations.d.ts
|
|
3221
|
+
declare const REGIONS: {
|
|
3222
|
+
readonly KANTO: 1;
|
|
3223
|
+
readonly JOHTO: 2;
|
|
3224
|
+
readonly HOENN: 3;
|
|
3225
|
+
readonly SINNOH: 4;
|
|
3226
|
+
readonly UNOVA: 5;
|
|
3227
|
+
readonly KALOS: 6;
|
|
3228
|
+
readonly ALOLA: 7;
|
|
3229
|
+
readonly GALAR: 8;
|
|
3230
|
+
readonly HISUI: 9;
|
|
3231
|
+
};
|
|
3232
|
+
declare const PAL_PARK_AREAS: {
|
|
3233
|
+
readonly FOREST: 1;
|
|
3234
|
+
readonly FIELD: 2;
|
|
3235
|
+
readonly MOUNTAIN: 3;
|
|
3236
|
+
readonly POND: 4;
|
|
3237
|
+
readonly SEA: 5;
|
|
3238
|
+
};
|
|
3239
|
+
//#endregion
|
|
3240
|
+
//#region src/constants/moves.d.ts
|
|
3241
|
+
declare const MOVE_AILMENTS: {
|
|
3242
|
+
readonly UNKNOWN: -1;
|
|
3243
|
+
readonly NONE: 0;
|
|
3244
|
+
readonly PARALYSIS: 1;
|
|
3245
|
+
readonly SLEEP: 2;
|
|
3246
|
+
readonly FREEZE: 3;
|
|
3247
|
+
readonly BURN: 4;
|
|
3248
|
+
readonly POISON: 5;
|
|
3249
|
+
readonly CONFUSION: 6;
|
|
3250
|
+
readonly INFATUATION: 7;
|
|
3251
|
+
readonly TRAP: 8;
|
|
3252
|
+
readonly NIGHTMARE: 9;
|
|
3253
|
+
readonly TORMENT: 12;
|
|
3254
|
+
readonly DISABLE: 13;
|
|
3255
|
+
readonly YAWN: 14;
|
|
3256
|
+
readonly HEAL_BLOCK: 15;
|
|
3257
|
+
readonly NO_TYPE_IMMUNITY: 17;
|
|
3258
|
+
readonly LEECH_SEED: 18;
|
|
3259
|
+
readonly EMBARGO: 19;
|
|
3260
|
+
readonly PERISH_SONG: 20;
|
|
3261
|
+
readonly INGRAIN: 21;
|
|
3262
|
+
readonly SILENCE: 24;
|
|
3263
|
+
readonly TAR_SHOT: 42;
|
|
3264
|
+
};
|
|
3265
|
+
declare const MOVE_BATTLE_STYLES: {
|
|
3266
|
+
readonly ATTACK: 1;
|
|
3267
|
+
readonly DEFENSE: 2;
|
|
3268
|
+
readonly SUPPORT: 3;
|
|
3269
|
+
};
|
|
3270
|
+
declare const MOVE_CATEGORIES: {
|
|
3271
|
+
readonly DAMAGE: 0;
|
|
3272
|
+
readonly AILMENT: 1;
|
|
3273
|
+
readonly NET_GOOD_STATS: 2;
|
|
3274
|
+
readonly HEAL: 3;
|
|
3275
|
+
readonly DAMAGE_AILMENT: 4;
|
|
3276
|
+
readonly SWAGGER: 5;
|
|
3277
|
+
readonly DAMAGE_LOWER: 6;
|
|
3278
|
+
readonly DAMAGE_RAISE: 7;
|
|
3279
|
+
readonly DAMAGE_HEAL: 8;
|
|
3280
|
+
readonly OHKO: 9;
|
|
3281
|
+
readonly WHOLE_FIELD_EFFECT: 10;
|
|
3282
|
+
readonly FIELD_EFFECT: 11;
|
|
3283
|
+
readonly FORCE_SWITCH: 12;
|
|
3284
|
+
readonly UNIQUE: 13;
|
|
3285
|
+
};
|
|
3286
|
+
declare const MOVE_DAMAGE_CLASSES: {
|
|
3287
|
+
readonly STATUS: 1;
|
|
3288
|
+
readonly PHYSICAL: 2;
|
|
3289
|
+
readonly SPECIAL: 3;
|
|
3290
|
+
};
|
|
3291
|
+
declare const MOVE_LEARN_METHODS: {
|
|
3292
|
+
readonly LEVEL_UP: 1;
|
|
3293
|
+
readonly EGG: 2;
|
|
3294
|
+
readonly TUTOR: 3;
|
|
3295
|
+
readonly MACHINE: 4;
|
|
3296
|
+
readonly STADIUM_SURFING_PIKACHU: 5;
|
|
3297
|
+
readonly LIGHT_BALL_EGG: 6;
|
|
3298
|
+
readonly COLOSSEUM_PURIFICATION: 7;
|
|
3299
|
+
readonly XD_SHADOW: 8;
|
|
3300
|
+
readonly XD_PURIFICATION: 9;
|
|
3301
|
+
readonly FORM_CHANGE: 10;
|
|
3302
|
+
};
|
|
3303
|
+
declare const MOVE_TARGETS: {
|
|
3304
|
+
readonly SPECIFIC_MOVE: 1;
|
|
3305
|
+
readonly SELECTED_POKEMON_ME_FIRST: 2;
|
|
3306
|
+
readonly ALLY: 3;
|
|
3307
|
+
readonly USERS_FIELD: 4;
|
|
3308
|
+
readonly USER_OR_ALLY: 5;
|
|
3309
|
+
readonly OPPONENTS_FIELD: 6;
|
|
3310
|
+
readonly USER: 7;
|
|
3311
|
+
readonly RANDOM_OPPONENT: 8;
|
|
3312
|
+
readonly ALL_OTHER_POKEMON: 9;
|
|
3313
|
+
readonly SELECTED_POKEMON: 10;
|
|
3314
|
+
readonly ALL_OPPONENTS: 11;
|
|
3315
|
+
readonly ENTIRE_FIELD: 12;
|
|
3316
|
+
readonly USER_AND_ALIES: 13;
|
|
3317
|
+
readonly ALL_POKEMON: 14;
|
|
3318
|
+
readonly ALL_ALLIES: 15;
|
|
3319
|
+
};
|
|
3320
|
+
//#endregion
|
|
3321
|
+
//#region src/constants/pokemons.d.ts
|
|
3322
|
+
declare const EGG_GROUPS: {
|
|
3323
|
+
readonly MONSTER: 1;
|
|
3324
|
+
readonly WATER1: 2;
|
|
3325
|
+
readonly BUG: 3;
|
|
3326
|
+
readonly FLYING: 4;
|
|
3327
|
+
readonly GROUND: 5;
|
|
3328
|
+
readonly FAIRY: 6;
|
|
3329
|
+
readonly PLANT: 7;
|
|
3330
|
+
readonly HUMANSHAPE: 8;
|
|
3331
|
+
readonly WATER3: 9;
|
|
3332
|
+
readonly MINERAL: 10;
|
|
3333
|
+
readonly INDETERMINATE: 11;
|
|
3334
|
+
readonly WATER2: 12;
|
|
3335
|
+
readonly DITTO: 13;
|
|
3336
|
+
readonly DRAGON: 14;
|
|
3337
|
+
readonly NO_EGGS: 15;
|
|
3338
|
+
};
|
|
3339
|
+
declare const GENDERS: {
|
|
3340
|
+
readonly FEMALE: 1;
|
|
3341
|
+
readonly MALE: 2;
|
|
3342
|
+
readonly GENDERLESS: 3;
|
|
3343
|
+
};
|
|
3344
|
+
declare const GROWTH_RATES: {
|
|
3345
|
+
readonly SLOW: 1;
|
|
3346
|
+
readonly MEDIUM: 2;
|
|
3347
|
+
readonly FAST: 3;
|
|
3348
|
+
readonly MEDIUM_SLOW: 4;
|
|
3349
|
+
readonly SLOW_THEN_VERY_FAST: 5;
|
|
3350
|
+
readonly FAST_THEN_VERY_SLOW: 6;
|
|
3351
|
+
};
|
|
3352
|
+
declare const NATURES: {
|
|
3353
|
+
readonly HARDY: 1;
|
|
3354
|
+
readonly BOLD: 2;
|
|
3355
|
+
readonly MODEST: 3;
|
|
3356
|
+
readonly CALM: 4;
|
|
3357
|
+
readonly TIMID: 5;
|
|
3358
|
+
readonly LONELY: 6;
|
|
3359
|
+
readonly DOCILE: 7;
|
|
3360
|
+
readonly MILD: 8;
|
|
3361
|
+
readonly GENTLE: 9;
|
|
3362
|
+
readonly HASTY: 10;
|
|
3363
|
+
readonly ADAMANT: 11;
|
|
3364
|
+
readonly IMPISH: 12;
|
|
3365
|
+
readonly BASHFUL: 13;
|
|
3366
|
+
readonly CAREFUL: 14;
|
|
3367
|
+
readonly RASH: 15;
|
|
3368
|
+
readonly JOLLY: 16;
|
|
3369
|
+
readonly NAUGHTY: 17;
|
|
3370
|
+
readonly LAX: 18;
|
|
3371
|
+
readonly QUIRKY: 19;
|
|
3372
|
+
readonly NAIVE: 20;
|
|
3373
|
+
readonly BRAVE: 21;
|
|
3374
|
+
readonly RELAXED: 22;
|
|
3375
|
+
readonly QUIET: 23;
|
|
3376
|
+
readonly SASSY: 24;
|
|
3377
|
+
readonly SERIOUS: 25;
|
|
3378
|
+
};
|
|
3379
|
+
declare const POKEATHLON_STATS: {
|
|
3380
|
+
readonly SPEED: 1;
|
|
3381
|
+
readonly POWER: 2;
|
|
3382
|
+
readonly SKILL: 3;
|
|
3383
|
+
readonly STAMINA: 4;
|
|
3384
|
+
readonly JUMP: 5;
|
|
3385
|
+
};
|
|
3386
|
+
declare const POKEMON_COLORS: {
|
|
3387
|
+
readonly BLACK: 1;
|
|
3388
|
+
readonly BLUE: 2;
|
|
3389
|
+
readonly BROWN: 3;
|
|
3390
|
+
readonly GRAY: 4;
|
|
3391
|
+
readonly GREEN: 5;
|
|
3392
|
+
readonly PINK: 6;
|
|
3393
|
+
readonly PURPLE: 7;
|
|
3394
|
+
readonly RED: 8;
|
|
3395
|
+
readonly WHITE: 9;
|
|
3396
|
+
readonly YELLOW: 10;
|
|
3397
|
+
};
|
|
3398
|
+
declare const POKEMON_HABITATS: {
|
|
3399
|
+
readonly CAVE: 1;
|
|
3400
|
+
readonly FOREST: 2;
|
|
3401
|
+
readonly GRASSLAND: 3;
|
|
3402
|
+
readonly MONTAIN: 4;
|
|
3403
|
+
readonly RARE: 5;
|
|
3404
|
+
readonly ROUGH_TERRAIN: 6;
|
|
3405
|
+
readonly SEA: 7;
|
|
3406
|
+
readonly URBAN: 8;
|
|
3407
|
+
readonly WATERS_EDGE: 9;
|
|
3408
|
+
};
|
|
3409
|
+
declare const POKEMON_SHAPES: {
|
|
3410
|
+
readonly BALL: 1;
|
|
3411
|
+
readonly SQUIGGLE: 2;
|
|
3412
|
+
readonly FISH: 3;
|
|
3413
|
+
readonly ARMS: 4;
|
|
3414
|
+
readonly BLOB: 5;
|
|
3415
|
+
readonly UPRIGHT: 6;
|
|
3416
|
+
readonly LEGS: 7;
|
|
3417
|
+
readonly QUADRUPED: 8;
|
|
3418
|
+
readonly WINGS: 9;
|
|
3419
|
+
readonly TENTACLES: 10;
|
|
3420
|
+
readonly HEADS: 11;
|
|
3421
|
+
readonly HUMANOID: 12;
|
|
3422
|
+
readonly BUG_WINGS: 13;
|
|
3423
|
+
readonly ARMOR: 14;
|
|
3424
|
+
};
|
|
3425
|
+
declare const STATS: {
|
|
3426
|
+
readonly HP: 1;
|
|
3427
|
+
readonly ATTACK: 2;
|
|
3428
|
+
readonly DEFENSE: 3;
|
|
3429
|
+
readonly SPECIAL_ATTACK: 4;
|
|
3430
|
+
readonly SPECIAL_DEFENSE: 5;
|
|
3431
|
+
readonly SPEED: 6;
|
|
3432
|
+
readonly ACCURACY: 7;
|
|
3433
|
+
readonly EVASION: 8;
|
|
3434
|
+
};
|
|
3435
|
+
declare const TYPES: {
|
|
3436
|
+
readonly NORMAL: 1;
|
|
3437
|
+
readonly FIGHTING: 2;
|
|
3438
|
+
readonly FLYING: 3;
|
|
3439
|
+
readonly POISON: 4;
|
|
3440
|
+
readonly GROUND: 5;
|
|
3441
|
+
readonly ROCK: 6;
|
|
3442
|
+
readonly BUG: 7;
|
|
3443
|
+
readonly GHOST: 8;
|
|
3444
|
+
readonly STEEL: 9;
|
|
3445
|
+
readonly FIRE: 10;
|
|
3446
|
+
readonly WATER: 11;
|
|
3447
|
+
readonly GRASS: 12;
|
|
3448
|
+
readonly ELECTRIC: 13;
|
|
3449
|
+
readonly PSYCHIC: 14;
|
|
3450
|
+
readonly ICE: 15;
|
|
3451
|
+
readonly DRAGON: 16;
|
|
3452
|
+
readonly DARK: 17;
|
|
3453
|
+
readonly FAIRY: 18;
|
|
3454
|
+
readonly UNKNOWN: 10001;
|
|
3455
|
+
readonly SHADOW: 10002;
|
|
3456
|
+
};
|
|
3457
|
+
//#endregion
|
|
3458
|
+
//#region src/constants/utilities.d.ts
|
|
3459
|
+
declare const LANGUAGES: {
|
|
3460
|
+
readonly JA_HRKT: 1;
|
|
3461
|
+
readonly JA_ROMA: 2;
|
|
3462
|
+
readonly KO: 3;
|
|
3463
|
+
readonly ZH_HANT: 4;
|
|
3464
|
+
readonly FR: 5;
|
|
3465
|
+
readonly DE: 6;
|
|
3466
|
+
readonly ES: 7;
|
|
3467
|
+
readonly IT: 8;
|
|
3468
|
+
readonly EN: 9;
|
|
3469
|
+
readonly CS: 10;
|
|
3470
|
+
readonly JA: 11;
|
|
3471
|
+
readonly ZH_HANS: 12;
|
|
3472
|
+
readonly PT_BR: 13;
|
|
3473
|
+
};
|
|
3474
|
+
declare namespace index_d_exports {
|
|
3475
|
+
export { BASE_URL, BERRIES, BERRY_FIRMNESSES, BERRY_FLAVORS, CONTEST_TYPES, CURRENCIES, EGG_GROUPS, ENCOUNTER_CONDITIONS, ENCOUNTER_CONDITION_VALUES, ENCOUNTER_METHODS, ENDPOINTS, EVOLUTION_TRIGGERS, Endpoint, GENDERS, GENERATIONS, GROWTH_RATES, ITEM_ATTRIBUTES, ITEM_CATEGORIES, ITEM_FLING_EFFECTS, ITEM_POCKETS, LANGUAGES, MOVE_AILMENTS, MOVE_BATTLE_STYLES, MOVE_CATEGORIES, MOVE_DAMAGE_CLASSES, MOVE_LEARN_METHODS, MOVE_TARGETS, NATURES, PAL_PARK_AREAS, POKEATHLON_STATS, POKEDEXES, POKEMON_COLORS, POKEMON_HABITATS, POKEMON_SHAPES, REGIONS, STATS, TYPES, VERSIONS, VERSION_GROUPS };
|
|
3476
|
+
}
|
|
3477
|
+
//#endregion
|
|
3478
|
+
//#region src/clients/base.d.ts
|
|
3479
|
+
/**
|
|
3480
|
+
* ## Fetch Like
|
|
3481
|
+
* A `fetch` implementation taking a string URL, as every client call does.
|
|
3482
|
+
*/
|
|
3483
|
+
type FetchLike = (input: string, init?: RequestInit) => Promise<Response>;
|
|
3484
|
+
/**
|
|
3485
|
+
* ## Client Options
|
|
3486
|
+
* Optional configuration accepted by every client.
|
|
3487
|
+
*/
|
|
3488
|
+
interface ClientOptions {
|
|
3489
|
+
/**
|
|
3490
|
+
* Where the request lifecycle is reported. Leave empty to log nothing, or pass
|
|
3491
|
+
* {@link consoleLogger} to write it to the console.
|
|
3492
|
+
*/
|
|
3493
|
+
logger?: Logger;
|
|
3494
|
+
/**
|
|
3495
|
+
* Response cache. Leave empty for an in-memory {@link MemoryCache}, pass `false`
|
|
3496
|
+
* to disable caching, or supply your own {@link CacheStore}.
|
|
3497
|
+
*/
|
|
3498
|
+
cache?: CacheStore | false;
|
|
3499
|
+
/** Location of the PokéAPI. Leave empty to use the official PokéAPI instance. */
|
|
3500
|
+
baseURL?: string;
|
|
3501
|
+
/**
|
|
3502
|
+
* Custom `fetch` implementation, for proxies, retries, cancellation or
|
|
3503
|
+
* instrumentation. Defaults to the global `fetch`.
|
|
3504
|
+
*
|
|
3505
|
+
* Requests carry no timeout of their own: supply an `AbortSignal` here if you
|
|
3506
|
+
* want one.
|
|
3507
|
+
*/
|
|
3508
|
+
fetch?: FetchLike;
|
|
3509
|
+
}
|
|
3510
|
+
/**
|
|
3511
|
+
* ## Base Client
|
|
3512
|
+
* Base class for every section client. Handles requests to the PokéAPI, along
|
|
3513
|
+
* with caching and logging.
|
|
3514
|
+
*/
|
|
3515
|
+
declare class BaseClient {
|
|
3516
|
+
/** The store backing this client, or `undefined` when caching is disabled. */
|
|
3517
|
+
readonly cache: CacheStore | undefined;
|
|
3518
|
+
private readonly baseURL;
|
|
3519
|
+
private readonly logger;
|
|
3520
|
+
private readonly fetch;
|
|
3521
|
+
/** Requests already on the wire, so concurrent callers share one round trip. */
|
|
3522
|
+
private readonly inFlight;
|
|
3523
|
+
constructor(clientOptions?: ClientOptions);
|
|
3524
|
+
/**
|
|
3525
|
+
* Drops every cached response. A {@link CacheStore} that does not implement
|
|
3526
|
+
* `clear` is left alone.
|
|
3527
|
+
*/
|
|
3528
|
+
clearCache(): Promise<void>;
|
|
3529
|
+
/**
|
|
3530
|
+
* Resolves a resource through the cache, then through any identical request
|
|
3531
|
+
* already in flight, and only then over the network.
|
|
3532
|
+
*
|
|
3533
|
+
* The URL is joined by concatenation: `new URL(path, base)` would discard the
|
|
3534
|
+
* base's own `/api/v2` path.
|
|
3535
|
+
*/
|
|
3536
|
+
private request;
|
|
3537
|
+
/** Issues a request and remembers it, so a concurrent caller can share it. */
|
|
3538
|
+
private dispatch;
|
|
3539
|
+
private fetchResource;
|
|
3540
|
+
private logResponse;
|
|
3541
|
+
/**
|
|
3542
|
+
* Retrieves a single resource from the PokéAPI by its endpoint and identifier.
|
|
3543
|
+
*
|
|
3544
|
+
* @param identifier - The identifier of the resource, or a path below the endpoint.
|
|
3545
|
+
* Omit it to address the endpoint itself.
|
|
3546
|
+
*/
|
|
3547
|
+
protected getResource<T>(endpoint: Endpoint, identifier?: string | number): Promise<T>;
|
|
3548
|
+
/**
|
|
3549
|
+
* Retrieves a resource by its URL, or by a link taken from another response.
|
|
3550
|
+
*
|
|
3551
|
+
* A link knows what it points at, so passing one infers `T`; a bare string
|
|
3552
|
+
* does not, and needs `T` named.
|
|
3553
|
+
*
|
|
3554
|
+
* @throws {TypeError} If the URL is not valid, or names no endpoint under `baseURL`.
|
|
3555
|
+
*/
|
|
3556
|
+
protected getResourceByURL<T>(resource: string | NamedAPIResource<T> | APIResource<T>, baseURL?: string): Promise<T>;
|
|
3557
|
+
/**
|
|
3558
|
+
* Retrieves a list of resources from the PokéAPI with pagination support.
|
|
3559
|
+
*
|
|
3560
|
+
* @template T - What the listed links resolve to.
|
|
3561
|
+
*/
|
|
3562
|
+
protected getListResource<T = unknown>(endpoint: Endpoint, offset?: number, limit?: number): Promise<NamedAPIResourceList<T>>;
|
|
3563
|
+
/**
|
|
3564
|
+
* Retrieves a list of resources that have no name to list, with pagination support.
|
|
3565
|
+
*
|
|
3566
|
+
* @template T - What the listed links resolve to.
|
|
3567
|
+
*/
|
|
3568
|
+
protected getUnnamedListResource<T = unknown>(endpoint: Endpoint, offset?: number, limit?: number): Promise<APIResourceList<T>>;
|
|
3569
|
+
}
|
|
3570
|
+
//#endregion
|
|
3571
|
+
//#region src/clients/berry.client.d.ts
|
|
3572
|
+
/**
|
|
3573
|
+
* ### Berry Client
|
|
3574
|
+
*
|
|
3575
|
+
* Client used to access the Berry Endpoints:
|
|
3576
|
+
* - [Berries](https://pokeapi.co/docs/v2#berries)
|
|
3577
|
+
* - [Berry Firmnesses](https://pokeapi.co/docs/v2#berry-firmnesses)
|
|
3578
|
+
* - [Berry Flavors](https://pokeapi.co/docs/v2#berry-flavors)
|
|
3579
|
+
* ---
|
|
3580
|
+
* See [PokéAPI Documentation](https://pokeapi.co/docs/v2#berries-section)
|
|
3581
|
+
*/
|
|
3582
|
+
declare class BerryClient extends BaseClient {
|
|
3583
|
+
/** Get a Berry by its name. */
|
|
3584
|
+
getBerryByName(name: string): Promise<Berry>;
|
|
3585
|
+
/** Get a Berry by its ID. */
|
|
3586
|
+
getBerryById(id: number): Promise<Berry>;
|
|
3587
|
+
/** Get a Berry Firmness by its ID. */
|
|
3588
|
+
getBerryFirmnessById(id: number): Promise<BerryFirmness>;
|
|
3589
|
+
/** Get a Berry Firmness by its name. */
|
|
3590
|
+
getBerryFirmnessByName(name: string): Promise<BerryFirmness>;
|
|
3591
|
+
/** Get a Berry Flavor by its ID. */
|
|
3592
|
+
getBerryFlavorById(id: number): Promise<BerryFlavor>;
|
|
3593
|
+
/** Get a Berry Flavor by its name. */
|
|
3594
|
+
getBerryFlavorByName(name: string): Promise<BerryFlavor>;
|
|
3595
|
+
/** List Berries. Page defaults to 20 entries from offset 0. */
|
|
3596
|
+
listBerries(offset?: number, limit?: number): Promise<NamedAPIResourceList<Berry>>;
|
|
3597
|
+
/** List Berry Firmnesses. Page defaults to 20 entries from offset 0. */
|
|
3598
|
+
listBerryFirmnesses(offset?: number, limit?: number): Promise<NamedAPIResourceList<BerryFirmness>>;
|
|
3599
|
+
/** List Berry Flavors. Page defaults to 20 entries from offset 0. */
|
|
3600
|
+
listBerryFlavors(offset?: number, limit?: number): Promise<NamedAPIResourceList<BerryFlavor>>;
|
|
3601
|
+
}
|
|
3602
|
+
//#endregion
|
|
3603
|
+
//#region src/clients/contest.client.d.ts
|
|
3604
|
+
/**
|
|
3605
|
+
* ### Contest Client
|
|
3606
|
+
*
|
|
3607
|
+
* Client used to access the Contest Endpoints:
|
|
3608
|
+
* - [Contest Types](https://pokeapi.co/docs/v2#contest-types)
|
|
3609
|
+
* - [Contest Effects](https://pokeapi.co/docs/v2#contest-effects)
|
|
3610
|
+
* - [Super Contest Effects](https://pokeapi.co/docs/v2#super-contest-effects)
|
|
3611
|
+
* ---
|
|
3612
|
+
* See [PokéAPI Documentation](https://pokeapi.co/docs/v2#contests-section)
|
|
3613
|
+
*/
|
|
3614
|
+
declare class ContestClient extends BaseClient {
|
|
3615
|
+
/** Get a Contest Type by its name. */
|
|
3616
|
+
getContestTypeByName(name: string): Promise<ContestType>;
|
|
3617
|
+
/** Get a Contest Type by its ID. */
|
|
3618
|
+
getContestTypeById(id: number): Promise<ContestType>;
|
|
3619
|
+
/** Get a Contest Effect by its ID. */
|
|
3620
|
+
getContestEffectById(id: number): Promise<ContestEffect>;
|
|
3621
|
+
/** Get a Super Contest Effect by its ID. */
|
|
3622
|
+
getSuperContestEffectById(id: number): Promise<SuperContestEffect>;
|
|
3623
|
+
/** List Contest Types. Page defaults to 20 entries from offset 0. */
|
|
3624
|
+
listContestTypes(offset?: number, limit?: number): Promise<NamedAPIResourceList<ContestType>>;
|
|
3625
|
+
/** List Contest Effects. Page defaults to 20 entries from offset 0. */
|
|
3626
|
+
listContestEffects(offset?: number, limit?: number): Promise<APIResourceList<ContestEffect>>;
|
|
3627
|
+
/** List Super Contest Effects. Page defaults to 20 entries from offset 0. */
|
|
3628
|
+
listSuperContestEffects(offset?: number, limit?: number): Promise<APIResourceList<SuperContestEffect>>;
|
|
3629
|
+
}
|
|
3630
|
+
//#endregion
|
|
3631
|
+
//#region src/clients/currency.client.d.ts
|
|
3632
|
+
/**
|
|
3633
|
+
* ### Currency Client
|
|
3634
|
+
*
|
|
3635
|
+
* Client used to access the Currency Endpoints:
|
|
3636
|
+
* - [Currencies](https://pokeapi.co/docs/v2#currencies)
|
|
3637
|
+
* ---
|
|
3638
|
+
* See [PokéAPI Documentation](https://pokeapi.co/docs/v2#currencies-section)
|
|
3639
|
+
*/
|
|
3640
|
+
declare class CurrencyClient extends BaseClient {
|
|
3641
|
+
/** Get a Currency by its name. */
|
|
3642
|
+
getCurrencyByName(name: string): Promise<Currency>;
|
|
3643
|
+
/** Get a Currency by its ID. */
|
|
3644
|
+
getCurrencyById(id: number): Promise<Currency>;
|
|
3645
|
+
/** List Currencies. Page defaults to 20 entries from offset 0. */
|
|
3646
|
+
listCurrencies(offset?: number, limit?: number): Promise<NamedAPIResourceList<Currency>>;
|
|
3647
|
+
}
|
|
3648
|
+
//#endregion
|
|
3649
|
+
//#region src/clients/encounter.client.d.ts
|
|
3650
|
+
/**
|
|
3651
|
+
* ### Encounter Client
|
|
3652
|
+
*
|
|
3653
|
+
* Client used to access the Encounter Endpoints:
|
|
3654
|
+
* - [Encounter Methods](https://pokeapi.co/docs/v2#encounter-methods)
|
|
3655
|
+
* - [Encounter Conditions](https://pokeapi.co/docs/v2#encounter-conditions)
|
|
3656
|
+
* - [Encounter Condition Values](https://pokeapi.co/docs/v2#encounter-condition-values)
|
|
3657
|
+
* ---
|
|
3658
|
+
* See [PokéAPI Documentation](https://pokeapi.co/docs/v2#encounters-section)
|
|
3659
|
+
*/
|
|
3660
|
+
declare class EncounterClient extends BaseClient {
|
|
3661
|
+
/** Get an Encounter Method by its name. */
|
|
3662
|
+
getEncounterMethodByName(name: string): Promise<EncounterMethod>;
|
|
3663
|
+
/** Get an Encounter Method by its ID. */
|
|
3664
|
+
getEncounterMethodById(id: number): Promise<EncounterMethod>;
|
|
3665
|
+
/** Get an Encounter Condition by its ID. */
|
|
3666
|
+
getEncounterConditionById(id: number): Promise<EncounterCondition>;
|
|
3667
|
+
/** Get an Encounter Condition by its name. */
|
|
3668
|
+
getEncounterConditionByName(name: string): Promise<EncounterCondition>;
|
|
3669
|
+
/** Get an Encounter Condition Value by its name. */
|
|
3670
|
+
getEncounterConditionValueByName(name: string): Promise<EncounterConditionValue>;
|
|
3671
|
+
/** Get an Encounter Condition Value by its ID. */
|
|
3672
|
+
getEncounterConditionValueById(id: number): Promise<EncounterConditionValue>;
|
|
3673
|
+
/** List Encounter Methods. Page defaults to 20 entries from offset 0. */
|
|
3674
|
+
listEncounterMethods(offset?: number, limit?: number): Promise<NamedAPIResourceList<EncounterMethod>>;
|
|
3675
|
+
/** List Encounter Conditions. Page defaults to 20 entries from offset 0. */
|
|
3676
|
+
listEncounterConditions(offset?: number, limit?: number): Promise<NamedAPIResourceList<EncounterCondition>>;
|
|
3677
|
+
/** List Encounter Condition Values. Page defaults to 20 entries from offset 0. */
|
|
3678
|
+
listEncounterConditionValues(offset?: number, limit?: number): Promise<NamedAPIResourceList<EncounterConditionValue>>;
|
|
3679
|
+
}
|
|
3680
|
+
//#endregion
|
|
3681
|
+
//#region src/clients/evolution.client.d.ts
|
|
3682
|
+
/**
|
|
3683
|
+
* ### Evolution Client
|
|
3684
|
+
*
|
|
3685
|
+
* Client used to access the Evolution Endpoints:
|
|
3686
|
+
* - [Evolution Chains](https://pokeapi.co/docs/v2#evolution-chains)
|
|
3687
|
+
* - [Evolution Triggers](https://pokeapi.co/docs/v2#evolution-triggers)
|
|
3688
|
+
* ---
|
|
3689
|
+
* See [PokéAPI Documentation](https://pokeapi.co/docs/v2#evolution-section)
|
|
3690
|
+
*/
|
|
3691
|
+
declare class EvolutionClient extends BaseClient {
|
|
3692
|
+
/** Get an Evolution Chain by its ID. */
|
|
3693
|
+
getEvolutionChainById(id: number): Promise<EvolutionChain>;
|
|
3694
|
+
/** Get an Evolution Trigger by its ID. */
|
|
3695
|
+
getEvolutionTriggerById(id: number): Promise<EvolutionTrigger>;
|
|
3696
|
+
/** Get an Evolution Trigger by its name. */
|
|
3697
|
+
getEvolutionTriggerByName(name: string): Promise<EvolutionTrigger>;
|
|
3698
|
+
/** List Evolution Chains. Page defaults to 20 entries from offset 0. */
|
|
3699
|
+
listEvolutionChains(offset?: number, limit?: number): Promise<APIResourceList<EvolutionChain>>;
|
|
3700
|
+
/** List Evolution Triggers. Page defaults to 20 entries from offset 0. */
|
|
3701
|
+
listEvolutionTriggers(offset?: number, limit?: number): Promise<NamedAPIResourceList<EvolutionTrigger>>;
|
|
3702
|
+
}
|
|
3703
|
+
//#endregion
|
|
3704
|
+
//#region src/clients/game.client.d.ts
|
|
3705
|
+
/**
|
|
3706
|
+
* ### Game Client
|
|
3707
|
+
*
|
|
3708
|
+
* Client used to access the Game Endpoints:
|
|
3709
|
+
* - [Generations](https://pokeapi.co/docs/v2#generations)
|
|
3710
|
+
* - [Pokédexes](https://pokeapi.co/docs/v2#pokedexes)
|
|
3711
|
+
* - [Versions](https://pokeapi.co/docs/v2#version)
|
|
3712
|
+
* - [Version Groups](https://pokeapi.co/docs/v2#version-groups)
|
|
3713
|
+
* ---
|
|
3714
|
+
* See [PokéAPI Documentation](https://pokeapi.co/docs/v2#games-section)
|
|
3715
|
+
*/
|
|
3716
|
+
declare class GameClient extends BaseClient {
|
|
3717
|
+
/** Get a Generation by its name. */
|
|
3718
|
+
getGenerationByName(name: string): Promise<Generation>;
|
|
3719
|
+
/** Get a Generation by its ID. */
|
|
3720
|
+
getGenerationById(id: number): Promise<Generation>;
|
|
3721
|
+
/** Get a Pokédex by its name. */
|
|
3722
|
+
getPokedexByName(name: string): Promise<Pokedex>;
|
|
3723
|
+
/** Get a Pokédex by its ID. */
|
|
3724
|
+
getPokedexById(id: number): Promise<Pokedex>;
|
|
3725
|
+
/** Get a Version by its name. */
|
|
3726
|
+
getVersionByName(name: string): Promise<Version>;
|
|
3727
|
+
/** Get a Version by its ID. */
|
|
3728
|
+
getVersionById(id: number): Promise<Version>;
|
|
3729
|
+
/** Get a Version Group by its name. */
|
|
3730
|
+
getVersionGroupByName(name: string): Promise<VersionGroup>;
|
|
3731
|
+
/** Get a Version Group by its ID. */
|
|
3732
|
+
getVersionGroupById(id: number): Promise<VersionGroup>;
|
|
3733
|
+
/** List Generations. Page defaults to 20 entries from offset 0. */
|
|
3734
|
+
listGenerations(offset?: number, limit?: number): Promise<NamedAPIResourceList<Generation>>;
|
|
3735
|
+
/** List Pokédexes. Page defaults to 20 entries from offset 0. */
|
|
3736
|
+
listPokedexes(offset?: number, limit?: number): Promise<NamedAPIResourceList<Pokedex>>;
|
|
3737
|
+
/** List Versions. Page defaults to 20 entries from offset 0. */
|
|
3738
|
+
listVersions(offset?: number, limit?: number): Promise<NamedAPIResourceList<Version>>;
|
|
3739
|
+
/** List Version Groups. Page defaults to 20 entries from offset 0. */
|
|
3740
|
+
listVersionGroups(offset?: number, limit?: number): Promise<NamedAPIResourceList<VersionGroup>>;
|
|
3741
|
+
}
|
|
3742
|
+
//#endregion
|
|
3743
|
+
//#region src/clients/item.client.d.ts
|
|
3744
|
+
/**
|
|
3745
|
+
* ### Item Client
|
|
3746
|
+
*
|
|
3747
|
+
* Client used to access the Item Endpoints:
|
|
3748
|
+
* - [Items](https://pokeapi.co/docs/v2#item)
|
|
3749
|
+
* - [Item Attributes](https://pokeapi.co/docs/v2#item-attributes)
|
|
3750
|
+
* - [Item Categories](https://pokeapi.co/docs/v2#item-categories)
|
|
3751
|
+
* - [Item Fling Effects](https://pokeapi.co/docs/v2#item-fling-effects)
|
|
3752
|
+
* - [Item Pockets](https://pokeapi.co/docs/v2#item-pockets)
|
|
3753
|
+
* ---
|
|
3754
|
+
* See [PokéAPI Documentation](https://pokeapi.co/docs/v2#items-section)
|
|
3755
|
+
*/
|
|
3756
|
+
declare class ItemClient extends BaseClient {
|
|
3757
|
+
/** Get an Item by its name. */
|
|
3758
|
+
getItemByName(name: string): Promise<Item>;
|
|
3759
|
+
/** Get an Item by its ID. */
|
|
3760
|
+
getItemById(id: number): Promise<Item>;
|
|
3761
|
+
/** Get an Item Attribute by its name. */
|
|
3762
|
+
getItemAttributeByName(name: string): Promise<ItemAttribute>;
|
|
3763
|
+
/** Get an Item Attribute by its ID. */
|
|
3764
|
+
getItemAttributeById(id: number): Promise<ItemAttribute>;
|
|
3765
|
+
/** Get an Item Category by its name. */
|
|
3766
|
+
getItemCategoryByName(name: string): Promise<ItemCategory>;
|
|
3767
|
+
/** Get an Item Category by its ID. */
|
|
3768
|
+
getItemCategoryById(id: number): Promise<ItemCategory>;
|
|
3769
|
+
/** Get an Item Fling Effect by its name. */
|
|
3770
|
+
getItemFlingEffectByName(name: string): Promise<ItemFlingEffect>;
|
|
3771
|
+
/** Get an Item Fling Effect by its ID. */
|
|
3772
|
+
getItemFlingEffectById(id: number): Promise<ItemFlingEffect>;
|
|
3773
|
+
/** Get an Item Pocket by its name. */
|
|
3774
|
+
getItemPocketByName(name: string): Promise<ItemPocket>;
|
|
3775
|
+
/** Get an Item Pocket by its ID. */
|
|
3776
|
+
getItemPocketById(id: number): Promise<ItemPocket>;
|
|
3777
|
+
/** List Items. Page defaults to 20 entries from offset 0. */
|
|
3778
|
+
listItems(offset?: number, limit?: number): Promise<NamedAPIResourceList<Item>>;
|
|
3779
|
+
/** List Item Attributes. Page defaults to 20 entries from offset 0. */
|
|
3780
|
+
listItemAttributes(offset?: number, limit?: number): Promise<NamedAPIResourceList<ItemAttribute>>;
|
|
3781
|
+
/** List Item Categories. Page defaults to 20 entries from offset 0. */
|
|
3782
|
+
listItemCategories(offset?: number, limit?: number): Promise<NamedAPIResourceList<ItemCategory>>;
|
|
3783
|
+
/** List Item Fling Effects. Page defaults to 20 entries from offset 0. */
|
|
3784
|
+
listItemFlingEffects(offset?: number, limit?: number): Promise<NamedAPIResourceList<ItemFlingEffect>>;
|
|
3785
|
+
/** List Item Pockets. Page defaults to 20 entries from offset 0. */
|
|
3786
|
+
listItemPockets(offset?: number, limit?: number): Promise<NamedAPIResourceList<ItemPocket>>;
|
|
3787
|
+
}
|
|
3788
|
+
//#endregion
|
|
3789
|
+
//#region src/clients/location.client.d.ts
|
|
3790
|
+
/**
|
|
3791
|
+
* ### Location Client
|
|
3792
|
+
*
|
|
3793
|
+
* Client used to access the Location Endpoints:
|
|
3794
|
+
* - [Locations](https://pokeapi.co/docs/v2#locations)
|
|
3795
|
+
* - [Location Areas](https://pokeapi.co/docs/v2#location-areas)
|
|
3796
|
+
* - [Pal Park Areas](https://pokeapi.co/docs/v2#pal-park-areas)
|
|
3797
|
+
* - [Regions](https://pokeapi.co/docs/v2#regions)
|
|
3798
|
+
* ---
|
|
3799
|
+
* See [PokéAPI Documentation](https://pokeapi.co/docs/v2#locations-section)
|
|
3800
|
+
*/
|
|
3801
|
+
declare class LocationClient extends BaseClient {
|
|
3802
|
+
/** Get a Location by its name. */
|
|
3803
|
+
getLocationByName(name: string): Promise<Location>;
|
|
3804
|
+
/** Get a Location by its ID. */
|
|
3805
|
+
getLocationById(id: number): Promise<Location>;
|
|
3806
|
+
/** Get a Location Area by its name. */
|
|
3807
|
+
getLocationAreaByName(name: string): Promise<LocationArea>;
|
|
3808
|
+
/** Get a Location Area by its ID. */
|
|
3809
|
+
getLocationAreaById(id: number): Promise<LocationArea>;
|
|
3810
|
+
/** Get a Pal Park Area by its name. */
|
|
3811
|
+
getPalParkAreaByName(name: string): Promise<PalParkArea>;
|
|
3812
|
+
/** Get a Pal Park Area by its ID. */
|
|
3813
|
+
getPalParkAreaById(id: number): Promise<PalParkArea>;
|
|
3814
|
+
/** Get a Region by its name. */
|
|
3815
|
+
getRegionByName(name: string): Promise<Region>;
|
|
3816
|
+
/** Get a Region by its ID. */
|
|
3817
|
+
getRegionById(id: number): Promise<Region>;
|
|
3818
|
+
/** List Locations. Page defaults to 20 entries from offset 0. */
|
|
3819
|
+
listLocations(offset?: number, limit?: number): Promise<NamedAPIResourceList<Location>>;
|
|
3820
|
+
/** List Location Areas. Page defaults to 20 entries from offset 0. */
|
|
3821
|
+
listLocationAreas(offset?: number, limit?: number): Promise<NamedAPIResourceList<LocationArea>>;
|
|
3822
|
+
/** List Pal Park Areas. Page defaults to 20 entries from offset 0. */
|
|
3823
|
+
listPalParkAreas(offset?: number, limit?: number): Promise<NamedAPIResourceList<PalParkArea>>;
|
|
3824
|
+
/** List Regions. Page defaults to 20 entries from offset 0. */
|
|
3825
|
+
listRegions(offset?: number, limit?: number): Promise<NamedAPIResourceList<Region>>;
|
|
3826
|
+
}
|
|
3827
|
+
//#endregion
|
|
3828
|
+
//#region src/clients/machine.client.d.ts
|
|
3829
|
+
/**
|
|
3830
|
+
* ### Machine Client
|
|
3831
|
+
*
|
|
3832
|
+
* Client used to access the Machine Endpoints:
|
|
3833
|
+
* - [Machines](https://pokeapi.co/docs/v2#machines)
|
|
3834
|
+
* ---
|
|
3835
|
+
* See [PokéAPI Documentation](https://pokeapi.co/docs/v2#machines-section)
|
|
3836
|
+
*/
|
|
3837
|
+
declare class MachineClient extends BaseClient {
|
|
3838
|
+
/** Get a Machine by its ID. */
|
|
3839
|
+
getMachineById(id: number): Promise<Machine>;
|
|
3840
|
+
/** List Machines. Page defaults to 20 entries from offset 0. */
|
|
3841
|
+
listMachines(offset?: number, limit?: number): Promise<APIResourceList<Machine>>;
|
|
3842
|
+
}
|
|
3843
|
+
//#endregion
|
|
3844
|
+
//#region src/clients/move.client.d.ts
|
|
3845
|
+
/**
|
|
3846
|
+
* ### Move Client
|
|
3847
|
+
*
|
|
3848
|
+
* Client used to access the Move Endpoints:
|
|
3849
|
+
* - [Moves](https://pokeapi.co/docs/v2#moves)
|
|
3850
|
+
* - [Move Ailments](https://pokeapi.co/docs/v2#move-ailments)
|
|
3851
|
+
* - [Move Battle Styles](https://pokeapi.co/docs/v2#move-battle-styles)
|
|
3852
|
+
* - [Move Categories](https://pokeapi.co/docs/v2#move-categories)
|
|
3853
|
+
* - [Move Damage Classes](https://pokeapi.co/docs/v2#move-damage-classes)
|
|
3854
|
+
* - [Move Learn Methods](https://pokeapi.co/docs/v2#move-learn-methods)
|
|
3855
|
+
* - [Move Targets](https://pokeapi.co/docs/v2#move-targets)
|
|
3856
|
+
* ---
|
|
3857
|
+
* See [PokéAPI Documentation](https://pokeapi.co/docs/v2#moves-section)
|
|
3858
|
+
*/
|
|
3859
|
+
declare class MoveClient extends BaseClient {
|
|
3860
|
+
/** Get a Move by its name. */
|
|
3861
|
+
getMoveByName(name: string): Promise<Move>;
|
|
3862
|
+
/** Get a Move by its ID. */
|
|
3863
|
+
getMoveById(id: number): Promise<Move>;
|
|
3864
|
+
/** Get a Move Ailment by its name. */
|
|
3865
|
+
getMoveAilmentByName(name: string): Promise<MoveAilment>;
|
|
3866
|
+
/** Get a Move Ailment by its ID. */
|
|
3867
|
+
getMoveAilmentById(id: number): Promise<MoveAilment>;
|
|
3868
|
+
/** Get a Move Battle Style by its name. */
|
|
3869
|
+
getMoveBattleStyleByName(name: string): Promise<MoveBattleStyle>;
|
|
3870
|
+
/** Get a Move Battle Style by its ID. */
|
|
3871
|
+
getMoveBattleStyleById(id: number): Promise<MoveBattleStyle>;
|
|
3872
|
+
/** Get a Move Category by its name. */
|
|
3873
|
+
getMoveCategoryByName(name: string): Promise<MoveCategory>;
|
|
3874
|
+
/** Get a Move Category by its ID. */
|
|
3875
|
+
getMoveCategoryById(id: number): Promise<MoveCategory>;
|
|
3876
|
+
/** Get a Move Damage Class by its name. */
|
|
3877
|
+
getMoveDamageClassByName(name: string): Promise<MoveDamageClass>;
|
|
3878
|
+
/** Get a Move Damage Class by its ID. */
|
|
3879
|
+
getMoveDamageClassById(id: number): Promise<MoveDamageClass>;
|
|
3880
|
+
/** Get a Move Learn Method by its name. */
|
|
3881
|
+
getMoveLearnMethodByName(name: string): Promise<MoveLearnMethod>;
|
|
3882
|
+
/** Get a Move Learn Method by its ID. */
|
|
3883
|
+
getMoveLearnMethodById(id: number): Promise<MoveLearnMethod>;
|
|
3884
|
+
/** Get a Move Target by its name. */
|
|
3885
|
+
getMoveTargetByName(name: string): Promise<MoveTarget>;
|
|
3886
|
+
/** Get a Move Target by its ID. */
|
|
3887
|
+
getMoveTargetById(id: number): Promise<MoveTarget>;
|
|
3888
|
+
/** List Moves. Page defaults to 20 entries from offset 0. */
|
|
3889
|
+
listMoves(offset?: number, limit?: number): Promise<NamedAPIResourceList<Move>>;
|
|
3890
|
+
/** List Move Ailments. Page defaults to 20 entries from offset 0. */
|
|
3891
|
+
listMoveAilments(offset?: number, limit?: number): Promise<NamedAPIResourceList<MoveAilment>>;
|
|
3892
|
+
/** List Move Battle Styles. Page defaults to 20 entries from offset 0. */
|
|
3893
|
+
listMoveBattleStyles(offset?: number, limit?: number): Promise<NamedAPIResourceList<MoveBattleStyle>>;
|
|
3894
|
+
/** List Move Categories. Page defaults to 20 entries from offset 0. */
|
|
3895
|
+
listMoveCategories(offset?: number, limit?: number): Promise<NamedAPIResourceList<MoveCategory>>;
|
|
3896
|
+
/** List Move Damage Classes. Page defaults to 20 entries from offset 0. */
|
|
3897
|
+
listMoveDamageClasses(offset?: number, limit?: number): Promise<NamedAPIResourceList<MoveDamageClass>>;
|
|
3898
|
+
/** List Move Learn Methods. Page defaults to 20 entries from offset 0. */
|
|
3899
|
+
listMoveLearnMethods(offset?: number, limit?: number): Promise<NamedAPIResourceList<MoveLearnMethod>>;
|
|
3900
|
+
/** List Move Targets. Page defaults to 20 entries from offset 0. */
|
|
3901
|
+
listMoveTargets(offset?: number, limit?: number): Promise<NamedAPIResourceList<MoveTarget>>;
|
|
3902
|
+
}
|
|
3903
|
+
//#endregion
|
|
3904
|
+
//#region src/clients/pokemon.client.d.ts
|
|
3905
|
+
/**
|
|
3906
|
+
* ### Pokémon Client
|
|
3907
|
+
*
|
|
3908
|
+
* Client used to access the Pokémon Endpoints:
|
|
3909
|
+
* - [Abilities](https://pokeapi.co/docs/v2#abilities)
|
|
3910
|
+
* - [Characteristics](https://pokeapi.co/docs/v2#characteristics)
|
|
3911
|
+
* - [Egg Groups](https://pokeapi.co/docs/v2#egg-groups)
|
|
3912
|
+
* - [Genders](https://pokeapi.co/docs/v2#genders)
|
|
3913
|
+
* - [Growth Rates](https://pokeapi.co/docs/v2#growth-rates)
|
|
3914
|
+
* - [Natures](https://pokeapi.co/docs/v2#natures)
|
|
3915
|
+
* - [Pokéathlon Stats](https://pokeapi.co/docs/v2#pokeathlon-stats)
|
|
3916
|
+
* - [Pokémon](https://pokeapi.co/docs/v2#pokemon)
|
|
3917
|
+
* - [Pokémon Location Areas](https://pokeapi.co/docs/v2#pokemon-location-areas)
|
|
3918
|
+
* - [Pokémon Colors](https://pokeapi.co/docs/v2#pokemon-colors)
|
|
3919
|
+
* - [Pokémon Forms](https://pokeapi.co/docs/v2#pokemon-forms)
|
|
3920
|
+
* - [Pokémon Habitats](https://pokeapi.co/docs/v2#pokemon-habitats)
|
|
3921
|
+
* - [Pokémon Shapes](https://pokeapi.co/docs/v2#pokemon-shapes)
|
|
3922
|
+
* - [Pokémon Species](https://pokeapi.co/docs/v2#pokemon-species)
|
|
3923
|
+
* - [Stats](https://pokeapi.co/docs/v2#stats)
|
|
3924
|
+
* - [Types](https://pokeapi.co/docs/v2#types)
|
|
3925
|
+
* ---
|
|
3926
|
+
* See [PokéAPI Documentation](https://pokeapi.co/docs/v2#pokemon-section)
|
|
3927
|
+
*/
|
|
3928
|
+
declare class PokemonClient extends BaseClient {
|
|
3929
|
+
/** Get an Ability by its name. */
|
|
3930
|
+
getAbilityByName(name: string): Promise<Ability>;
|
|
3931
|
+
/** Get an Ability by its ID. */
|
|
3932
|
+
getAbilityById(id: number): Promise<Ability>;
|
|
3933
|
+
/** Get a Characteristic by its ID. */
|
|
3934
|
+
getCharacteristicById(id: number): Promise<Characteristic>;
|
|
3935
|
+
/** Get an Egg Group by its name. */
|
|
3936
|
+
getEggGroupByName(name: string): Promise<EggGroup>;
|
|
3937
|
+
/** Get an Egg Group by its ID. */
|
|
3938
|
+
getEggGroupById(id: number): Promise<EggGroup>;
|
|
3939
|
+
/** Get a Gender by its name. */
|
|
3940
|
+
getGenderByName(name: string): Promise<Gender>;
|
|
3941
|
+
/** Get a Gender by its ID. */
|
|
3942
|
+
getGenderById(id: number): Promise<Gender>;
|
|
3943
|
+
/** Get a Growth Rate by its name. */
|
|
3944
|
+
getGrowthRateByName(name: string): Promise<GrowthRate>;
|
|
3945
|
+
/** Get a Growth Rate by its ID. */
|
|
3946
|
+
getGrowthRateById(id: number): Promise<GrowthRate>;
|
|
3947
|
+
/** Get a Nature by its name. */
|
|
3948
|
+
getNatureByName(name: string): Promise<Nature>;
|
|
3949
|
+
/** Get a Nature by its ID. */
|
|
3950
|
+
getNatureById(id: number): Promise<Nature>;
|
|
3951
|
+
/** Get a Pokéathlon Stat by its name. */
|
|
3952
|
+
getPokeathlonStatByName(name: string): Promise<PokeathlonStat>;
|
|
3953
|
+
/** Get a Pokéathlon Stat by its ID. */
|
|
3954
|
+
getPokeathlonStatById(id: number): Promise<PokeathlonStat>;
|
|
3955
|
+
/** Get a Pokémon by its name. */
|
|
3956
|
+
getPokemonByName(name: string): Promise<Pokemon>;
|
|
3957
|
+
/** Get a Pokémon by its ID. */
|
|
3958
|
+
getPokemonById(id: number): Promise<Pokemon>;
|
|
3959
|
+
/**
|
|
3960
|
+
* Get the areas a Pokémon can be encountered in, by its ID.
|
|
3961
|
+
* @returns Every location area the Pokémon appears in, with its encounter details.
|
|
3962
|
+
*/
|
|
3963
|
+
getPokemonLocationAreaById(id: number): Promise<LocationAreaEncounter[]>;
|
|
3964
|
+
/** Get a Pokémon Color by its name. */
|
|
3965
|
+
getPokemonColorByName(name: string): Promise<PokemonColor>;
|
|
3966
|
+
/** Get a Pokémon Color by its ID. */
|
|
3967
|
+
getPokemonColorById(id: number): Promise<PokemonColor>;
|
|
3968
|
+
/** Get a Pokémon Form by its name. */
|
|
3969
|
+
getPokemonFormByName(name: string): Promise<PokemonForm>;
|
|
3970
|
+
/** Get a Pokémon Form by its ID. */
|
|
3971
|
+
getPokemonFormById(id: number): Promise<PokemonForm>;
|
|
3972
|
+
/** Get a Pokémon Habitat by its name. */
|
|
3973
|
+
getPokemonHabitatByName(name: string): Promise<PokemonHabitat>;
|
|
3974
|
+
/** Get a Pokémon Habitat by its ID. */
|
|
3975
|
+
getPokemonHabitatById(id: number): Promise<PokemonHabitat>;
|
|
3976
|
+
/** Get a Pokémon Shape by its name. */
|
|
3977
|
+
getPokemonShapeByName(name: string): Promise<PokemonShape>;
|
|
3978
|
+
/** Get a Pokémon Shape by its ID. */
|
|
3979
|
+
getPokemonShapeById(id: number): Promise<PokemonShape>;
|
|
3980
|
+
/** Get a Pokémon Species by its name. */
|
|
3981
|
+
getPokemonSpeciesByName(name: string): Promise<PokemonSpecies>;
|
|
3982
|
+
/** Get a Pokémon Species by its ID. */
|
|
3983
|
+
getPokemonSpeciesById(id: number): Promise<PokemonSpecies>;
|
|
3984
|
+
/** Get a Stat by its name. */
|
|
3985
|
+
getStatByName(name: string): Promise<Stat>;
|
|
3986
|
+
/** Get a Stat by its ID. */
|
|
3987
|
+
getStatById(id: number): Promise<Stat>;
|
|
3988
|
+
/** Get a Type by its name. */
|
|
3989
|
+
getTypeByName(name: string): Promise<Type>;
|
|
3990
|
+
/** Get a Type by its ID. */
|
|
3991
|
+
getTypeById(id: number): Promise<Type>;
|
|
3992
|
+
/** List Abilities. Page defaults to 20 entries from offset 0. */
|
|
3993
|
+
listAbilities(offset?: number, limit?: number): Promise<NamedAPIResourceList<Ability>>;
|
|
3994
|
+
/** List Characteristics. Page defaults to 20 entries from offset 0. */
|
|
3995
|
+
listCharacteristics(offset?: number, limit?: number): Promise<APIResourceList<Characteristic>>;
|
|
3996
|
+
/** List Egg Groups. Page defaults to 20 entries from offset 0. */
|
|
3997
|
+
listEggGroups(offset?: number, limit?: number): Promise<NamedAPIResourceList<EggGroup>>;
|
|
3998
|
+
/** List Genders. Page defaults to 20 entries from offset 0. */
|
|
3999
|
+
listGenders(offset?: number, limit?: number): Promise<NamedAPIResourceList<Gender>>;
|
|
4000
|
+
/** List Growth Rates. Page defaults to 20 entries from offset 0. */
|
|
4001
|
+
listGrowthRates(offset?: number, limit?: number): Promise<NamedAPIResourceList<GrowthRate>>;
|
|
4002
|
+
/** List Natures. Page defaults to 20 entries from offset 0. */
|
|
4003
|
+
listNatures(offset?: number, limit?: number): Promise<NamedAPIResourceList<Nature>>;
|
|
4004
|
+
/** List Pokéathlon Stats. Page defaults to 20 entries from offset 0. */
|
|
4005
|
+
listPokeathlonStats(offset?: number, limit?: number): Promise<NamedAPIResourceList<PokeathlonStat>>;
|
|
4006
|
+
/** List Pokémon. Page defaults to 20 entries from offset 0. */
|
|
4007
|
+
listPokemons(offset?: number, limit?: number): Promise<NamedAPIResourceList<Pokemon>>;
|
|
4008
|
+
/** List Pokémon Colors. Page defaults to 20 entries from offset 0. */
|
|
4009
|
+
listPokemonColors(offset?: number, limit?: number): Promise<NamedAPIResourceList<PokemonColor>>;
|
|
4010
|
+
/** List Pokémon Forms. Page defaults to 20 entries from offset 0. */
|
|
4011
|
+
listPokemonForms(offset?: number, limit?: number): Promise<NamedAPIResourceList<PokemonForm>>;
|
|
4012
|
+
/** List Pokémon Habitats. Page defaults to 20 entries from offset 0. */
|
|
4013
|
+
listPokemonHabitats(offset?: number, limit?: number): Promise<NamedAPIResourceList<PokemonHabitat>>;
|
|
4014
|
+
/** List Pokémon Shapes. Page defaults to 20 entries from offset 0. */
|
|
4015
|
+
listPokemonShapes(offset?: number, limit?: number): Promise<NamedAPIResourceList<PokemonShape>>;
|
|
4016
|
+
/** List Pokémon Species. Page defaults to 20 entries from offset 0. */
|
|
4017
|
+
listPokemonSpecies(offset?: number, limit?: number): Promise<NamedAPIResourceList<PokemonSpecies>>;
|
|
4018
|
+
/** List Stats. Page defaults to 20 entries from offset 0. */
|
|
4019
|
+
listStats(offset?: number, limit?: number): Promise<NamedAPIResourceList<Stat>>;
|
|
4020
|
+
/** List Types. Page defaults to 20 entries from offset 0. */
|
|
4021
|
+
listTypes(offset?: number, limit?: number): Promise<NamedAPIResourceList<Type>>;
|
|
4022
|
+
}
|
|
4023
|
+
//#endregion
|
|
4024
|
+
//#region src/clients/utility.client.d.ts
|
|
4025
|
+
/**
|
|
4026
|
+
* ### Utility Client
|
|
4027
|
+
*
|
|
4028
|
+
* Client used to access the Utility Endpoints:
|
|
4029
|
+
* - [Languages](https://pokeapi.co/docs/v2#languages)
|
|
4030
|
+
* - [Resources](https://pokeapi.co/docs/v2#resource-listspagination-section)
|
|
4031
|
+
* ---
|
|
4032
|
+
* See [PokéAPI Documentation](https://pokeapi.co/docs/v2#utility-section)
|
|
4033
|
+
*/
|
|
4034
|
+
declare class UtilityClient extends BaseClient {
|
|
4035
|
+
/** Get a Language by its ID. */
|
|
4036
|
+
getLanguageById(id: number): Promise<Language>;
|
|
4037
|
+
/** Get a Language by its name. */
|
|
4038
|
+
getLanguageByName(name: string): Promise<Language>;
|
|
4039
|
+
/**
|
|
4040
|
+
* Get any resource by its URL, or by a link taken from another response.
|
|
4041
|
+
*
|
|
4042
|
+
* A link carries what it points at, so the result is typed without saying so:
|
|
4043
|
+
*
|
|
4044
|
+
* ```ts
|
|
4045
|
+
* const pokemon = await api.pokemon.getPokemonByName('luxray');
|
|
4046
|
+
* const species = await api.utility.getResourceByUrl(pokemon.species);
|
|
4047
|
+
* // ^? PokemonSpecies
|
|
4048
|
+
* ```
|
|
4049
|
+
*
|
|
4050
|
+
* @param resource The absolute URL of the resource, or a link to it.
|
|
4051
|
+
* @returns The resource the URL points at.
|
|
4052
|
+
* @throws {TypeError} If the URL is not valid, or names no PokéAPI endpoint.
|
|
4053
|
+
*/
|
|
4054
|
+
getResourceByUrl<T>(resource: string | NamedAPIResource<T> | APIResource<T>): Promise<T>;
|
|
4055
|
+
/** List Languages. Page defaults to 20 entries from offset 0. */
|
|
4056
|
+
listLanguages(offset?: number, limit?: number): Promise<NamedAPIResourceList<Language>>;
|
|
4057
|
+
}
|
|
4058
|
+
//#endregion
|
|
4059
|
+
//#region src/clients/main.client.d.ts
|
|
4060
|
+
/**
|
|
4061
|
+
* ### Main Client
|
|
4062
|
+
*
|
|
4063
|
+
* The main client used to access all the PokéAPI Endpoints:
|
|
4064
|
+
* - [Berries](https://pokeapi.co/docs/v2#berries-section)
|
|
4065
|
+
* - [Contests](https://pokeapi.co/docs/v2#contests-section)
|
|
4066
|
+
* - [Currencies](https://pokeapi.co/docs/v2#currencies-section)
|
|
4067
|
+
* - [Encounters](https://pokeapi.co/docs/v2#encounters-section)
|
|
4068
|
+
* - [Evolution](https://pokeapi.co/docs/v2#evolution-section)
|
|
4069
|
+
* - [Games](https://pokeapi.co/docs/v2#games-section)
|
|
4070
|
+
* - [Items](https://pokeapi.co/docs/v2#items-section)
|
|
4071
|
+
* - [Locations](https://pokeapi.co/docs/v2#locations-section)
|
|
4072
|
+
* - [Machines](https://pokeapi.co/docs/v2#machines-section)
|
|
4073
|
+
* - [Moves](https://pokeapi.co/docs/v2#moves-section)
|
|
4074
|
+
* - [Pokémon](https://pokeapi.co/docs/v2#pokemon-section)
|
|
4075
|
+
* - [Utility](https://pokeapi.co/docs/v2#utility-section)
|
|
4076
|
+
* ---
|
|
4077
|
+
* All the clients below share a single cache, so a resource fetched through one
|
|
4078
|
+
* of them is served from memory by the rest.
|
|
4079
|
+
*
|
|
4080
|
+
* See [PokéAPI Documentation](https://pokeapi.co/docs/v2)
|
|
4081
|
+
*/
|
|
4082
|
+
declare class MainClient {
|
|
4083
|
+
readonly cache: CacheStore | undefined;
|
|
4084
|
+
readonly berry: BerryClient;
|
|
4085
|
+
readonly contest: ContestClient;
|
|
4086
|
+
readonly currency: CurrencyClient;
|
|
4087
|
+
readonly encounter: EncounterClient;
|
|
4088
|
+
readonly evolution: EvolutionClient;
|
|
4089
|
+
readonly game: GameClient;
|
|
4090
|
+
readonly item: ItemClient;
|
|
4091
|
+
readonly location: LocationClient;
|
|
4092
|
+
readonly machine: MachineClient;
|
|
4093
|
+
readonly move: MoveClient;
|
|
4094
|
+
readonly pokemon: PokemonClient;
|
|
4095
|
+
readonly utility: UtilityClient;
|
|
4096
|
+
constructor(clientOptions?: ClientOptions);
|
|
4097
|
+
/** Drops every cached response, for all the clients at once. */
|
|
4098
|
+
clearCache(): Promise<void>;
|
|
4099
|
+
}
|
|
4100
|
+
//#endregion
|
|
4101
|
+
//#region src/config/errors.d.ts
|
|
4102
|
+
/**
|
|
4103
|
+
* ## Pokenode Error
|
|
4104
|
+
* Thrown when the PokéAPI answers with a non-2xx status. Transport failures are
|
|
4105
|
+
* not wrapped — the native error propagates untouched.
|
|
4106
|
+
*/
|
|
4107
|
+
declare class PokenodeError extends Error {
|
|
4108
|
+
readonly name = "PokenodeError";
|
|
4109
|
+
readonly kind = "pokenode:http";
|
|
4110
|
+
/** HTTP status code of the response. */
|
|
4111
|
+
readonly status: number;
|
|
4112
|
+
/** HTTP status text of the response. */
|
|
4113
|
+
readonly statusText: string;
|
|
4114
|
+
/** URL that produced the error. */
|
|
4115
|
+
readonly url: string;
|
|
4116
|
+
/** Parsed response body, when the error response carried JSON. */
|
|
4117
|
+
readonly body: unknown;
|
|
4118
|
+
constructor(response: Response, body: unknown);
|
|
4119
|
+
/** Whether the error came from a pokenode-ts client. */
|
|
4120
|
+
static isPokenodeError(error: unknown): error is PokenodeError;
|
|
4121
|
+
}
|
|
4122
|
+
//#endregion
|
|
4123
|
+
//#region src/utils/sprites.d.ts
|
|
4124
|
+
/**
|
|
4125
|
+
* ## Sprite Variant
|
|
4126
|
+
* The sprite sets the PokéAPI publishes for a Pokémon.
|
|
4127
|
+
*/
|
|
4128
|
+
type SpriteVariant = "default" | "official-artwork" | "home" | "dream-world" | "showdown";
|
|
4129
|
+
/**
|
|
4130
|
+
* ## Pokemon Sprite Options
|
|
4131
|
+
* Which sprite to build a URL for.
|
|
4132
|
+
*
|
|
4133
|
+
* The sets do not carry the same images, so the options are constrained per
|
|
4134
|
+
* variant: only `default` and `showdown` have back-facing sprites, and only
|
|
4135
|
+
* `official-artwork` has no gendered ones.
|
|
4136
|
+
*/
|
|
4137
|
+
type PokemonSpriteOptions = {
|
|
4138
|
+
variant?: "default";
|
|
4139
|
+
shiny?: boolean;
|
|
4140
|
+
back?: boolean;
|
|
4141
|
+
female?: boolean;
|
|
4142
|
+
} | {
|
|
4143
|
+
variant: "showdown";
|
|
4144
|
+
shiny?: boolean;
|
|
4145
|
+
back?: boolean;
|
|
4146
|
+
female?: boolean;
|
|
4147
|
+
} | {
|
|
4148
|
+
variant: "home";
|
|
4149
|
+
shiny?: boolean;
|
|
4150
|
+
female?: boolean;
|
|
4151
|
+
back?: never;
|
|
4152
|
+
} | {
|
|
4153
|
+
variant: "official-artwork";
|
|
4154
|
+
shiny?: boolean;
|
|
4155
|
+
back?: never;
|
|
4156
|
+
female?: never;
|
|
4157
|
+
} | {
|
|
4158
|
+
variant: "dream-world";
|
|
4159
|
+
female?: boolean;
|
|
4160
|
+
shiny?: never;
|
|
4161
|
+
back?: never;
|
|
4162
|
+
};
|
|
4163
|
+
/**
|
|
4164
|
+
* Builds the URL of a Pokémon sprite, without a request.
|
|
4165
|
+
*
|
|
4166
|
+
* ```ts
|
|
4167
|
+
* getPokemonSpriteUrl(25); // front, default set
|
|
4168
|
+
* getPokemonSpriteUrl(25, { variant: "official-artwork" });
|
|
4169
|
+
* getPokemonSpriteUrl(25, { variant: "showdown", back: true, shiny: true });
|
|
4170
|
+
* ```
|
|
4171
|
+
*
|
|
4172
|
+
* The sprite repository does not hold every combination for every Pokémon — a
|
|
4173
|
+
* back-facing sprite of a recent generation, or a gendered form of a species with
|
|
4174
|
+
* one appearance, simply does not exist. This builds a well-formed URL; it does
|
|
4175
|
+
* not promise the file is there.
|
|
4176
|
+
*
|
|
4177
|
+
* @param id The Pokémon ID. Names are not addressable — the sprites are keyed by ID.
|
|
4178
|
+
* @param options Which sprite set and which facing to build for.
|
|
4179
|
+
* @returns The URL of the sprite.
|
|
4180
|
+
*/
|
|
4181
|
+
declare const getPokemonSpriteUrl: (id: number, options?: PokemonSpriteOptions) => string;
|
|
4182
|
+
//#endregion
|
|
4183
|
+
export { APIResource, APIResourceList, Ability, AbilityEffectChange, AbilityFlavorText, AbilityPokemon, Animated, AwesomeName, BASE_URL, BERRIES, BERRY_FIRMNESSES, BERRY_FLAVORS, Berry, BerryClient, BerryFirmness, BerryFlavor, BerryFlavorMap, BlackWhite, BrilliantDiamondShiningPearl, index_d_exports as CONSTANTS, CONTEST_TYPES, CURRENCIES, type CacheStore, ChainLink, Characteristic, type ClientOptions, ContestClient, ContestComboDetail, ContestComboSets, ContestEffect, ContestFlavorText, ContestName, ContestType, Crystal, Currency, CurrencyClient, Description, DiamondPearl, DreamWorld, EGG_GROUPS, ENCOUNTER_CONDITIONS, ENCOUNTER_CONDITION_VALUES, ENCOUNTER_METHODS, ENDPOINTS, EVOLUTION_TRIGGERS, Effect, EggGroup, Emerald, Encounter, EncounterClient, EncounterCondition, EncounterConditionValue, EncounterMethod, EncounterMethodRate, EncounterPokemonDetail, EncounterVersionDetails, Endpoint, EvolutionChain, EvolutionClient, EvolutionDetail, EvolutionTrigger, type FetchLike, FireredLeafgreen, FlavorBerryMap, FlavorText, GENDERS, GENERATIONS, GROWTH_RATES, GameClient, Gender, Generation, GenerationGameIndex, GenerationIIISprites, GenerationIIITypeSprites, GenerationIISprites, GenerationISprites, GenerationIVSprites, GenerationIVTypeSprites, GenerationIXSprites, GenerationIXTypeSprites, GenerationVIIISprites, GenerationVIIITypeSprites, GenerationVIISprites, GenerationVIITypeSprites, GenerationVISprites, GenerationVITypeSprites, GenerationVSprites, GenerationVTypeSprites, GenerationViiIcons, GenerationViiiIcons, Genus, Gold, GrowthRate, GrowthRateExperienceLevel, HeartgoldSoulsilver, Home, ITEM_ATTRIBUTES, ITEM_CATEGORIES, ITEM_FLING_EFFECTS, ITEM_POCKETS, Item, ItemAttribute, ItemCategory, ItemClient, ItemFlingEffect, ItemHolderPokemon, ItemHolderPokemonVersionDetail, ItemPocket, ItemPrice, ItemSprites, LANGUAGES, Language, Location, LocationArea, LocationAreaEncounter, LocationClient, type LogErrorPayload, type LogRequestPayload, type LogResponsePayload, type Logger, MOVE_AILMENTS, MOVE_BATTLE_STYLES, MOVE_CATEGORIES, MOVE_DAMAGE_CLASSES, MOVE_LEARN_METHODS, MOVE_TARGETS, Machine, MachineClient, MachineVersionDetail, MainClient, MemoryCache, type MemoryCacheOptions, Move, MoveAilment, MoveBattleStyle, MoveBattleStylePreference, MoveCategory, MoveClient, MoveDamageClass, MoveFlavorText, MoveLearnMethod, MoveMetaData, MoveStatAffect, MoveStatAffectSets, MoveStatChange, MoveTarget, NATURES, Name, NamedAPIResource, NamedAPIResourceList, Nature, NaturePokeathlonStatAffect, NaturePokeathlonStatAffectSets, NatureStatAffectSets, NatureStatChange, OfficialArtwork, OmegarubyAlphasapphire, OtherPokemonSprites, PAL_PARK_AREAS, POKEATHLON_STATS, POKEDEXES, POKEMON_COLORS, POKEMON_HABITATS, POKEMON_SHAPES, PalParkArea, PalParkEncounterArea, PalParkEncounterSpecies, PastMoveStatValues, Platinum, PokeathlonStat, Pokedex, Pokemon, PokemonAbility, PokemonClient, PokemonColor, PokemonCries, PokemonEncounter, PokemonEntry, PokemonForm, PokemonFormCondition, PokemonFormGenerationVIIISprites, PokemonFormSprites, PokemonFormVersionSprites, PokemonHabitat, PokemonHeldItem, PokemonHeldItemVersion, PokemonMove, PokemonMoveVersion, PokemonPastAbility, PokemonPastAbilitySlot, PokemonPastStat, PokemonPastType, PokemonShape, PokemonSpecies, PokemonSpeciesDexEntry, PokemonSpeciesGender, PokemonSpeciesVariety, PokemonSpriteOptions, PokemonSprites, PokemonStat, PokemonType, PokenodeError, REGIONS, RedBlue, Region, RubySapphire, STATS, ScarletViolet, Showdown, Silver, SpriteVariant, Stat, SuperContestEffect, TYPES, Type, TypeGameSprites, TypePokemon, TypeRelations, TypeRelationsPast, TypeSprites, UltraSunUltraMoon, UtilityClient, VERSIONS, VERSION_GROUPS, VerboseEffect, Version, VersionEncounterDetail, VersionGameIndex, VersionGroup, VersionGroupFlavorText, VersionSprites, WebStorageCache, type WebStorageCacheOptions, type WebStorageLike, XY, Yellow, consoleLogger, getPokemonSpriteUrl };
|
|
4184
|
+
//# sourceMappingURL=index.d.cts.map
|