@dava96/osrs-icons 1.0.18 → 1.0.19

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  # OSRS Icons
2
2
 
3
- A collection of Old School RuneScape inventory icons as ready-to-use CSS cursor values.
4
- Designed for easy integration with modern web apps, with full tree-shaking support to keep your bundle small.
3
+ A collection of Old School RuneScape icons as ready-to-use CSS cursor values.
4
+ Import only what you need unused icons are automatically tree-shaken from your bundle.
5
5
 
6
6
  [![npm](https://img.shields.io/npm/v/@dava96/osrs-icons)](https://www.npmjs.com/package/@dava96/osrs-icons)
7
7
  [![npm downloads](https://img.shields.io/npm/dw/@dava96/osrs-icons)](https://www.npmjs.com/package/@dava96/osrs-icons)
@@ -10,25 +10,7 @@ Designed for easy integration with modern web apps, with full tree-shaking suppo
10
10
 
11
11
  📖 **[Browse icons & build packs →](https://dava96.github.io/osrs-icons/)**
12
12
 
13
- ## Table of Contents
14
-
15
- - [Installation](#installation)
16
- - [Quick Start](#quick-start)
17
- - [Usage](#usage)
18
- - [CSS Cursor](#css-cursor-tree-shaking-supported)
19
- - [As an Image](#as-an-image)
20
- - [Icon Discovery](#icon-discovery)
21
- - [CDN (No Build Step)](#cdn-usage-no-build-step)
22
- - [Cursor Packs](#cursor-packs)
23
- - [Utilities](#utilities)
24
- - [flipCursor](#flip-cursor)
25
- - [applyCursors](#apply-cursors)
26
- - [errorCursor](#error-cursor-)
27
- - [API Reference](#api-reference)
28
- - [Browser Compatibility](#browser-compatibility)
29
- - [How It Works](#how-it-works)
30
- - [Contributing](#contributing)
31
- - [License](#license)
13
+ ---
32
14
 
33
15
  ## Installation
34
16
 
@@ -36,93 +18,112 @@ Designed for easy integration with modern web apps, with full tree-shaking suppo
36
18
  npm install @dava96/osrs-icons
37
19
  ```
38
20
 
21
+ Or use it directly from a CDN with no build step:
22
+
23
+ ```html
24
+ <script type="module">
25
+ import { abyssalWhip } from 'https://esm.sh/@dava96/osrs-icons';
26
+
27
+ document.body.style.cursor = abyssalWhip;
28
+ </script>
29
+ ```
30
+
39
31
  ## Quick Start
40
32
 
41
33
  ```tsx
42
- import { abyssalWhip } from '@dava96/osrs-icons';
34
+ import { abyssalWhip, toDataUrl } from '@dava96/osrs-icons';
43
35
 
44
- // As a cursor
45
- <div style={{ cursor: abyssalWhip }}>Hover me!</div>;
36
+ // Use as a CSS cursor
37
+ <div style={{ cursor: abyssalWhip }}>Hover me!</div>
46
38
 
47
- // As an image
48
- import { toDataUrl } from '@dava96/osrs-icons';
49
- <img src={toDataUrl(abyssalWhip)} alt="Abyssal Whip" />;
39
+ // Use as an image
40
+ <img src={toDataUrl(abyssalWhip)} alt="Abyssal Whip" />
50
41
  ```
51
42
 
52
- ## Usage
43
+ Every icon export is a fully formed CSS `cursor` value (`url('data:image/png;base64,...'), auto`), so you can drop it straight into any `cursor` property.
53
44
 
54
- ### CSS Cursor (Tree-Shaking Supported)
45
+ ---
55
46
 
56
- Import only the icons you need — unused icons are automatically excluded from your bundle.
47
+ ## Icons
57
48
 
58
- ```tsx
59
- import { abyssalWhip } from '@dava96/osrs-icons';
49
+ The package contains ~19,500 icons from two sources, all exported as individual named exports for full tree-shaking support:
60
50
 
61
- function MyComponent() {
62
- return <div style={{ cursor: abyssalWhip }}>Hover me!</div>;
63
- }
64
- ```
51
+ ### Inventory Icons (~17,400)
65
52
 
66
- Each export is a fully formed CSS cursor value (e.g. `url('data:image/png;base64,...'), auto`).
53
+ Item sprites from the in-game inventory:
67
54
 
68
- ### As an Image
55
+ ```ts
56
+ import { abyssalWhip, dragonScimitar } from '@dava96/osrs-icons';
69
57
 
70
- Use the `toDataUrl` helper to extract the raw data URL for use outside of CSS:
58
+ element.style.cursor = abyssalWhip;
59
+ ```
71
60
 
72
- ```tsx
73
- import { abyssalWhip, dragonScimitar, toDataUrl } from '@dava96/osrs-icons';
61
+ ### Category Icons (~2,100)
74
62
 
75
- // Single icon
76
- <img src={toDataUrl(abyssalWhip)} alt="Abyssal Whip" />;
63
+ UI icons from the OSRS Wiki — skill icons, prayer icons, map markers, spell icons, and more. These are imported the exact same way as inventory icons:
77
64
 
78
- // Multiple icons at once
79
- const urls = toDataUrl({
80
- whip: abyssalWhip,
81
- sword: dragonScimitar,
82
- });
83
- // urls.whip → "data:image/png;base64,..."
84
- // urls.sword → "data:image/png;base64,..."
65
+ ```ts
66
+ import { combatIcon, prayerAugury } from '@dava96/osrs-icons';
67
+
68
+ element.style.cursor = combatIcon;
69
+ element.style.cursor = prayerAugury;
85
70
  ```
86
71
 
87
- ### Icon Discovery
72
+ > **Note:** In the rare case of a name collision between collections, the category icon is suffixed with `Category` (e.g. `hunterKitCategory`).
88
73
 
89
- Browse all available icons programmatically with `iconNames`, or restrict values to valid names with the `IconName` type:
74
+ ### Discovering Icons
75
+
76
+ Browse icons programmatically or restrict values to valid names with TypeScript types:
90
77
 
91
78
  ```ts
92
- import { iconNames, type IconName } from '@dava96/osrs-icons';
79
+ import {
80
+ iconNames, // all inventory icon names
81
+ categoryIconNames, // all category icon names
82
+ type IconName,
83
+ type CategoryIconName,
84
+ } from '@dava96/osrs-icons';
93
85
 
94
86
  // Search / autocomplete
95
87
  const results = iconNames.filter((name) => name.includes('dragon'));
96
88
 
97
- // Type-safe icon references
89
+ // Type-safe references
98
90
  function setCustomCursor(name: IconName) {
99
91
  /* ... */
100
92
  }
101
93
  ```
102
94
 
103
- ### CDN Usage (No Build Step)
95
+ ### Using Icons as Images
104
96
 
105
- You can use the package directly in the browser via ESM.sh:
97
+ Use the `toDataUrl` helper to extract the raw `data:image/png;base64,...` URL for use outside of CSS — for example, as an `<img>` src or a CSS `background-image`:
106
98
 
107
- ```html
108
- <script type="module">
109
- import { AbyssalWhip } from 'https://esm.sh/@dava96/osrs-icons';
99
+ ```ts
100
+ import { abyssalWhip, dragonScimitar, toDataUrl } from '@dava96/osrs-icons';
110
101
 
111
- document.body.style.cursor = AbyssalWhip;
112
- </script>
102
+ // Single icon
103
+ <img src={toDataUrl(abyssalWhip)} alt="Abyssal Whip" />
104
+
105
+ // Multiple icons at once
106
+ const urls = toDataUrl({
107
+ whip: abyssalWhip,
108
+ sword: dragonScimitar,
109
+ });
110
+ // urls.whip → "data:image/png;base64,..."
111
+ // urls.sword → "data:image/png;base64,..."
113
112
  ```
114
113
 
114
+ ---
115
+
115
116
  ## Cursor Packs
116
117
 
117
- Pre-built thematic icon groups each pack groups related icons by their in-game state:
118
+ Pre-built thematic icon groups. Each pack groups related icons by their in-game state and includes a `stages` array for sequential use (e.g. loading indicators):
118
119
 
119
120
  ```ts
120
121
  import { runePack, bucketPack, coinsPack } from '@dava96/osrs-icons';
121
122
 
122
- // Rune pack — all 10 F2P runes
123
+ // Individual keys
123
124
  element.style.cursor = runePack.air;
124
125
 
125
- // Bucket fill progression — great for loading states
126
+ // Sequential stages — great for loading indicators
126
127
  const stages = bucketPack.stages; // [empty, 1/5, 2/5, 3/5, 4/5, full]
127
128
  const index = Math.min(Math.floor((progress / 100) * stages.length), stages.length - 1);
128
129
  element.style.cursor = stages[index];
@@ -136,11 +137,13 @@ element.style.cursor = stages[index];
136
137
  | `bucketPack` | `empty` to `full` + `stages[]` |
137
138
  | `runePack` | `air`, `fire`, `water`, `earth`, `chaos`, `mind`, `death`, `law`, `nature`, `body` + `stages[]` |
138
139
 
140
+ ---
141
+
139
142
  ## Utilities
140
143
 
141
- ### Flip Cursor
144
+ ### `flipCursor` — Mirror Icons Horizontally
142
145
 
143
- Many OSRS icons face right, but cursors typically point left. Flip one icon, an array, or an entire pack:
146
+ Many OSRS sprites face right, but cursors typically point left. Flip a single icon, an array, or an entire pack:
144
147
 
145
148
  ```ts
146
149
  import { abyssalWhip, runePack, flipCursor } from '@dava96/osrs-icons';
@@ -157,84 +160,129 @@ const flippedRunes = await flipCursor(runePack);
157
160
 
158
161
  Results are cached internally — flipping the same icon twice returns instantly. Browser-only (uses Canvas API); returns the original value in Node.js/SSR.
159
162
 
160
- ### Apply Cursors
163
+ ### `applyCursors` — Map Icons to CSS Cursor States
161
164
 
162
- Map OSRS icons to standard CSS cursor states with a one-liner:
165
+ Override standard CSS cursor states (`default`, `pointer`, `wait`, etc.) with OSRS icons globally or scoped to a specific element:
163
166
 
164
167
  ```ts
165
- import { abyssalWhip, dragonScimitar, bucketPack, applyCursors } from '@dava96/osrs-icons';
168
+ import { abyssalWhip, dragonScimitar, applyCursors } from '@dava96/osrs-icons';
166
169
 
170
+ // Apply globally
167
171
  const cleanup = applyCursors({
168
172
  default: abyssalWhip,
169
173
  pointer: dragonScimitar,
170
- wait: bucketPack.full,
171
174
  });
172
175
 
173
176
  // Later, revert to browser defaults
174
177
  cleanup();
175
178
  ```
176
179
 
177
- You can also scope cursors to a specific element:
180
+ Scope to a specific element:
178
181
 
179
182
  ```ts
180
183
  applyCursors({ default: abyssalWhip }, document.getElementById('game-area')!);
181
184
  ```
182
185
 
183
- ### Error Cursor 🐟
186
+ ### `animateCursor` Animated Sprite Cursors
187
+
188
+ Cycle through a sequence of icons as an animated cursor using pure CSS `@keyframes` — no JavaScript timers required:
189
+
190
+ ```ts
191
+ import { coinsPack, animateCursor } from '@dava96/osrs-icons';
192
+
193
+ // Animate a growing coin stack on the whole page
194
+ const stop = animateCursor(coinsPack.stages, { duration: 1200 });
195
+
196
+ // Stop and clean up
197
+ stop();
198
+ ```
199
+
200
+ Scope to an element and limit iterations:
184
201
 
185
- Use the iconic red herring as your error cursor:
202
+ ```ts
203
+ import { bucketPack, animateCursor } from '@dava96/osrs-icons';
204
+
205
+ const stop = animateCursor(bucketPack.stages, {
206
+ duration: 900,
207
+ target: document.getElementById('loading')!,
208
+ iterations: 3,
209
+ });
210
+ ```
211
+
212
+ Requires at least 2 frames. Browser-only; returns a no-op cleanup in Node.js/SSR.
213
+
214
+ ### `errorCursor` — Easter Egg 🐟
215
+
216
+ An alias for the Red Herring icon — a fun cursor for error states:
186
217
 
187
218
  ```ts
188
219
  import { errorCursor } from '@dava96/osrs-icons';
189
220
 
190
- // Also available via herringPack.error
191
221
  element.style.cursor = errorCursor;
192
222
  ```
193
223
 
224
+ ---
225
+
194
226
  ## API Reference
195
227
 
196
- ### Types
228
+ ### Functions
197
229
 
198
- | Type | Description |
199
- | --------------- | ------------------------------------------------------------------------------------------ |
200
- | `IconName` | Union of all valid icon name strings (for type-safe references) |
201
- | `CursorMapping` | `Partial<Record<CursorState, string>>`maps CSS cursor states to icon values |
202
- | `CursorState` | `'default' \| 'pointer' \| 'wait' \| 'text' \| 'move' \| ...` — standard CSS cursor states |
230
+ | Function | Signature | Description |
231
+ | --------------- | ----------------------------------------------------------------- | ------------------------------------------------------------------------------ |
232
+ | `toDataUrl` | `(cursor: string) string` | Extracts the raw `data:image/png;base64,...` URL from a CSS cursor value |
233
+ | `toDataUrl` | `(cursors: Record<K, string>) → Record<K, string>` | Batch version extracts URLs from an object of cursor values |
234
+ | `flipCursor` | `(cursor: string) Promise<string>` | Flips a single icon horizontally. Cached. Browser-only. |
235
+ | `flipCursor` | `(cursors: string[]) → Promise<string[]>` | Flips an array of icons horizontally |
236
+ | `flipCursor` | `(pack: Record) → Promise<Record>` | Flips all values and stages in a pack |
237
+ | `applyCursors` | `(mapping: CursorMapping, target?: HTMLElement) → () => void` | Injects CSS rules mapping cursor states to icons. Returns a cleanup function. |
238
+ | `animateCursor` | `(frames: string[], options?: AnimateCursorOptions) → () => void` | Animates a cursor through a frame sequence via CSS keyframes. Returns cleanup. |
203
239
 
204
- ### Functions
240
+ ### Types
205
241
 
206
- | Function | Signature | Description |
207
- | -------------- | ------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
208
- | `toDataUrl` | `(cursor: string) string` | Extracts the raw `data:image/png;base64,...` URL from a CSS cursor value |
209
- | `toDataUrl` | `(cursors: Record<K, string>) Record<K, string>` | Batch version — extracts URLs from multiple cursor values |
210
- | `flipCursor` | `(cursor: string) → Promise<string>` | Horizontally flips a cursor icon at runtime via Canvas API. Cached. Browser-only. |
211
- | `applyCursors` | `(mapping: CursorMapping, target?: HTMLElement) () => void` | Injects a `<style>` tag mapping cursor states to OSRS icons. Returns a cleanup function. |
242
+ | Type | Description |
243
+ | ---------------------- | -------------------------------------------------------------------------- |
244
+ | `IconName` | Union of all inventory icon export names |
245
+ | `CategoryIconName` | Union of all category icon export names |
246
+ | `CursorState` | Standard CSS cursor states (`'default'`, `'pointer'`, `'wait'`, etc.) |
247
+ | `CursorMapping` | `Partial<Record<CursorState, string>>` maps cursor states to icon values |
248
+ | `AnimateCursorOptions` | `{ duration?: number, target?: HTMLElement, iterations?: number }` |
212
249
 
213
250
  ### Constants
214
251
 
215
- | Export | Type | Description |
216
- | ------------- | ------------------------ | ---------------------------------------------------------- |
217
- | `iconNames` | `readonly string[]` | Array of all available icon name strings |
218
- | `errorCursor` | `string` | Semantic alias for `redHerring` |
219
- | `*Pack` | `Record<string, string>` | Pre-built cursor packs (see [Cursor Packs](#cursor-packs)) |
252
+ | Export | Type | Description |
253
+ | ------------------- | ------------------------ | ---------------------------------------------------------- |
254
+ | `iconNames` | `readonly string[]` | Array of all inventory icon export names (~17,400) |
255
+ | `categoryIconNames` | `readonly string[]` | Array of all category icon export names (~2,100) |
256
+ | `errorCursor` | `string` | Alias for `redHerring` |
257
+ | `*Pack` | `Record<string, string>` | Pre-built cursor packs (see [Cursor Packs](#cursor-packs)) |
258
+
259
+ ---
220
260
 
221
261
  ## Browser Compatibility
222
262
 
223
- | Feature | Browser | Node.js / SSR |
224
- | -------------- | ---------------------- | ------------------------- |
225
- | Icon imports | ✅ All | ✅ All |
226
- | `toDataUrl` | ✅ All | ✅ All |
227
- | `applyCursors` | ✅ All modern | ⚠️ Returns no-op cleanup |
228
- | `flipCursor` | ✅ Canvas API required | ⚠️ Returns original value |
229
- | Cursor packs | ✅ All | All |
263
+ | Feature | Browser | Node.js / SSR |
264
+ | --------------- | ---------------------- | ------------------------- |
265
+ | Icon imports | ✅ All | ✅ All |
266
+ | `toDataUrl` | ✅ All | ✅ All |
267
+ | `applyCursors` | ✅ All modern | ⚠️ Returns no-op cleanup |
268
+ | `flipCursor` | ✅ Canvas API required | ⚠️ Returns original value |
269
+ | `animateCursor` | ✅ All modern | ⚠️ Returns no-op cleanup |
270
+ | Cursor packs | ✅ All | ✅ All |
271
+
272
+ All features are SSR-safe — browser-only utilities degrade gracefully by returning safe fallback values.
230
273
 
231
- All features are SSR-safe — browser-only features degrade gracefully in Node.js environments by returning safe fallback values.
274
+ ---
232
275
 
233
276
  ## How It Works
234
277
 
235
- The build script fetches every inventory sprite (~17,400 icons) from the
236
- [OSRS Wiki](https://oldschool.runescape.wiki/w/Category:Item_inventory_images),
237
- compresses them as palette PNGs, and generates a TypeScript file of named exports.
278
+ Two build scripts fetch every icon from the [OSRS Wiki](https://oldschool.runescape.wiki/) and generate TypeScript source files:
279
+
280
+ | Script | Source Category | Output | Icons |
281
+ | ----------------------- | ----------------------------------------------------------------------------------------------------- | --------------------------------- | ------- |
282
+ | `update-icons` | [Item inventory images](https://oldschool.runescape.wiki/w/Category:Item_inventory_images) | `src/generated/icons.ts` | ~17,400 |
283
+ | `update-category-icons` | [Icons](https://oldschool.runescape.wiki/w/Category:Icons) (+ all subcategories, crawled recursively) | `src/generated/category-icons.ts` | ~2,100 |
284
+
285
+ Both scripts share common utilities from `scripts/shared.ts` and use an MD5-keyed disk cache so that subsequent runs only download new or changed images. SVGs are automatically rasterised to 32×32 PNGs.
238
286
 
239
287
  Each icon is a small ~32×32 pixel sprite, base64-encoded inline — no external assets to host.
240
288
 
@@ -250,7 +298,7 @@ The package has `"sideEffects": false` for optimal tree-shaking in Webpack, Roll
250
298
 
251
299
  ## Contributing
252
300
 
253
- See [CONTRIBUTING.md](./CONTRIBUTING.md) for details on local development, updating icons, and publishing new versions.
301
+ See [CONTRIBUTING.md](./CONTRIBUTING.md) for development setup, project structure, and automation details.
254
302
 
255
303
  ## License
256
304
 
@@ -0,0 +1,3 @@
1
+ export declare const categoryIconNames: readonly ["_4PosterIcon", "aberrantSpectreIcon", "abyssalDemonHeadMountedIcon", "abyssalDemonIcon", "achievementGalleryIcon", "adamantCannonIcon", "adamantDragonIcon", "adamantHelmIcon", "adamantKeelIcon", "adamantSalvagingHookIcon", "adamantiteArmourConstructionIcon", "adeptReanimation", "adeptReanimationIconMobile", "advancedArenaIcon", "advancedChumStationIcon", "adventurerAdaIcon", "agility", "agilityIcon", "agilityShortcutOneWayReversedIcon", "agilityShortcutOneWayIcon", "agilityShortcutIcon", "agilityTrainingIcon", "airGuitarEmoteIcon", "alchemicalChartIcon", "alchemicalHydraHeadsMountedIcon", "aldarinIcon", "altarZalcanosPrisonIcon", "altarIcon", "ammoSlot", "amuletOfGloryMountedIcon", "amuletShopIcon", "anchorIcon", "ancientPrecision", "ancientSight", "ancientSightV1", "ancientStrength", "ancientWill", "ancientWyvernIcon", "ancientAltarIcon", "anglersRetreatIcon", "angryEmoteIcon", "ankouIcon", "annakarlTeleport", "annakarlTeleportIconMobile", "annihilate", "annihilateV1", "antiDragonShieldMountedIcon", "anvilIcon", "apeAtollTeleportArceuus", "apeAtollTeleportArceuusIconMobile", "apeAtollTeleportArceuusV1", "apeAtollTeleportStandard", "apeAtollTeleportStandardIconMobile", "apothecaryIcon", "aquaniteIcon", "araxyteIcon", "arceuusHomeTeleport", "arceuusHomeTeleportIconMobile", "arceuusLibraryTeleport", "arceuusLibraryTeleportIconMobile", "archeryShopIcon", "archeryTargetIcon", "ardougneTeleport", "ardougneTeleportIconMobile", "ardougneIcon", "armillarySphereIcon", "armourStandIcon", "asgarnianAleBarrelIcon", "astronomicalChartIcon", "attack", "attackIcon", "audioOptionsIcon", "augury", "auguryV1", "aviansieIcon", "axeShopIcon", "babyRedDragonConstructionIcon", "bakePie", "bakePieIconMobile", "balanceBeamIcon", "bankTutorIcon", "bankIcon", "bannerEaselIcon", "bannerStandIcon", "bansheeIcon", "barbTailedKebbitIcon", "barbarianTeleport", "barbarianTeleportIconMobile", "barracudaTrialIcon", "barracudaTrialsIcon", "barracudeSalvageIcon", "barrowsTeleport", "barrowsTeleportIconMobile", "barrowsTeleportV1", "basicReanimation", "basicReanimationIconMobile", "basicJewelleryBoxIcon", "basiliskKnightIcon", "basiliskHeadMountedIcon", "basiliskIcon", "battlefrontTeleport", "battlefrontTeleportIconMobile", "battlefrontTeleportV1", "beckonEmoteIcon", "bedroomIcon", "beehiveStyle1Icon", "beehiveStyle2Icon", "beerBarrelIcon", "bellPullIcon", "bellsIcon", "benchWithLatheIcon", "benchWithViceIcon", "berserkerRuinousPowers", "berserkerRuinousPowersV1", "betaWorldIcon", "biggerAndBadder", "bind", "bindIconMobile", "birdHouseSiteIcon", "blackDemonIcon", "blackDragonIcon", "blackSalamander", "blackWarlockIcon", "bloodBarrage", "bloodBarrageIconMobile", "bloodBlitz", "bloodBlitzIconMobile", "bloodBurst", "bloodBurstIconMobile", "bloodRush", "bloodRushIconMobile", "bloodveldIcon", "blowKissEmoteIcon", "bluebellsIcon", "bobIconIcon", "bodySlot", "bondTutorIcon", "boneCageIcon", "bonesToBananas", "bonesToBananasIconMobile", "bonesToPeaches", "bonesToPeachesIconMobile", "boostPotionShare", "boostPotionShareIconMobile", "bossLairDisplayIcon", "bosunZarahIcon", "boundaryStonesIcon", "bountyHunterTraderIcon", "bowPenguinEmoteIcon", "bowEmoteIcon", "boxingRingIcon", "breweryIcon", "brimhavenIcon", "brineRatIcon", "brittleIsleIcon", "bronzeCannonIcon", "bronzeHelmIcon", "bronzeKeelIcon", "bronzeSalvagingHookIcon", "brownRugIcon", "brutalBlackDragonIcon", "buccaneersHavenIcon", "burstOfStrength", "bushIcon", "cabinBoyJenkinsIcon", "cairnIsleIcon", "camelotTeleport", "camelotTeleportIconMobile", "camphorCargoHoldIcon", "camphorHullAndHullPartsIcon", "camphorMastAndCanvasSailsIcon", "candleShopIcon", "candlesConstructionIcon", "capeHangerIcon", "capeOfLegendsMountedIcon", "capeSlot", "captainSiadIcon", "carrallangerTeleport", "carrallangerTeleportIconMobile", "carvedOakBenchIcon", "carvedOakMagicWardrobeIcon", "carvedOakTableIcon", "carvedTeakBenchIcon", "carvedTeakMagicWardrobeIcon", "carvedTeakTableIcon", "catBasketIcon", "catBlanketIcon", "catherbyTeleport", "catherbyTeleportIconMobile", "catherbyIcon", "caveBugIcon", "caveCrawlerIcon", "caveHorrorIcon", "caveKrakenIcon", "caveKrakenIconChristmas", "caveSlimeIcon", "celestialGlobeIcon", "cemeteryTeleport", "cemeteryTeleportIconMobile", "cemeteryTeleportV1", "cerberusIcon", "ceruleanTwitchIcon", "ceruleanTwitchIconHistorical", "chainbodyShopIcon", "chapelIcon", "charge", "chargeAirOrb", "chargeAirOrbIconMobile", "chargeEarthOrb", "chargeEarthOrbIconMobile", "chargeFireOrb", "chargeFireOrbIconMobile", "chargeWaterOrb", "chargeWaterOrbIconMobile", "chargeIconMobile", "charredIslandIcon", "cheerPenguinEmoteIcon", "cheerEmoteIcon", "chefsDelightBarrelIcon", "chinchompaIslandIcon", "chivalry", "chumSpreaderIcon", "chumStationIcon", "ciderBarrelIcon", "civitasIllaFortisTeleport", "civitasIllaFortisTeleportIconMobile", "civitasIllaFortisIcon", "clanHubIcon", "clanIconAchiever", "clanIconAdamant", "clanIconAdept", "clanIconAdministrator", "clanIconAdmiral", "clanIconAdventurer", "clanIconAir", "clanIconAnchor", "clanIconApothecary", "clanIconArcher", "clanIconArmadylean", "clanIconArtillery", "clanIconArtisan", "clanIconAsgarnian", "clanIconAssassin", "clanIconAssistant", "clanIconAstral", "clanIconAthlete", "clanIconAttacker", "clanIconBandit", "clanIconBandosian", "clanIconBarbarian", "clanIconBattlemage", "clanIconBeast", "clanIconBerserker", "clanIconBlisterwood", "clanIconBlood", "clanIconBlue", "clanIconBob", "clanIconBody", "clanIconBrassican", "clanIconBrawler", "clanIconBrigadier", "clanIconBrigand", "clanIconBronze", "clanIconBruiser", "clanIconBulwark", "clanIconBurglar", "clanIconBurnt", "clanIconCadet", "clanIconCaptain", "clanIconCarry", "clanIconChampion", "clanIconChaos", "clanIconCleric", "clanIconCollector", "clanIconColonel", "clanIconCommander", "clanIconCompetitor", "clanIconCompletionist", "clanIconConstructor", "clanIconCook", "clanIconCoordinator", "clanIconCorporal", "clanIconCosmic", "clanIconCouncillor", "clanIconCrafter", "clanIconCrew", "clanIconCrusader", "clanIconCutpurse", "clanIconDeath", "clanIconDefender", "clanIconDefiler", "clanIconDeputyOwner", "clanIconDestroyer", "clanIconDiamond", "clanIconDiseased", "clanIconDoctor", "clanIconDogsbody", "clanIconDragon", "clanIconDragonstone", "clanIconDruid", "clanIconDuellist", "clanIconEarth", "clanIconElite", "clanIconEmerald", "clanIconEnforcer", "clanIconEpic", "clanIconExecutive", "clanIconExpert", "clanIconExplorer", "clanIconFarmer", "clanIconFeeder", "clanIconFighter", "clanIconFire", "clanIconFiremaker", "clanIconFirestarter", "clanIconFisher", "clanIconFletcher", "clanIconForager", "clanIconFremennik", "clanIconGamer", "clanIconGatherer", "clanIconGeneral", "clanIconGnomeChild", "clanIconGnomeElder", "clanIconGoblin", "clanIconGold", "clanIconGoon", "clanIconGreen", "clanIconGrey", "clanIconGuardian", "clanIconGuest", "clanIconGuthixian", "clanIconHarpoon", "clanIconHealer", "clanIconHellcat", "clanIconHelper", "clanIconHerbologist", "clanIconHero", "clanIconHoarder", "clanIconHoly", "clanIconHunter", "clanIconIgnitor", "clanIconIllusionist", "clanIconImp", "clanIconInfantry", "clanIconInquisitor", "clanIconIron", "clanIconJade", "clanIconJmod", "clanIconJusticiar", "clanIconKandarin", "clanIconKaramjan", "clanIconKharidian", "clanIconKitten", "clanIconKnight", "clanIconLabourer", "clanIconLaw", "clanIconLeader", "clanIconLearner", "clanIconLegacy", "clanIconLegend", "clanIconLegionnaire", "clanIconLieutenant", "clanIconLooter", "clanIconLumberjack", "clanIconMagic", "clanIconMagician", "clanIconMajor", "clanIconMaple", "clanIconMarshal", "clanIconMaster", "clanIconMaxed", "clanIconMediator", "clanIconMedic", "clanIconMentor", "clanIconMerchant", "clanIconMind", "clanIconMiner", "clanIconMinion", "clanIconMisthalinian", "clanIconMithril", "clanIconModerator", "clanIconMonarch", "clanIconMorytanian", "clanIconMystic", "clanIconMyth", "clanIconNatural", "clanIconNature", "clanIconNecromancer", "clanIconNinja", "clanIconNoble", "clanIconNovice", "clanIconNurse", "clanIconOak", "clanIconOfficer", "clanIconOnyx", "clanIconOpal", "clanIconOracle", "clanIconOrange", "clanIconOwner", "clanIconPage", "clanIconPaladin", "clanIconPawn", "clanIconPilgrim", "clanIconPine", "clanIconPink", "clanIconPrefect", "clanIconPriest", "clanIconPrivate", "clanIconProdigy", "clanIconProselyte", "clanIconProspector", "clanIconProtector", "clanIconPure", "clanIconPurple", "clanIconPyromancer", "clanIconQuester", "clanIconRacer", "clanIconRaider", "clanIconRanger", "clanIconRecordChaser", "clanIconRecruit", "clanIconRecruiter", "clanIconRed", "clanIconRedTopaz", "clanIconRogue", "clanIconRuby", "clanIconRune", "clanIconRunecrafter", "clanIconSage", "clanIconSapphire", "clanIconSaradominist", "clanIconSaviour", "clanIconScavenger", "clanIconScholar", "clanIconScourge", "clanIconScout", "clanIconScribe", "clanIconSeer", "clanIconSenator", "clanIconSentry", "clanIconSerenist", "clanIconSergeant", "clanIconShaman", "clanIconSheriff", "clanIconShortGreenGuy", "clanIconSkiller", "clanIconSkulled", "clanIconSlayer", "clanIconSmiter", "clanIconSmith", "clanIconSmuggler", "clanIconSniper", "clanIconSoul", "clanIconSpecialist", "clanIconSpeedRunner", "clanIconSpellcaster", "clanIconSquire", "clanIconStaff", "clanIconSteel", "clanIconStrider", "clanIconStriker", "clanIconSummoner", "clanIconSuperior", "clanIconSupervisor", "clanIconTeacher", "clanIconTemplar", "clanIconTherapist", "clanIconThief", "clanIconTirannian", "clanIconTrialist", "clanIconTrickster", "clanIconTzkal", "clanIconTztok", "clanIconUnholy", "clanIconVagrant", "clanIconVanguard", "clanIconWalker", "clanIconWanderer", "clanIconWarden", "clanIconWarlock", "clanIconWarrior", "clanIconWater", "clanIconWild", "clanIconWillow", "clanIconWily", "clanIconWintumber", "clanIconWitch", "clanIconWizard", "clanIconWorker", "clanIconWrath", "clanIconXerician", "clanIconYellow", "clanIconYew", "clanIconZamorakian", "clanIconZarosian", "clanIconZealot", "clanIconZenyte", "clanSymbolArrows", "clanSymbolAxeAndPickaxe", "clanSymbolBob", "clanSymbolBones", "clanSymbolCabbage", "clanSymbolComedy", "clanSymbolCompass", "clanSymbolDefence", "clanSymbolDragonMedHelm", "clanSymbolFish", "clanSymbolHeart", "clanSymbolHolyStarOfSaradomin", "clanSymbolHunter", "clanSymbolIconOfGuthix", "clanSymbolIron", "clanSymbolMask", "clanSymbolPartyHat", "clanSymbolRakeAndSpade", "clanSymbolRing", "clanSymbolRobinHat", "clanSymbolRose", "clanSymbolSkull", "clanSymbolSwords", "clanSymbolTragedy", "clanSymbolUltimateIron", "clanSymbolUnholySymbolOfZamorak", "clanSymbolWizardHat", "clapPenguinEmoteIcon", "clapEmoteIcon", "clarityOfThought", "clawsOfGuthix", "clawsOfGuthixIconMobile", "clawsOfGuthixIconV1", "clayAttackStoneIcon", "clayFireplaceIcon", "climbRopeEmoteIcon", "closeXWhite", "clothAltarIcon", "clothesShopIcon", "clueTutorIcon", "cockatriceHeadMountedIcon", "cockatriceIcon", "combat", "combatAchievementsIcon", "combatTutorIcon", "combatDummyIcon", "combatIcon", "combatRingIcon", "combatRoomIcon", "combatTrainingIcon", "commonKebbitIcon", "confuse", "confuseIconMobile", "consecratedHouseIcon", "construction", "constructionIcon", "cookeryShopIcon", "cooking", "cookingTutorIcon", "cookingIcon", "cookingRangeIcon", "copperLongtailIcon", "copperLongtailIconHistorical", "corsairCoveIcon", "costumeRoomIcon", "cottonTrawlingNetIcon", "crabDanceEmoteIcon", "crafting", "craftingTutorIcon", "craftingIcon", "craftingShopIcon", "craftingTable1Icon", "craftingTable2Icon", "craftingTable3Icon", "craftingTable4Icon", "crawlingHandIcon", "crawlingHandMountedIcon", "crazyDanceEmoteIcon", "crewRegistrarIcon", "crewSlotUnlockIcon", "crimsonSwiftIcon", "crimsonSwiftIconHistorical", "crop", "crudeWoodenChairIcon", "crumbleUndead", "crumbleUndeadIconMobile", "cruorsVow", "cryEmoteIcon", "crystalBallIcon", "crystalExtractorIcon", "crystalGlidersFlagIcon", "crystalOfPowerIcon", "crystalThroneIcon", "crystallinePortalNexusRagingEchoesIcon", "crystallinePortalNexusIcon", "cureGroup", "cureGroupIconMobile", "cureMe", "cureMeIconMobile", "cureOther", "cureOtherIconMobile", "curePlant", "curePlantIconMobile", "curse", "curseIconMobile", "curtainsIcon", "cushionedBasketIcon", "cwArmour1Icon", "cwArmour2Icon", "cwArmour3Icon", "daffodilsIcon", "dagannothConstructionIcon", "dairyChurnIcon", "dairyCowIcon", "dampenMagic", "dampenMagicPreRelease", "dampenMagicOverhead", "dampenMagicOverheadV1", "dampenMagicOverheadV2", "dampenMagicV1", "dampenMelee", "dampenMeleePreRelease", "dampenMeleeOverhead", "dampenMeleeOverheadV1", "dampenMeleeOverheadV2", "dampenMeleeV1", "dampenRanged", "dampenRangedPreRelease", "dampenRangedOverhead", "dampenRangedOverheadV1", "dampenRangedOverheadV2", "dampenRangedV1", "danceEmoteIcon", "dangerTutorIcon", "dareeyakTeleport", "dareeyakTeleportIconMobile", "darkDemonbane", "darkDemonbaneIconMobile", "darkLure", "darkLureIconMobile", "darkAltarConstructionIcon", "darkBeastIcon", "darkBeastIconHistorical", "darkKebbitIcon", "darklightMountedIcon", "dartboardIcon", "dashingKebbitIcon", "deadeye", "deadmanTutorIcon", "deadmanRugIcon", "deadmanWorldIcon", "deathCharge", "deathChargeIconMobile", "deathsOfficeIcon", "decimate", "decimateV1", "decorativeBloodIcon", "decorativePipeIcon", "decorativeRockIcon", "decorativeWindowIcon", "deepfinPointIcon", "defence", "defenceIcon", "degrime", "degrimeIconMobile", "demonConstructionIcon", "demonLecternIcon", "demonicOffering", "demonicOfferingIconMobile", "demonicThroneIcon", "desecratedHouseIcon", "desertLizardIcon", "desertDevilIcon", "desertHabitatIcon", "diningRoomIcon", "distractionAndDiversionMapIcon", "distractionsAndDiversions", "dockLeafIcon", "dockingPointIcon", "dognoseIslandIcon", "dragonBitterBarrelIcon", "dragonCannonIcon", "dragonHelmIcon", "dragonKeelIcon", "dragonSalvagingHookIcon", "drakeIcon", "draynorManorTeleport", "draynorManorTeleportIconMobile", "draynorManorTeleportV1", "dream", "dreamIconMobile", "drumstickIsleIcon", "dungeonConstructionIcon", "dungeonEntranceIcon", "dungeonIcon", "dungeonMapLinkIcon", "dustDevilIcon", "dyeTraderIcon", "eagleEye", "eagleLecternIcon", "earthBlast", "earthBlastIconMobile", "earthBolt", "earthBoltIconMobile", "earthStrike", "earthStrikeIconMobile", "earthSurge", "earthSurgeIconMobile", "earthWave", "earthWaveIconMobile", "edgevilleHomeTeleport", "edgevilleHomeTeleportIconMobile", "elementalSphereIcon", "elenaPortraitIcon", "embertailedJerboaIcon", "emotesButton", "enchantCrossbowBolt", "enchantCrossbowBoltIconMobile", "energyTransfer", "energyTransferIconMobile", "enfeeble", "enfeebleIconMobile", "entangle", "entangleIconMobile", "entranaIcon", "estateAgentIcon", "etceteriaIcon", "eternalBrazierIcon", "excaliburMountedIcon", "exitPortalIcon", "expertReanimation", "expertReanimationIconMobile", "exploreEmoteIcon", "extraWeaponsRackIcon", "fairyRingConstructionIcon", "faladorTeleport", "faladorTeleportIconMobile", "fancyHedgeIcon", "fancyJewelleryBoxIcon", "fancyRangeIcon", "fancyRejuvenationPoolIcon", "fancyTeakDresserIcon", "farming", "farmingGuildLowTier", "farmingGuildMidHighTier", "farmingIcon", "farmingPatchIcon", "farmingShopIcon", "fathomPearlIcon", "fathomStoneIcon", "feetSlot", "feldipWeaselIcon", "feldipWeaselIcon_1", "fencingRingIcon", "fenkenstrainsCastleTeleport", "fenkenstrainsCastleTeleportIconMobile", "fenkenstrainsCastleTeleportV1", "fernBigPlantIcon", "fernSmallPlantIcon", "ferretIcon", "fertileSoil", "fertileSoilIconMobile", "feverSpiderIcon", "fireBlast", "fireBlastIconMobile", "fireBolt", "fireBoltIconMobile", "fireStrike", "fireStrikeIconMobile", "fireSurge", "fireSurgeIconMobile", "fireWave", "fireWaveIconMobile", "fireOfDehumidificationIcon", "fireOfEternalLightIcon", "fireOfNourishmentIcon", "fireOfUnseasonalWarmthIcon", "firemaking", "firemakingIcon", "firepitIcon", "firepitWithHookIcon", "firepitWithPotIcon", "fishing", "fishingGuildTeleport", "fishingGuildTeleportIconMobile", "fishingTutorIcon", "fishingIcon", "fishingShopIcon", "fishingSpotIcon", "flagMapMarker", "flagsIcon", "flamePitIcon", "flamesOfZamorak", "flamesOfZamorakIconMobile", "flapPenguinEmoteIcon", "flapEmoteIcon", "fletching", "fletchingIcon", "floorDecorationIcon", "foodShopIcon", "forestHabitatIcon", "forestryShopIcon", "formalGardenIcon", "fortisSaluteEmoteIcon", "fossilIslandWyvernsIcon", "freeToPlayIcon", "fumusVow", "furTraderIcon", "furnaceIcon", "gwdRareDropTable", "galeCatcherIcon", "gambitOverhead", "gamesRoomIcon", "gardenFenceIcon", "gardenIcon", "gardenSupplierIcon", "gargoyleIcon", "gateMapMarker", "gazeboIcon", "gemShopIcon", "generalStoreIcon", "geomancy", "geomancyIconMobile", "ghorrockTeleport", "ghorrockTeleportIconMobile", "ghostlyGrasp", "ghostlyGraspIconMobile", "giantDwarfPortraitIcon", "gilded4PosterIcon", "gildedAdventureLogIcon", "gildedAltarIcon", "gildedBenchIcon", "gildedCapeRackIcon", "gildedClockIcon", "gildedDecorationIcon", "gildedDisplayIcon", "gildedDresserIcon", "gildedMagicWardrobeIcon", "gildedPortalNexusIcon", "gildedThroneIcon", "gildedWardrobeIcon", "glaciesVow", "glassBoxEmoteIcon", "glassWallEmoteIcon", "globeIcon", "gloriousArenaIcon", "gloveRackIcon", "gnomeBenchIcon", "gnomeChildIconIcon", "goblinBowEmoteIcon", "goblinSaluteEmoteIcon", "goldCandlesticksIcon", "goldSinkIcon", "goldenWarblerIconHistorical", "grandExchangeIcon", "grasslandHabitatIcon", "greaterCorruption", "greaterCorruptionIconMobile", "greaterDemonIcon", "greaterMagicCageIcon", "greaterMagicalBalanceIcon", "greaterTeleportFocusFacilityIcon", "greaterTeleportFocusIcon", "greenmanCarvingConstructionIcon", "greenmanStatueConstructionIcon", "greenmansAleBarrelIcon", "grimstoneIcon", "gryphonIcon", "guardDogConstructionIcon", "guthixIconIcon", "guthixSymbolIcon", "hairdresserIcon", "hallQuestTrophiesIcon", "hallSkillTrophiesIcon", "handsSlot", "hangingSkeletonIcon", "hangmanIcon", "hardcoreIronmanChatBadge", "harmonyIslandTeleport", "harmonyIslandTeleportIconMobile", "harmonyIslandTeleportV1", "harpieBugSwarmIcon", "hawkEye", "headSlot", "headbangEmoteIcon", "healGroup", "healGroupIconMobile", "healOther", "healOtherIconMobile", "hellhoundConstructionIcon", "helmetShopIcon", "hempTrawlingNetIcon", "herbalistIcon", "herbiboarIcon", "herblore", "herbloreIcon", "hesporiIcon", "highLevelAlchemy", "highLevelAlchemyIconMobile", "hitpoints", "hitpointsIcon", "hobgoblinGuardIcon", "holidayEventIcon", "holidayItemTraderIcon", "hoopAndStickIcon", "hornedGraahkIcon", "hosidiusIcon", "housePortalIcon", "hugePlantIcon", "hugeSpiderIcon", "humidify", "humidifyIconMobile", "hunter", "hunterKitCategory", "hunterKitIconMobile", "hunterTutorIcon", "hunterIcon", "hunterShopIcon", "hunterTrainingIcon", "hybrid", "hydraIcon", "hypermobileDrinkerEmoteIcon", "iasorIcon", "ibanBlast", "ibanBlastIconMobile", "iceBarrage", "iceBarrageIconMobile", "iceBlitz", "iceBlitzIconMobile", "iceBurst", "iceBurstIconMobile", "icePlateauTeleport", "icePlateauTeleportIconMobile", "iceRush", "iceRushIconMobile", "ideaEmoteIcon", "impIcon", "impStatueIcon", "improvedReflexes", "incredibleReflexes", "inferiorDemonbane", "inferiorDemonbaneIconMobile", "infernalMageIcon", "infernalChartIcon", "inoculationStationIcon", "intensify", "intensifyV1", "ironCannonIcon", "ironHelmIcon", "ironKeelIcon", "ironRailingsIcon", "ironSalvagingHookIcon", "ironmanTutorIcon", "ironmanChatBadge", "ironwoodCargoHoldIcon", "ironwoodHullAndHullPartsIcon", "ironwoodMastAndCottonSailsIcon", "isafdarPaintingIcon", "isleOfBonesIcon", "isleOfSoulsIcon", "jatizsoIcon", "jellyIcon", "jesterIcon", "jewelleryEnchantments", "jewelleryEnchantmentsIconMobile", "jewelleryShopIcon", "jigEmoteIcon", "jitteryJimIcon", "joblessJimIcon", "jogEmoteIcon", "jollyJimIcon", "jumpForJoyEmoteIcon", "junkCheckerIcon", "kalphiteQueenHeadMountedIcon", "kalphiteSoldierConstructionIcon", "karamjaPaintingIcon", "kbdHeadMountedIcon", "kebabShopIcon", "kegIcon", "kharyrllTeleport", "kharyrllTeleportIconMobile", "khazardTeleport", "khazardTeleportIconMobile", "killerwattIcon", "kingArthurPortraitIcon", "kitchenIcon", "kitchenTableIcon", "kiteShieldConstructionIcon", "kourendCastleTeleport", "kourendCastleTeleportIconMobile", "kourendTaskIcon", "kronosIcon", "kuraskHeadMountedIcon", "kuraskIcon", "lagunaAuroraeIcon", "landsEndIcon", "largeFountainIcon", "largeLeafBushIcon", "largeMapIcon", "largeOakBedIcon", "largeOrreryIcon", "largeOvenIcon", "largeStatueIcon", "largeStorageUnitIcon", "largeTeakBedIcon", "lassarTeleport", "lassarTeleportIconMobile", "laughEmoteIcon", "leagueAccomplishmentsScrollIcon", "leagueHallIcon", "leagueStatueIcon", "leagueWorldIcon", "leaguesTutorIcon", "leaguesChatBadge", "leanEmoteIcon", "ledgerTableIcon", "legsSlot", "lesserCorruption", "lesserCorruptionIconMobile", "lesserMagicCageIcon", "lesserMagicalBalanceIcon", "lesserNaguaIcon", "likeABoss", "limestoneAltarIcon", "limestoneAttackStoneIcon", "limestoneSpiralStaircaseIcon", "linenTrawlingNetIcon", "lizardmenIcon", "lledrithIslandIcon", "locustRiderIcon", "loomIcon", "lowLevelAlchemy", "lowLevelAlchemyIconMobile", "lumbridgePaintingIcon", "lumbridgeGraveyardTeleport", "lumbridgeGraveyardTeleportIconMobile", "lumbridgeGuideIcon", "lumbridgeHomeTeleport", "lumbridgeHomeTeleportIconMobile", "lumbridgeTeleport", "lumbridgeTeleportIconMobile", "lunarHomeTeleport", "lunarHomeTeleportIconMobile", "lunarIsleIcon", "lunarAltarIcon", "lunarGlobeIcon", "lvl1Enchant", "lvl1EnchantIconMobile", "lvl2Enchant", "lvl2EnchantIconMobile", "lvl3Enchant", "lvl3EnchantIconMobile", "lvl4Enchant", "lvl4EnchantIconMobile", "lvl5Enchant", "lvl5EnchantIconMobile", "lvl6Enchant", "lvl6EnchantIconMobile", "lvl7Enchant", "lvl7EnchantIconMobile", "maceShopIcon", "magic", "magicDamageIcon", "magicDart", "magicDartIconMobile", "magicImbue", "magicImbueIconMobile", "magicChestIcon", "magicDefenceIcon", "magicIcon", "magicShopIcon", "magicTreeConstructionIcon", "magicalCapeRackIcon", "mahoganyAdventureLogIcon", "mahoganyAltarIcon", "mahoganyArmchairIcon", "mahoganyArmourCaseIcon", "mahoganyBedMahoganyHomesIcon", "mahoganyBedSmallMahoganyHomesIcon", "mahoganyBenchIcon", "mahoganyBookcaseMahoganyHomesIcon", "mahoganyBookcaseIcon", "mahoganyCabinetIcon", "mahoganyCapeRackIcon", "mahoganyCargoHoldIcon", "mahoganyChairMahoganyHomesIcon", "mahoganyChestIcon", "mahoganyCupboardIcon", "mahoganyDemonLecternIcon", "mahoganyDisplayFishingTrophyIcon", "mahoganyDisplayHeadTrophyIcon", "mahoganyDrawersMahoganyHomesIcon", "mahoganyDresserMahoganyHomesIcon", "mahoganyDresserIcon", "mahoganyEagleLecternIcon", "mahoganyFancyDressBoxIcon", "mahoganyFeederIcon", "mahoganyHouseIcon", "mahoganyHullAndHullPartsIcon", "mahoganyIncenseBurnersIcon", "mahoganyLadderIcon", "mahoganyLeverIcon", "mahoganyMagicWardrobeIcon", "mahoganyMastAndCanvasSailsIcon", "mahoganyOutfitStandIcon", "mahoganyPortalIcon", "mahoganyPrizeChestIcon", "mahoganyScratchingPostIcon", "mahoganyShelvesMahoganyHomesIcon", "mahoganyTableLargeMahoganyHomesIcon", "mahoganyTableMediumMahoganyHomesIcon", "mahoganyTableSmallMahoganyHomesIcon", "mahoganyTableIcon", "mahoganyTelescopeIcon", "mahoganyThroneIcon", "mahoganyToyBoxIcon", "mahoganyTrapdoorIcon", "mahoganyTreasureChestIcon", "mahoganyTrophyCaseIcon", "mahoganyWardrobeMahoganyHomesIcon", "mahoganyWardrobeIcon", "makeoverMageIcon", "manTrapIcon", "maniacalMonkeyIcon", "mapIconADarkCrystal", "mapIconAWoodenLog", "mapIconAcaciaTree", "mapIconAdamantiteRocks", "mapIconAnchor", "mapIconArcaneCrystal", "mapIconBarricade", "mapIconBasaltRock", "mapIconBloodCrystal", "mapIconBluriteRocks", "mapIconBush", "mapIconCactus", "mapIconCatapult", "mapIconChest", "mapIconClayRocks", "mapIconCoalRocks", "mapIconCopperRocks", "mapIconCrate", "mapIconCrossbowmanStatue", "mapIconCypressTree", "mapIconDarkCrystal", "mapIconDeadTree1", "mapIconDeadTree2", "mapIconDeadfall", "mapIconFern", "mapIconFeroxEnclaveFlower1", "mapIconFeroxEnclaveFlower2", "mapIconFireWall", "mapIconFlax", "mapIconFountain", "mapIconFungi", "mapIconGemRocks", "mapIconGoldRocks", "mapIconGrave", "mapIconHenge", "mapIconHosidiusWheat1", "mapIconHosidiusWheat2", "mapIconIceChunks1", "mapIconIceChunks2", "mapIconIronRocks", "mapIconKnightStatue", "mapIconLadder", "mapIconLadder2", "mapIconLeadRocks", "mapIconMagicTree", "mapIconMahoganyTree", "mapIconMithrilRocks", "mapIconMushtree1", "mapIconMushtree2", "mapIconNpc", "mapIconNickelRocks", "mapIconOakTree", "mapIconOnion", "mapIconPine", "mapIconPlant1", "mapIconPlant2", "mapIconPlant3", "mapIconPlant4", "mapIconPortal", "mapIconPotato", "mapIconPriestStatue", "mapIconRapids", "mapIconRock1", "mapIconRock2", "mapIconRock3", "mapIconRock4", "mapIconRockslide1", "mapIconRockslide2", "mapIconRuniteRocks", "mapIconSaradominStandard", "mapIconSilverRocks", "mapIconSkroom1", "mapIconSkroom2", "mapIconSkull", "mapIconSpikeyBush", "mapIconStile", "mapIconStonepineTree", "mapIconStrangeRocks", "mapIconStrangledTree1", "mapIconStrangledTree2", "mapIconStrangledTree3", "mapIconSulphurVent", "mapIconSweetcorn", "mapIconTeakTree", "mapIconTelescope", "mapIconTinRocks", "mapIconTrapdoor", "mapIconTree1", "mapIconTree2", "mapIconTree3", "mapIconTree4", "mapIconTree5", "mapIconTree6", "mapIconTrophy", "mapIconTropicalTree1", "mapIconTropicalTree2", "mapIconVolcano", "mapIconWheat", "mapIconYewTree", "mapIconZamorakStandard", "mapIconItem", "mapLinkIcon", "mapleTreeConstructionIcon", "marbleAdventureLogIcon", "marbleAltarIcon", "marbleAttackStoneIcon", "marbleCapeRackIcon", "marbleDecorativeBenchIcon", "marbleDoorIcon", "marbleFireplaceIcon", "marbleIncenseBurnersIcon", "marbleLecternIcon", "marbleMagicWardrobeIcon", "marblePortalIcon", "marblePortalNexusIcon", "marbleSpiralIcon", "marbleStaircaseIcon", "marbleTrapIcon", "marbleWallIcon", "marigoldsConstructionIcon", "markOfDarkness", "markOfDarknessIconMobile", "masterReanimation", "masterReanimationIconMobile", "mediumBalanceIcon", "mediumMapIcon", "mediumStatueIcon", "mediumStorageUnitIcon", "megaRareDropTable", "melee", "memberIcon", "menagerieIcon", "metabolise", "mindAltarTeleport", "mindAltarTeleportIconMobile", "mindAltarTeleportV1", "minigameMapIcon", "minimapNpcMarker", "minimapClanChatMarker", "minimapClanMarker", "minimapFriendMarker", "minimapItemMarker", "minimapPlayerMarker", "minimapSelfMarker", "minimapTeamMarker", "mining", "miningTutorIcon", "miningIcon", "miningShopIcon", "miningSiteIcon", "minotaursRestIcon", "miscellaniansPortraitIcon", "mithrilArmourConstructionIcon", "mithrilCannonIcon", "mithrilDragonIcon", "mithrilHelmIcon", "mithrilKeelIcon", "mithrilSalvagingHookIcon", "mogreIcon", "molaniskIcon", "monsterExamine", "monsterExamineIconMobile", "monsterInspect", "monsterInspectIconMobile", "moonclanTeleport", "moonclanTeleportIconMobile", "moonlightAntelopeIcon", "moonlightMothIcon", "morytaniaPaintingIcon", "mountedBassOakDisplayIcon", "mountedCoinsIcon", "mountedDigsitePendantIcon", "mountedEmblemIcon", "mountedHarpoonfishTeakDisplayIcon", "mountedSharkIcon", "mountedSwordfishTeakDisplayIcon", "mountedXericsTalismanIcon", "musaPointIcon", "mutatedZygomiteIcon", "mysticLore", "mysticMight", "mysticVigour", "mysticWill", "mythicalCapeMountedIcon", "npcContact", "npcContactIconMobile", "natureHouseIcon", "nechryaelIcon", "neckSlot", "neitiznotIcon", "newspaperTraderIcon", "niceHedgeIcon", "niceTreeIcon", "noEmoteIcon", "oakAltarIcon", "oakAndSteelCageIcon", "oakArmchairIcon", "oakArmourCaseIcon", "oakBedMahoganyHomesIcon", "oakBedSmallMahoganyHomesIcon", "oakBedIcon", "oakBenchIcon", "oakBookcaseMahoganyHomesIcon", "oakBookcaseIcon", "oakCabinetIcon", "oakCageIcon", "oakCapeRackIcon", "oakCargoHoldIcon", "oakChairMahoganyHomesIcon", "oakChairIcon", "oakChestIcon", "oakClockIcon", "oakCupboardIcon", "oakDiningTableIcon", "oakDisplayIcon", "oakDoorIcon", "oakDrawersMahoganyHomesIcon", "oakDrawersIcon", "oakDresserMahoganyHomesIcon", "oakDresserIcon", "oakFancyDressBoxIcon", "oakFeederIcon", "oakHouseIcon", "oakHullAndHullPartsIcon", "oakIncenseBurnersIcon", "oakKitchenTableIcon", "oakLadderIcon", "oakLarderIcon", "oakLecternIcon", "oakLeverIcon", "oakMagicWardrobeIcon", "oakMastAndLinenSailsIcon", "oakOutfitStandIcon", "oakPrizeChestIcon", "oakScratchingPostIcon", "oakShavingStandIcon", "oakShelvesMahoganyHomesIcon", "oakShelves1Icon", "oakShelves2Icon", "oakStaircaseIcon", "oakTableLargeMahoganyHomesIcon", "oakTableMediumMahoganyHomesIcon", "oakTableSmallMahoganyHomesIcon", "oakTelescopeIcon", "oakThroneIcon", "oakToyBoxIcon", "oakTrapdoorIcon", "oakTreasureChestIcon", "oakTreeIcon", "oakTrophyCaseIcon", "oakWallDecorationIcon", "oakWardrobeMahoganyHomesIcon", "oakWardrobeIcon", "oakWorkbenchIcon", "oarswomanOlgaIcon", "obeliskConstructionIcon", "obsidianDecorativeBenchIcon", "obsidianFenceIcon", "occultAltarIcon", "opulentCurtainsIcon", "opulentRugIcon", "opulentTableIcon", "orangeSalamander", "organIcon", "ornamentalGlobeIcon", "ornateBannerStandIcon", "ornateJewelleryBoxIcon", "ornateLeagueStatueIcon", "ornateRejuvenationPoolIcon", "ornateTrophyPedestalIcon", "ornateUndeadCombatDummyIcon", "otherworldlyThemeIcon", "oublietteIcon", "ouraniaTeleport", "ouraniaTeleportIconMobile", "pohNoticeboardIcon", "paddewwaTeleport", "paddewwaTeleportIconMobile", "panicEmoteIcon", "parlourIcon", "partyEmoteIcon", "petListIcon", "petShopIcon", "picketFenceIcon", "piety", "piscatorisIcon", "plankMake", "plankMakeIconMobile", "plantIcon", "platebodyShopIcon", "platelegsShopIcon", "plateskirtShopIcon", "plumingStandIcon", "polarHabitatIcon", "polarKebbitIcon", "pollBoothIcon", "pondIcon", "portKhazardIcon", "portPiscariliusIcon", "portRobertsIcon", "portSarimIcon", "portTyrasIcon", "portTaskBoardIcon", "portTasksIcon", "portalChamberIcon", "portalNexusIcon", "poshBellPullIcon", "poshFountainIcon", "potteryWheelIcon", "prayer", "prayerTutorIcon", "prayerIcon", "preenEmoteIcon", "premierShieldEmoteIcon", "preserve", "preserveV1", "pricingExpertHerbsIcon", "pricingExpertLogsIcon", "pricingExpertOresAndBarsIcon", "pricingExpertWeaponsAndArmourIcon", "pricingExpertIcon", "pricklyKebbitIcon", "prifddinasIcon", "protectItem", "protectItemRuinousPowers", "protectFromMagic", "protectFromMagicAndMeleeOverhead", "protectFromMagicAndMissilesOverhead", "protectFromMagicAndMissilesOverheadHistorical", "protectFromMagicOverhead", "protectFromMagicOverheadHistorical", "protectFromMelee", "protectFromMeleeOverhead", "protectFromMeleeOverheadHistorical", "protectFromMissiles", "protectFromMissilesAndMeleeOverhead", "protectFromMissilesOverhead", "protectFromMissilesOverheadHistorical", "protectFromSummoning", "protectFromAll", "pubIcon", "pumpAndDrainIcon", "pumpAndTubIcon", "pumpkinConstructionIcon", "purge", "purgeOverhead", "purgeV1", "pushUpEmoteIcon", "pyreFoxIcon", "pyrefiendIcon", "questSpeedrunningWorldIcon", "questListConstructionIcon", "questStartIcon", "rabbitHopEmoteIcon", "raftIcon", "ragingEchoesCurtainsIcon", "ragingEchoesRugIcon", "raids", "raidsLobbyIcon", "rainbowsEndIcon", "rangeIcon", "ranged", "rangedStrengthIcon", "rangedDefenceIcon", "rangedIcon", "rangingPedestalsIcon", "rapidHeal", "rapidRestore", "rareDropTable", "rareTreesIcon", "raspberryEmoteIcon", "razorBackedKebbitIcon", "reanimateAbyssalCreature", "reanimateAbyssalCreatureIconMobile", "reanimateAbyssalCreatureV1", "reanimateAviansie", "reanimateAviansieIconMobile", "reanimateAviansieV1", "reanimateBear", "reanimateBearIconMobile", "reanimateBearV1", "reanimateBloodveld", "reanimateBloodveldIconMobile", "reanimateBloodveldV1", "reanimateChaosDruid", "reanimateChaosDruidIconMobile", "reanimateChaosDruidV1", "reanimateDagannoth", "reanimateDagannothIconMobile", "reanimateDagannothV1", "reanimateDemon", "reanimateDemonIconMobile", "reanimateDemonV1", "reanimateDog", "reanimateDogIconMobile", "reanimateDogV1", "reanimateDragon", "reanimateDragonIconMobile", "reanimateDragonV1", "reanimateElf", "reanimateElfIconMobile", "reanimateElfV1", "reanimateGiant", "reanimateGiantIconMobile", "reanimateGiantV1", "reanimateGoblin", "reanimateGoblinIconMobile", "reanimateGoblinV1", "reanimateHorror", "reanimateHorrorIconMobile", "reanimateHorrorV1", "reanimateImp", "reanimateImpIconMobile", "reanimateImpV1", "reanimateKalphite", "reanimateKalphiteIconMobile", "reanimateKalphiteV1", "reanimateMinotaur", "reanimateMinotaurIconMobile", "reanimateMinotaurV1", "reanimateMonkey", "reanimateMonkeyIconMobile", "reanimateMonkeyV1", "reanimateOgre", "reanimateOgreIconMobile", "reanimateOgreV1", "reanimateScorpion", "reanimateScorpionIconMobile", "reanimateScorpionV1", "reanimateTroll", "reanimateTrollIconMobile", "reanimateTrollV1", "reanimateTzhaar", "reanimateTzhaarIconMobile", "reanimateTzhaarV1", "reanimateUnicorn", "reanimateUnicornIconMobile", "reanimateUnicornV1", "rebuke", "rebukeOverhead", "rebukeOverheadV1", "rebukeV1", "rechargeDragonstone", "rechargeDragonstoneIconMobile", "redRockIcon", "redArrowMapMarker", "redDragonIcon", "redSalamander", "redemption", "redemptionOverhead", "redemptionOverheadV1", "redemptionOverheadV2", "redwoodFenceIcon", "reedsIcon", "rejuvenation", "rejuvenationPoolIcon", "rejuvenationV1", "rellekkaIcon", "repairBenchIcon", "respawnTeleport", "respawnTeleportIconMobile", "respawnTeleportV1", "restorationPoolIcon", "restraintIconMobile", "resurrectCrops", "resurrectCropsIconMobile", "resurrectCropsV1", "resurrectGhost", "resurrectGhostIconMobile", "resurrectGreaterGhost", "resurrectGreaterGhostIconMobile", "resurrectGreaterSkeleton", "resurrectGreaterSkeletonIconMobile", "resurrectGreaterZombie", "resurrectGreaterZombieIconMobile", "resurrectLesserGhost", "resurrectLesserGhostIconMobile", "resurrectLesserSkeleton", "resurrectLesserSkeletonIconMobile", "resurrectLesserZombie", "resurrectLesserZombieIconMobile", "resurrectSkeleton", "resurrectSkeletonIconMobile", "resurrectSuperiorGhost", "resurrectSuperiorGhostIconMobile", "resurrectSuperiorSkeleton", "resurrectSuperiorSkeletonIconMobile", "resurrectSuperiorZombie", "resurrectSuperiorZombieIconMobile", "resurrectZombie", "resurrectZombieIconMobile", "retribution", "retributionOverhead", "retributionOverheadV1", "retributionOverheadV2", "revenantIcon", "revitalisationPoolIcon", "rigour", "rigourV1", "rigourV2", "rigourV3", "rimmingtonIcon", "ringSlot", "rockSkin", "rockingChairIcon", "rockslugIcon", "rocnarIcon", "ropeBellPullIcon", "ropeTraderIcon", "ropeTrawlingNetIcon", "rosemaryConstructionIcon", "rosesIcon", "rosewoodCargoHoldIcon", "rosewoodHullAndHullPartsIcon", "rosewoodMastAndCottonSailsIcon", "roundShieldConstructionIcon", "rubyHarvestIcon", "rugIcon", "ruinousGrace", "ruinousGraceV1", "ruinsOfUnkahIcon", "runeCannonIcon", "runeCase1Icon", "runeCase2Icon", "runeCase3Icon", "runeDragonConstructionIcon", "runeDragonIcon", "runeHelmIcon", "runeKeelIcon", "runeSalvagingHookIcon", "runecraft", "runecraftIcon", "runiteArmourConstructionIcon", "stashChartIcon", "sabreToothedKebbitIcon", "sabreToothedKyattIcon", "sailing", "sailingBetaContentIcon", "sailingWorldIcon", "sailorJakobIcon", "saluteEmoteIcon", "salvagingSpotIcon", "salvagingStationIcon", "salveGraveyardTeleport", "salveGraveyardTeleportIconMobile", "salveGraveyardTeleportV1", "salveGraveyardTeleportV2", "sandpitIcon", "sapphireGlacialisIcon", "saradominStrike", "saradominStrikeIconMobile", "saradominStrikeIconV1", "saradominIconIcon", "saradominSymbolIcon", "sawmillIcon", "scaredEmoteIcon", "scimitarShopIcon", "scryingPoolRagingEchoesIcon", "scryingPoolIcon", "seaChartingIcon", "seaChartingMapIcon", "seaSnakeIcon", "search", "sectionAnchorLight", "securityTutorIcon", "senntistenTeleport", "senntistenTeleportIconMobile", "servantsMoneyBagIcon", "shadowBarrage", "shadowBarrageIconMobile", "shadowBlitz", "shadowBlitzIconMobile", "shadowBurst", "shadowBurstIconMobile", "shadowRush", "shadowRushIconMobile", "shadowVeil", "shadowVeilIconMobile", "sharpEye", "shavingStandIcon", "shieldEaselIcon", "shieldShopIcon", "shieldSlot", "shimmeringAtollIcon", "shipwreckSalvagingIcon", "shipwrightIcon", "shipwrightMapIcon", "shiverPenguinEmoteIcon", "shoeBoxIcon", "shortPlantIcon", "shrugEmoteIcon", "shutteredWindowIcon", "silkTraderIcon", "silverShopIcon", "silverlightMountedIcon", "simpleArenaIcon", "singingBowlIcon", "sinisterOffering", "sinisterOfferingIconMobile", "sinkIcon", "sitDownEmoteIcon", "sitUpEmoteIcon", "skeletalGrasp", "skeletalGraspIconMobile", "skeletalWyvernIcon", "skeletonGuardIcon", "skeletonThroneIcon", "skiffIcon", "skillCapeEmoteIcon", "skillsIcon", "skullStatusIcon", "skullTorchesIcon", "slapHeadEmoteIcon", "slayer", "slayerMasterIcon", "slayerIcon", "sloopIcon", "smallBoxHedgeIcon", "smallFernIcon", "smallFountainIcon", "smallMapIcon", "smallOrreryIcon", "smallOvenIcon", "smallStatueIcon", "smallStorageUnitIcon", "smite", "smiteOverhead", "smiteOverheadV1", "smiteOverheadV2", "smithing", "smithingTutorIcon", "smithingIcon", "smokeBarrage", "smokeBarrageIconMobile", "smokeBlitz", "smokeBlitzIconMobile", "smokeBurst", "smokeBurstIconMobile", "smokeRush", "smokeRushIconMobile", "smokeDevilIcon", "smoothDanceEmoteIcon", "snare", "snareIconMobile", "snowyKnightIcon", "soulSplit", "soulSplitOverhead", "soulSplitOverheadV1", "speedrunningShopIcon", "spellbookSwap", "spellbookSwapIconMobile", "spiceRackIcon", "spiceShopIcon", "spikeTrapIcon", "spikedCageIcon", "spikesIcon", "spinPenguinEmoteIcon", "spinFlax", "spinFlaxIconMobile", "spinEmoteIcon", "spinedLarupiaIcon", "spinningWheelIcon", "spiritTreeAndFairyRingRagingEchoesIcon", "spiritTreeAndFairyRingIcon", "spiritTreeConstructionIcon", "spiritTreeConstructionChristmasIcon", "spiritTreeConstructionRagingEchoesIcon", "spiritTreeIcon", "spiritualMageIcon", "spiritualRangerIcon", "spiritualWarriorIcon", "spottedKebbitIcon", "spotterVirginiaIcon", "squareShieldConstructionIcon", "staffShopIcon", "stagnantWaterSourceIcon", "stainedGlassIcon", "stampEmoteIcon", "star", "starJumpEmoteIcon", "stashUnits", "statRestorePotShare", "statRestorePotShareIconMobile", "statSpy", "statSpyIconMobile", "steelSkin", "steelCageOublietteIcon", "steelCageIcon", "steelCandlesticksIcon", "steelCannonIcon", "steelDragonConstructionIcon", "steelFramedWorkbenchIcon", "steelHelmIcon", "steelKeelIcon", "steelRangeIcon", "steelSalvagingHookIcon", "steelTorchesIcon", "steelPlatedDoorIcon", "stoneFireplaceIcon", "stoneWallIcon", "stonemasonIcon", "stormChasersFlagIcon", "strength", "strengthIcon", "stringJewellery", "stringJewelleryIconMobile", "studyIcon", "stun", "stunIconMobile", "sulphurLizardIcon", "summonBoat", "summonBoatIconMobile", "sunbleakIslandIcon", "sunflowerIcon", "sunlightMothIcon", "sunlightAntelopeIcon", "sunsetCoastIcon", "superglassMake", "superglassMakeIconMobile", "superheatItem", "superheatItemIconMobile", "superhumanStrength", "superiorDemonbane", "superiorDemonbaneIconMobile", "superiorGardenIcon", "suqahIcon", "swampCruisersFlagIcon", "swampLizard", "swordShopIcon", "tallBoxHedgeIcon", "tallFancyHedgeIcon", "tallPlantIcon", "tanLeather", "tanLeatherIconMobile", "tangleVineIcon", "tanneryIcon", "taskMasterIcon", "taxidermistIcon", "teaTraderIcon", "teakAltarIcon", "teakArmchairIcon", "teakArmourCaseIcon", "teakBedMahoganyHomesIcon", "teakBedSmallMahoganyHomesIcon", "teakBedIcon", "teakBookcaseMahoganyHomesIcon", "teakCabinetIcon", "teakCapeRackIcon", "teakCargoHoldIcon", "teakChairMahoganyHomesIcon", "teakChestIcon", "teakClockIcon", "teakCupboardIcon", "teakDemonLecternIcon", "teakDiningBenchIcon", "teakDisplayFishingTrophyIcon", "teakDisplayHeadTrophyIcon", "teakDrawersMahoganyHomesIcon", "teakDrawersIcon", "teakDresserMahoganyHomesIcon", "teakDresserIcon", "teakEagleLecternIcon", "teakFancyDressBoxIcon", "teakFeederIcon", "teakGardenBenchIcon", "teakHouseIcon", "teakHullAndHullPartsIcon", "teakKitchenTableIcon", "teakLadderIcon", "teakLarderIcon", "teakLeverIcon", "teakMagicWardrobeIcon", "teakMastAndCanvasSailsIcon", "teakPortalIcon", "teakPrizeChestIcon", "teakScratchingPostIcon", "teakShelvesMahoganyHomesIcon", "teakShelves1Icon", "teakShelves2Icon", "teakStaircaseIcon", "teakTableLargeMahoganyHomesIcon", "teakTableMediumMahoganyHomesIcon", "teakTableSmallMahoganyHomesIcon", "teakTableIcon", "teakTelescopeIcon", "teakThroneIcon", "teakToyBoxIcon", "teakTrapdoorIcon", "teakTreasureChestIcon", "teakWallDecorationIcon", "teakWardrobeMahoganyHomesIcon", "teakWardrobeIcon", "tearOfTheSoulIcon", "teleBlock", "teleBlockIconMobile", "teleGroupBarbarian", "teleGroupBarbarianIconMobile", "teleGroupCatherby", "teleGroupCatherbyIconMobile", "teleGroupFishingGuild", "teleGroupFishingGuildIconMobile", "teleGroupIcePlateau", "teleGroupIcePlateauIconMobile", "teleGroupKhazard", "teleGroupKhazardIconMobile", "teleGroupMoonclan", "teleGroupMoonclanIconMobile", "teleGroupWaterbirth", "teleGroupWaterbirthIconMobile", "telekineticGrab", "telekineticGrabIconMobile", "teleotherCamelot", "teleotherCamelotIconMobile", "teleotherFalador", "teleotherFaladorIconMobile", "teleotherLumbridge", "teleotherLumbridgeIconMobile", "teleportFocusFacilityIcon", "teleportFocusIcon", "teleportToBoat", "teleportToBoatIconMobile", "teleportToHouse", "teleportToHouseIconMobile", "teleportToTarget", "teleportToTargetIconMobile", "teleportTrapIcon", "tentaclePoolIcon", "terrorDogIcon", "theCrownJewelIcon", "theLittlePearlIcon", "theOnyxCrestIcon", "thePandemoniumIcon", "theSummerShoreIcon", "theDesertPaintingIcon", "thickSkin", "thiefCaveGoblin", "thiefDesertBandit", "thiefElf", "thiefElfV1", "thiefElfV2", "thiefFarmer", "thiefFremennik", "thiefGnome", "thiefGuard", "thiefHamMan", "thiefHamWoman", "thiefHero", "thiefKnight", "thiefMan", "thiefMasterFarmer", "thiefMenaphiteThug", "thiefPaladin", "thiefPirate", "thiefPollnivnianBandit", "thiefRogue", "thiefTzhaarHur", "thiefVillager", "thiefWarrior", "thiefWatchman", "thieving", "thievingActivityIcon", "thievingIcon", "thinkEmoteIcon", "thistleIcon", "thornyHedgeIcon", "throneRoomIcon", "tipJarIcon", "tokXilConstructionIcon", "toolStore1Icon", "toolStore2Icon", "toolStore3Icon", "toolStore4Icon", "toolStore5Icon", "topiaryBushIcon", "topiaryHedgeIcon", "torchesConstructionIcon", "tornCurtainsIcon", "tournamentWorldIcon", "trailblazerGlobeIcon", "trailblazerRugIcon", "transportationIcon", "trapdoorIcon", "trawlingShoalIcon", "treasureHuntIcon", "treasureRoomIcon", "treeConstructionIcon", "trickEmoteIcon", "trimsIcon", "trinitas", "trinitasV1", "trollGuardIcon", "trollheimTeleport", "trollheimTeleportIconMobile", "trophyPedestalIcon", "tropicalWagtailIcon", "turothIcon", "ultimateStrength", "ultimateIronmanChatBadge", "umbrasVow", "umbrasVowV1", "undeadGrasp", "undeadGraspIconMobile", "undeadCombatDummyIcon", "unusedArceuusBoneConversionSpell", "unusedArceuusCorruptionSpell", "unusedArceuusCorruptionSpellMobile", "unusedArceuusDartSpell", "unusedArceuusRedDemobaneSpellMobile", "unusedArceuusResurrectionSpell", "unusedArceuusResurrectionSpellMobile", "unusedArceuusTeleportSpell", "unusedArceuusTeleportSpellMobile", "unusedArceuusUnknownSpell", "unusedArceuusYellowGreenDemobaneSpellMobile", "uriTransformEmoteIcon", "valeTotemSiteIcon", "vaporise", "vaporiseV1", "varrockTeleport", "varrockTeleportIconMobile", "vatrachosIslandIcon", "vegetableShopIcon", "vengeance", "vengeanceOther", "vengeanceOtherIconMobile", "vengeanceIconMobile", "vileVigour", "vileVigourIconMobile", "vindication", "vindicationOverhead", "vindicationV1", "voidKnightsOutpostIcon", "volcanicHabitatIcon", "volcanicThemeIcon", "vorkathsHeadMountedIcon", "vulnerability", "vulnerabilityIconMobile", "wallBeastIcon", "wardOfArceuus", "wardOfArceuusIconMobile", "warpedTerrorbirdIcon", "warpedTortoiseIcon", "watchtowerTeleport", "watchtowerTeleportIconMobile", "waterBlast", "waterBlastIconMobile", "waterBolt", "waterBoltIconMobile", "waterStrike", "waterStrikeIconMobile", "waterSurge", "waterSurgeIconMobile", "waterWave", "waterWaveIconMobile", "waterSourceIcon", "waterbirthIslandIcon", "waterbirthTeleport", "waterbirthTeleportIconMobile", "wavePenguinEmoteIcon", "waveEmoteIcon", "weaken", "weakenIconMobile", "weaponSlot", "weaponsRackIcon", "weightIcon", "weissIcon", "westArdougneTeleport", "westArdougneTeleportIconMobile", "westArdougneTeleportV1", "whetstoneIcon", "whiteRabbitIcon", "wildKebbitIcon", "willowTreeConstructionIcon", "windBlast", "windBlastIconMobile", "windBolt", "windBoltIconMobile", "windStrike", "windStrikeIconMobile", "windSurge", "windSurgeIconMobile", "windWave", "windWaveIconMobile", "windCatcherIcon", "windchimesIcon", "windmillIcon", "wineTraderIcon", "wintumberIslandIcon", "witchavenIcon", "woodDiningTableIcon", "woodcutting", "woodcuttingTutorIcon", "woodcuttingIcon", "woodcuttingStumpIcon", "woodenBedMahoganyHomesIcon", "woodenBedSmallMahoganyHomesIcon", "woodenBedIcon", "woodenBenchIcon", "woodenBookcaseMahoganyHomesIcon", "woodenBookcaseIcon", "woodenCabinetIcon", "woodenCargoHoldIcon", "woodenChairMahoganyHomesIcon", "woodenChairIcon", "woodenCrateIcon", "woodenCupboardIcon", "woodenDrawersMahoganyHomesIcon", "woodenDresserMahoganyHomesIcon", "woodenFenceIcon", "woodenHullAndHullPartsIcon", "woodenLarderIcon", "woodenMastAndLinenSailsIcon", "woodenShelvesMahoganyHomesIcon", "woodenShelves1Icon", "woodenShelves2Icon", "woodenShelves3Icon", "woodenTableLargeMahoganyHomesIcon", "woodenTableMediumMahoganyHomesIcon", "woodenTableSmallMahoganyHomesIcon", "woodenTorchesIcon", "woodenWardrobeMahoganyHomesIcon", "woodenWorkbenchIcon", "workshopIcon", "wrath", "wrathOverhead", "wrathOverheadV1", "wyrmIcon", "yawnEmoteIcon", "yellowArrowMapMarker", "yesEmoteIcon", "yewTreeConstructionIcon", "ynysdailIcon", "zamorakIconIcon", "zamorakSymbolIcon", "zenThemeIcon", "zombieDanceEmoteIcon", "zombieHandEmoteIcon", "zombieWalkEmoteIcon"];
2
+ export type CategoryIconName = (typeof categoryIconNames)[number];
3
+ //# sourceMappingURL=category-icons-meta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"category-icons-meta.d.ts","sourceRoot":"","sources":["../../../src/generated/category-icons-meta.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB,q74CAinEpB,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC"}