aqualink 3.1.0 → 3.2.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/build/index.d.ts CHANGED
@@ -3,10 +3,10 @@ import { EventEmitter } from 'node:events'
3
3
  declare module 'aqualink' {
4
4
  // Main Classes
5
5
  export class Aqua extends EventEmitter {
6
- constructor(client: any, nodes: NodeOptions[], options?: AquaOptions)
6
+ constructor(client: unknown, nodes: NodeOptions[], options?: AquaOptions)
7
7
 
8
8
  // Core Properties
9
- client: any
9
+ client: unknown
10
10
  nodes: NodeOptions[]
11
11
  nodeMap: Map<string, Node>
12
12
  players: Map<string, Player>
@@ -28,7 +28,7 @@ declare module 'aqualink' {
28
28
  restrictedDomains: string[]
29
29
  allowedDomains: string[]
30
30
  loadBalancer: LoadBalancerStrategy
31
- send: (payload: any) => void
31
+ send: (payload: Record<string, unknown>) => void
32
32
  autoRegionMigrate: boolean
33
33
 
34
34
  // Internal State Management
@@ -61,18 +61,6 @@ declare module 'aqualink' {
61
61
  */
62
62
  init(clientId: string): Promise<Aqua>
63
63
 
64
- /**
65
- * Creates a new node connection
66
- * @param options Modified node options
67
- */
68
- createNode(options: NodeOptions): Promise<Node>
69
-
70
- /**
71
- * Destroys a node by identifier
72
- * @param identifier Node identifier (name or host)
73
- */
74
- destroyNode(identifier: string): void
75
-
76
64
  /**
77
65
  * Updates the voice state of a player
78
66
  * @param data Voice state update packet
@@ -128,13 +116,12 @@ declare module 'aqualink' {
128
116
  */
129
117
  search(
130
118
  query: string,
131
- requester: any,
119
+ requester: unknown,
132
120
  source?: SearchSource
133
121
  ): Promise<Track[] | null>
134
122
 
135
123
  // Save/Load Methods
136
124
  savePlayer(filePath?: string): Promise<void>
137
- savePlayerSync(filePath?: string): void
138
125
  loadPlayers(filePath?: string): Promise<void>
139
126
 
140
127
  // Failover and Migration Methods
@@ -156,18 +143,17 @@ declare module 'aqualink' {
156
143
  /**
157
144
  * Destroys the Aqua instance and all players
158
145
  */
159
- destroy(): Promise<void>
146
+ destroy(): void
160
147
 
161
148
  getTrace(limit?: number): TraceEntry[]
162
149
 
163
150
  // Internal Methods
164
151
  _invalidateCache(): void
165
- _getCachedNodeLoad(node: Node): number
166
- _calculateNodeLoad(node: Node): number
152
+ _getNodeLoad(node: Node): number
167
153
  _createNode(options: NodeOptions): Promise<Node>
168
154
  _destroyNode(identifier: string): void
169
155
  _cleanupNode(nodeId: string): void
170
- _storeBrokenPlayers(node: Node): void
156
+ _storeBrokenPlayers(node: Node): Promise<void>
171
157
  _rebuildBrokenPlayers(node: Node): Promise<void>
172
158
  _rebuildPlayer(
173
159
  brokenState: BrokenPlayerState,
@@ -190,8 +176,8 @@ declare module 'aqualink' {
190
176
  _getRequestNode(nodes?: string | Node | Node[]): Node
191
177
  _chooseLeastBusyNode(nodes: Node[]): Node | null
192
178
  _constructResponse(
193
- response: any,
194
- requester: any,
179
+ response: Record<string, unknown>,
180
+ requester: unknown,
195
181
  requestNode: Node
196
182
  ): ResolveResponse
197
183
  _resolveSearchPlatform(source: string): SearchSource
@@ -199,13 +185,9 @@ declare module 'aqualink' {
199
185
  _performCleanup(): void
200
186
  _handlePlayerDestroy(player: Player): void
201
187
  _waitForFirstNode(timeout?: number): Promise<void>
202
- _restorePlayer(data: SavedPlayerData): Promise<void>
203
- _parseRequester(requesterString: string | null): any
204
- _loadPlugins(): Promise<void>
205
- _createDefaultSend(): (packet: any) => void
188
+ _restorePlayer(data: SavedPlayerData): Promise<boolean>
189
+ _createDefaultSend(): (packet: Record<string, unknown>) => void
206
190
  _bindEventHandlers(): void
207
- _startCleanupTimer(): void
208
- _onNodeReady(node: Node, data: { resumed: boolean }): void
209
191
  _regionMatches(configuredRegion: string, extractedRegion: string): boolean
210
192
  _findBestNodeForRegion(region: string): Node | null
211
193
 
@@ -239,7 +221,7 @@ declare module 'aqualink' {
239
221
  connected: boolean
240
222
  info: NodeInfo | null
241
223
  isNodelink: boolean
242
- ws: any | null // WebSocket
224
+ ws: unknown | null // WebSocket
243
225
  reconnectAttempted: number
244
226
  reconnectTimeoutId: NodeJS.Timeout | null
245
227
  isDestroyed: boolean
@@ -263,12 +245,12 @@ declare module 'aqualink' {
263
245
 
264
246
  // Internal Methods
265
247
  _handleOpen(): Promise<void>
266
- _handleError(error: any): void
267
- _handleMessage(data: any, isBinary: boolean): void
268
- _handleClose(code: number, reason: any): void
269
- _handleReady(payload: any): Promise<void>
248
+ _handleError(error: Error | unknown): void
249
+ _handleMessage(data: Buffer | string | unknown, isBinary: boolean): void
250
+ _handleClose(code: number, reason: string | unknown): void
251
+ _handleReady(payload: Record<string, unknown>): Promise<void>
270
252
  _resumePlayers(): Promise<void>
271
- _emitError(error: any): void
253
+ _emitError(error: Error | unknown): void
272
254
  _emitDebug(message: string | (() => string)): void
273
255
  }
274
256
 
@@ -306,7 +288,7 @@ declare module 'aqualink' {
306
288
  position: number
307
289
  timestamp: number
308
290
  ping: number
309
- nowPlayingMessage: any
291
+ nowPlayingMessage: unknown
310
292
  isAutoplayEnabled: boolean
311
293
  isAutoplay: boolean
312
294
  autoplaySeed: AutoplaySeed | null
@@ -323,12 +305,12 @@ declare module 'aqualink' {
323
305
  // Additional Internal Properties
324
306
  previousTracks: CircularBuffer
325
307
  _updateBatcher: MicrotaskUpdateBatcher
326
- _dataStore: Map<string, any> | null
308
+ _dataStore: Map<string, unknown> | null
327
309
  _voiceDownSince: number
328
310
  _voiceRecovering: boolean
329
311
  _voiceWatchdogTimer: NodeJS.Timer | null
330
- _boundPlayerUpdate: (packet: any) => void
331
- _boundEvent: (payload: any) => void
312
+ _boundPlayerUpdate: (packet: Record<string, unknown>) => void
313
+ _boundEvent: (payload: Record<string, unknown>) => void
332
314
  _boundAquaPlayerMove: (oldChannel: string, newChannel: string) => void
333
315
  _lastVoiceChannel: string | null
334
316
  _lastTextChannel: string | null
@@ -450,63 +432,98 @@ declare module 'aqualink' {
450
432
 
451
433
  // Advanced Methods
452
434
  getLyrics(options?: LyricsOptions): Promise<LyricsResponse | null>
453
- subscribeLiveLyrics(): Promise<any>
454
- unsubscribeLiveLyrics(): Promise<any>
455
- liveLyrics(guildId: string, state: boolean): Promise<any>
435
+ subscribeLiveLyrics(): Promise<unknown>
436
+ unsubscribeLiveLyrics(): Promise<unknown>
437
+ liveLyrics(guildId: string, state: boolean): Promise<unknown>
456
438
  autoplay(): Promise<Player>
457
439
  setAutoplay(enabled: boolean): Player
458
- updatePlayer(data: any): Promise<any>
440
+ updatePlayer(data: UpdatePlayerOptions['data']): Promise<unknown>
459
441
  cleanup(): Promise<void>
460
- getActiveMixer(guildId: string): Promise<any[]>
442
+ getActiveMixer(guildId: string): Promise<unknown[]>
461
443
  updateMixerVolume(
462
444
  guildId: string,
463
445
  mix: string,
464
446
  volume: number
465
- ): Promise<any>
466
- removeMixer(guildId: string, mix: string): Promise<any>
467
- addMixer(guildId: string, options: MixerOptions): Promise<any>
447
+ ): Promise<unknown>
448
+ removeMixer(guildId: string, mix: string): Promise<unknown>
449
+ addMixer(guildId: string, options: MixerOptions): Promise<unknown>
468
450
  getLoadLyrics(encodedTrack: string): Promise<LyricsResponse | null>
469
451
 
470
452
  // Data Methods
471
- set(key: string, value: any): void
472
- get(key: string): any
453
+ set(key: string, value: unknown): void
454
+ get<T = unknown>(key: string): T
473
455
  clearData(): Player
474
456
 
475
457
  // Utility Methods
476
- send(data: any): void
477
- batchUpdatePlayer(data: any, immediate?: boolean): Promise<void>
458
+ send(data: Record<string, unknown>): void
459
+ batchUpdatePlayer(
460
+ data: UpdatePlayerOptions['data'],
461
+ immediate?: boolean
462
+ ): Promise<void>
478
463
 
479
464
  // Internal Methods
480
- _parseLoop(loop: any): LoopMode
465
+ _parseLoop(loop: unknown): LoopMode
481
466
  _bindEvents(): void
482
467
  _startWatchdog(): void
483
- _handlePlayerUpdate(packet: any): void
484
- _handleEvent(payload: any): Promise<void>
468
+ _handlePlayerUpdate(packet: Record<string, unknown>): void
469
+ _handleEvent(payload: Record<string, unknown>): Promise<void>
485
470
  _voiceWatchdog(): Promise<void>
486
471
  _attemptVoiceResume(): Promise<void>
487
472
  _getAutoplayTrack(
488
473
  sourceName: string,
489
474
  identifier: string,
490
475
  uri: string,
491
- requester: any,
476
+ requester: unknown,
492
477
  prev: Track
493
478
  ): Promise<Track | null>
494
479
  _handleAquaPlayerMove(oldChannel: string, newChannel: string): void
495
480
 
496
481
  // Event handler methods (called internally)
497
482
  trackStart(player: Player, track: Track): Promise<void>
498
- trackEnd(player: Player, track: Track, payload: any): Promise<void>
499
- trackError(player: Player, track: Track, payload: any): Promise<void>
500
- trackStuck(player: Player, track: Track, payload: any): Promise<void>
501
- trackChange(player: Player, track: Track, payload: any): Promise<void>
502
- socketClosed(player: Player, track: Track, payload: any): Promise<void>
503
- lyricsLine(player: Player, track: Track, payload: any): Promise<void>
504
- lyricsFound(player: Player, track: Track, payload: any): Promise<void>
505
- lyricsNotFound(player: Player, track: Track, payload: any): Promise<void>
483
+ trackEnd(
484
+ player: Player,
485
+ track: Track,
486
+ payload: Record<string, unknown>
487
+ ): Promise<void>
488
+ trackError(
489
+ player: Player,
490
+ track: Track,
491
+ payload: Record<string, unknown>
492
+ ): Promise<void>
493
+ trackStuck(
494
+ player: Player,
495
+ track: Track,
496
+ payload: Record<string, unknown>
497
+ ): Promise<void>
498
+ trackChange(
499
+ player: Player,
500
+ track: Track,
501
+ payload: Record<string, unknown>
502
+ ): Promise<void>
503
+ socketClosed(
504
+ player: Player,
505
+ track: Track,
506
+ payload: Record<string, unknown>
507
+ ): Promise<void>
508
+ lyricsLine(
509
+ player: Player,
510
+ track: Track,
511
+ payload: Record<string, unknown>
512
+ ): Promise<void>
513
+ lyricsFound(
514
+ player: Player,
515
+ track: Track,
516
+ payload: Record<string, unknown>
517
+ ): Promise<void>
518
+ lyricsNotFound(
519
+ player: Player,
520
+ track: Track,
521
+ payload: Record<string, unknown>
522
+ ): Promise<void>
506
523
  }
507
524
 
508
525
  export class Track {
509
- constructor(data?: TrackData, requester?: any, node?: Node)
526
+ constructor(data?: TrackData, requester?: unknown, node?: Node)
510
527
 
511
528
  // Properties
512
529
  identifier: string
@@ -521,7 +538,7 @@ declare module 'aqualink' {
521
538
  artworkUrl: string
522
539
  track: string | null
523
540
  playlist: PlaylistInfo | null
524
- requester: any
541
+ requester: unknown
525
542
  nodes: Node
526
543
  node: Node | null
527
544
 
@@ -570,7 +587,7 @@ declare module 'aqualink' {
570
587
  timeout: number
571
588
  baseUrl: string
572
589
  defaultHeaders: Record<string, string>
573
- agent: any // HTTP/HTTPS Agent
590
+ agent: unknown // HTTP/HTTPS Agent
574
591
  useHttp2: boolean
575
592
 
576
593
  // Core Methods
@@ -578,7 +595,7 @@ declare module 'aqualink' {
578
595
  * Sets the session ID for the REST connection
579
596
  * @param sessionId The session ID
580
597
  */
581
- setSessionId(sessionId: string): void
598
+ setSessionId(sessionId: string | null): void
582
599
 
583
600
  /**
584
601
  * Makes a generic request to the Lavalink REST API
@@ -586,19 +603,23 @@ declare module 'aqualink' {
586
603
  * @param endpoint API endpoint
587
604
  * @param body Request body
588
605
  */
589
- makeRequest(method: HttpMethod, endpoint: string, body?: any): Promise<any>
606
+ makeRequest<T = unknown>(
607
+ method: HttpMethod,
608
+ endpoint: string,
609
+ body?: unknown
610
+ ): Promise<T>
590
611
 
591
612
  /**
592
613
  * Updates a player via REST
593
614
  * @param options Update options
594
615
  */
595
- updatePlayer(options: UpdatePlayerOptions): Promise<any>
616
+ updatePlayer(options: UpdatePlayerOptions): Promise<unknown>
596
617
 
597
618
  /**
598
619
  * Destroys a player via REST
599
620
  * @param guildId Guild ID
600
621
  */
601
- destroyPlayer(guildId: string): Promise<any>
622
+ destroyPlayer(guildId: string): Promise<unknown>
602
623
 
603
624
  /**
604
625
  * Gets lyrics for a track
@@ -611,13 +632,13 @@ declare module 'aqualink' {
611
632
  * @param guildId Guild ID
612
633
  * @param sync Whether to sync with playback
613
634
  */
614
- subscribeLiveLyrics(guildId: string, sync?: boolean): Promise<any>
635
+ subscribeLiveLyrics(guildId: string, sync?: boolean): Promise<unknown>
615
636
 
616
637
  /**
617
638
  * Unsubscribes from live lyrics
618
639
  * @param guildId Guild ID
619
640
  */
620
- unsubscribeLiveLyrics(guildId: string): Promise<any>
641
+ unsubscribeLiveLyrics(guildId: string): Promise<unknown>
621
642
 
622
643
  /**
623
644
  * Gets node statistics
@@ -625,25 +646,25 @@ declare module 'aqualink' {
625
646
  getStats(): Promise<NodeStats>
626
647
 
627
648
  // Additional REST Methods
628
- getPlayer(guildId: string): Promise<any>
629
- getPlayers(): Promise<any>
630
- decodeTrack(encodedTrack: string): Promise<any>
631
- decodeTracks(encodedTracks: string[]): Promise<any>
649
+ getPlayer(guildId: string): Promise<unknown>
650
+ getPlayers(): Promise<unknown>
651
+ decodeTrack(encodedTrack: string): Promise<unknown>
652
+ decodeTracks(encodedTracks: string[]): Promise<unknown>
632
653
  getInfo(): Promise<NodeInfo>
633
654
  getVersion(): Promise<string>
634
- getRoutePlannerStatus(): Promise<any>
635
- freeRoutePlannerAddress(address: string): Promise<any>
636
- freeAllRoutePlannerAddresses(): Promise<any>
637
- addMixer(guildId: string, options: MixerOptions): Promise<any>
638
- getActiveMixer(guildId: string): Promise<any[]>
655
+ getRoutePlannerStatus(): Promise<unknown>
656
+ freeRoutePlannerAddress(address: string): Promise<unknown>
657
+ freeAllRoutePlannerAddresses(): Promise<unknown>
658
+ addMixer(guildId: string, options: MixerOptions): Promise<unknown>
659
+ getActiveMixer(guildId: string): Promise<unknown[]>
639
660
  updateMixerVolume(
640
661
  guildId: string,
641
662
  mix: string,
642
663
  volume: number
643
- ): Promise<any>
644
- removeMixer(guildId: string, mix: string): Promise<any>
664
+ ): Promise<unknown>
665
+ removeMixer(guildId: string, mix: string): Promise<unknown>
645
666
  getLoadLyrics(encodedTrack: string): Promise<LyricsResponse>
646
- loadTracks(identifier: string): Promise<any>
667
+ loadTracks(identifier: string): Promise<unknown>
647
668
  destroy(): void
648
669
  }
649
670
 
@@ -738,7 +759,7 @@ declare module 'aqualink' {
738
759
  updateFilters(): Promise<Filters>
739
760
 
740
761
  // Internal Methods
741
- _setFilter(filterName: string, enabled: boolean, options?: any): Filters
762
+ _setFilter(filterName: string, enabled: boolean, options?: unknown): Filters
742
763
  _scheduleUpdate(): Filters
743
764
  }
744
765
 
@@ -759,7 +780,7 @@ declare module 'aqualink' {
759
780
  _guildId: string
760
781
  _clientId: string
761
782
  _lastEndpoint: string | null
762
- _pendingUpdate: any
783
+ _pendingUpdate: unknown
763
784
  _updateTimer: NodeJS.Timeout | null
764
785
  _hasDebugListeners: boolean
765
786
  _hasMoveListeners: boolean
@@ -780,7 +801,7 @@ declare module 'aqualink' {
780
801
  _extractRegion(endpoint: string): string | null
781
802
  _scheduleVoiceUpdate(isResume?: boolean): void
782
803
  _executeVoiceUpdate(): void
783
- _sendUpdate(payload: any): Promise<void>
804
+ _sendUpdate(payload: Record<string, unknown>): Promise<void>
784
805
  _handleDisconnect(): void
785
806
  _clearPendingUpdate(): void
786
807
  _checkRegionMigration(): void
@@ -797,26 +818,26 @@ declare module 'aqualink' {
797
818
  export class MicrotaskUpdateBatcher {
798
819
  constructor(player: Player)
799
820
  player: Player | null
800
- updates: any
821
+ updates: Record<string, unknown> | null
801
822
  scheduled: number
802
823
  flush: () => Promise<void>
803
824
 
804
- batch(data: any, immediate?: boolean): Promise<void>
825
+ batch(data: Record<string, unknown>, immediate?: boolean): Promise<void>
805
826
  destroy(): void
806
827
  _flush(): Promise<void>
807
828
  }
808
829
 
809
830
  export class CircularBuffer {
810
831
  constructor(size?: number)
811
- buffer: any[]
832
+ buffer: unknown[]
812
833
  size: number
813
834
  index: number
814
835
  count: number
815
836
 
816
- push(item: any): void
817
- getLast(): any
837
+ push(item: unknown): void
838
+ getLast(): unknown
818
839
  clear(): void
819
- toArray(): any[]
840
+ toArray(): unknown[]
820
841
  }
821
842
 
822
843
  // Configuration Interfaces
@@ -826,7 +847,7 @@ declare module 'aqualink' {
826
847
  leaveOnEnd?: boolean
827
848
  restVersion?: RestVersion
828
849
  plugins?: Plugin[]
829
- send?: (payload: any) => void
850
+ send?: (payload: Record<string, unknown>) => void
830
851
  autoResume?: boolean
831
852
  infiniteReconnects?: boolean
832
853
  urlFilteringEnabled?: boolean
@@ -894,7 +915,7 @@ declare module 'aqualink' {
894
915
  export interface ResolveOptions {
895
916
  query: string
896
917
  source?: SearchSource | string
897
- requester: any
918
+ requester: unknown
898
919
  nodes?: string | Node | Node[]
899
920
  }
900
921
 
@@ -903,7 +924,7 @@ declare module 'aqualink' {
903
924
  loadType: LoadType
904
925
  exception: LavalinkException | null
905
926
  playlistInfo: PlaylistInfo | null
906
- pluginInfo: Record<string, any>
927
+ pluginInfo: Record<string, unknown>
907
928
  tracks: Track[]
908
929
  }
909
930
 
@@ -1065,7 +1086,7 @@ declare module 'aqualink' {
1065
1086
  export interface MixerOptions {
1066
1087
  identifier?: string
1067
1088
  encoded?: string
1068
- userData?: any
1089
+ userData?: unknown
1069
1090
  volume?: number
1070
1091
  }
1071
1092
 
@@ -1123,8 +1144,8 @@ declare module 'aqualink' {
1123
1144
  position?: number
1124
1145
  volume?: number
1125
1146
  paused?: boolean
1126
- filters?: any
1127
- voice?: any
1147
+ filters?: Record<string, unknown>
1148
+ voice?: Record<string, unknown>
1128
1149
  }
1129
1150
  }
1130
1151
 
@@ -1161,7 +1182,7 @@ declare module 'aqualink' {
1161
1182
 
1162
1183
  export interface MigrationResult {
1163
1184
  success: boolean
1164
- error?: any
1185
+ error?: Error | unknown
1165
1186
  }
1166
1187
 
1167
1188
  export interface SavedPlayerData {
@@ -1338,7 +1359,7 @@ declare module 'aqualink' {
1338
1359
 
1339
1360
  export type LoadBalancerStrategy = 'leastLoad' | 'leastRest' | 'random'
1340
1361
 
1341
- export type EventHandler<T = any> = (...args: T[]) => void | Promise<void>
1362
+ export type EventHandler<T = unknown> = (...args: T[]) => void | Promise<void>
1342
1363
 
1343
1364
  // Event Interfaces
1344
1365
  export interface AquaEvents {
@@ -1346,10 +1367,10 @@ declare module 'aqualink' {
1346
1367
  nodeConnected: (node: Node) => void
1347
1368
  nodeDisconnect: (node: Node, data: { code: number; reason: string }) => void
1348
1369
  nodeError: (node: Node, error: Error) => void
1349
- nodeReconnect: (node: Node, data: any) => void
1370
+ nodeReconnect: (node: Node, data: Record<string, unknown>) => void
1350
1371
  nodeCreate: (node: Node) => void
1351
1372
  nodeDestroy: (node: Node) => void
1352
- nodeReady: (node: Node, data: any) => void
1373
+ nodeReady: (node: Node, data: Record<string, unknown>) => void
1353
1374
  nodeFailover: (node: Node) => void
1354
1375
  nodeFailoverComplete: (
1355
1376
  node: Node,
@@ -1358,26 +1379,42 @@ declare module 'aqualink' {
1358
1379
  ) => void
1359
1380
  playerCreate: (player: Player) => void
1360
1381
  playerDestroy: (player: Player) => void
1361
- playerUpdate: (player: Player, packet: any) => void
1382
+ playerUpdate: (player: Player, packet: Record<string, unknown>) => void
1362
1383
  playerMigrated: (
1363
1384
  oldPlayer: Player,
1364
1385
  newPlayer: Player,
1365
1386
  targetNode: Node
1366
1387
  ) => void
1367
- playerReconnected: (player: Player, data: any) => void
1388
+ playerReconnected: (player: Player, data: Record<string, unknown>) => void
1368
1389
  trackStart: (player: Player, track: Track) => void
1369
1390
  trackEnd: (player: Player, track: Track, reason?: string) => void
1370
- trackError: (player: Player, track: Track, error: any) => void
1391
+ trackError: (player: Player, track: Track, error: Error | unknown) => void
1371
1392
  trackStuck: (player: Player, track: Track, thresholdMs: number) => void
1372
- trackChange: (player: Player, track: Track, payload: any) => void
1393
+ trackChange: (
1394
+ player: Player,
1395
+ track: Track,
1396
+ payload: Record<string, unknown>
1397
+ ) => void
1373
1398
  queueEnd: (player: Player) => void
1374
1399
  playerMove: (oldChannel: string, newChannel: string) => void
1375
1400
  playersRebuilt: (node: Node, count: number) => void
1376
- reconnectionFailed: (player: Player, data: any) => void
1377
- socketClosed: (player: Player, payload: any) => void
1378
- lyricsLine: (player: Player, track: Track, payload: any) => void
1379
- lyricsFound: (player: Player, track: Track, payload: any) => void
1380
- lyricsNotFound: (player: Player, track: Track, payload: any) => void
1401
+ reconnectionFailed: (player: Player, data: Record<string, unknown>) => void
1402
+ socketClosed: (player: Player, payload: Record<string, unknown>) => void
1403
+ lyricsLine: (
1404
+ player: Player,
1405
+ track: Track,
1406
+ payload: Record<string, unknown>
1407
+ ) => void
1408
+ lyricsFound: (
1409
+ player: Player,
1410
+ track: Track,
1411
+ payload: Record<string, unknown>
1412
+ ) => void
1413
+ lyricsNotFound: (
1414
+ player: Player,
1415
+ track: Track,
1416
+ payload: Record<string, unknown>
1417
+ ) => void
1381
1418
  autoplayFailed: (player: Player, error: Error) => void
1382
1419
  debug: (source: string, message: string) => void
1383
1420
  error: (node: Node | null, error: Error) => void
@@ -1385,35 +1422,35 @@ declare module 'aqualink' {
1385
1422
 
1386
1423
  export interface PlayerEvents {
1387
1424
  destroy: () => void
1388
- playerUpdate: (packet: any) => void
1389
- event: (payload: any) => void
1425
+ playerUpdate: (packet: Record<string, unknown>) => void
1426
+ event: (payload: Record<string, unknown>) => void
1390
1427
  trackStart: (track: Track) => void
1391
1428
  trackEnd: (track: Track, reason?: string) => void
1392
- trackError: (track: Track, error: any) => void
1429
+ trackError: (track: Track, error: Error | unknown) => void
1393
1430
  trackStuck: (track: Track, thresholdMs: number) => void
1394
- trackChange: (track: Track, payload: any) => void
1395
- socketClosed: (payload: any) => void
1396
- lyricsLine: (track: Track, payload: any) => void
1397
- lyricsFound: (track: Track, payload: any) => void
1398
- lyricsNotFound: (track: Track, payload: any) => void
1431
+ trackChange: (track: Track, payload: Record<string, unknown>) => void
1432
+ socketClosed: (payload: Record<string, unknown>) => void
1433
+ lyricsLine: (track: Track, payload: Record<string, unknown>) => void
1434
+ lyricsFound: (track: Track, payload: Record<string, unknown>) => void
1435
+ lyricsNotFound: (track: Track, payload: Record<string, unknown>) => void
1399
1436
  }
1400
1437
 
1401
1438
  // Event Emitter Type Extensions for Aqua
1402
1439
  interface Aqua {
1403
1440
  on<K extends keyof AquaEvents>(event: K, listener: AquaEvents[K]): this
1404
- on(event: string | symbol, listener: (...args: any[]) => void): this
1441
+ on(event: string | symbol, listener: (...args: unknown[]) => void): this
1405
1442
 
1406
1443
  once<K extends keyof AquaEvents>(event: K, listener: AquaEvents[K]): this
1407
- once(event: string | symbol, listener: (...args: any[]) => void): this
1444
+ once(event: string | symbol, listener: (...args: unknown[]) => void): this
1408
1445
 
1409
1446
  emit<K extends keyof AquaEvents>(
1410
1447
  event: K,
1411
1448
  ...args: Parameters<AquaEvents[K]>
1412
1449
  ): boolean
1413
- emit(event: string | symbol, ...args: any[]): boolean
1450
+ emit(event: string | symbol, ...args: unknown[]): boolean
1414
1451
 
1415
1452
  off<K extends keyof AquaEvents>(event: K, listener: AquaEvents[K]): this
1416
- off(event: string | symbol, listener: (...args: any[]) => void): this
1453
+ off(event: string | symbol, listener: (...args: unknown[]) => void): this
1417
1454
 
1418
1455
  removeListener<K extends keyof AquaEvents>(
1419
1456
  event: K,
@@ -1421,7 +1458,7 @@ declare module 'aqualink' {
1421
1458
  ): this
1422
1459
  removeListener(
1423
1460
  event: string | symbol,
1424
- listener: (...args: any[]) => void
1461
+ listener: (...args: unknown[]) => void
1425
1462
  ): this
1426
1463
 
1427
1464
  addListener<K extends keyof AquaEvents>(
@@ -1430,7 +1467,7 @@ declare module 'aqualink' {
1430
1467
  ): this
1431
1468
  addListener(
1432
1469
  event: string | symbol,
1433
- listener: (...args: any[]) => void
1470
+ listener: (...args: unknown[]) => void
1434
1471
  ): this
1435
1472
 
1436
1473
  removeAllListeners<K extends keyof AquaEvents>(event?: K): this
@@ -1439,22 +1476,22 @@ declare module 'aqualink' {
1439
1476
 
1440
1477
  interface Player {
1441
1478
  on<K extends keyof PlayerEvents>(event: K, listener: PlayerEvents[K]): this
1442
- on(event: string | symbol, listener: (...args: any[]) => void): this
1479
+ on(event: string | symbol, listener: (...args: unknown[]) => void): this
1443
1480
 
1444
1481
  once<K extends keyof PlayerEvents>(
1445
1482
  event: K,
1446
1483
  listener: PlayerEvents[K]
1447
1484
  ): this
1448
- once(event: string | symbol, listener: (...args: any[]) => void): this
1485
+ once(event: string | symbol, listener: (...args: unknown[]) => void): this
1449
1486
 
1450
1487
  emit<K extends keyof PlayerEvents>(
1451
1488
  event: K,
1452
1489
  ...args: Parameters<PlayerEvents[K]>
1453
1490
  ): boolean
1454
- emit(event: string | symbol, ...args: any[]): boolean
1491
+ emit(event: string | symbol, ...args: unknown[]): boolean
1455
1492
 
1456
1493
  off<K extends keyof PlayerEvents>(event: K, listener: PlayerEvents[K]): this
1457
- off(event: string | symbol, listener: (...args: any[]) => void): this
1494
+ off(event: string | symbol, listener: (...args: unknown[]) => void): this
1458
1495
 
1459
1496
  removeListener<K extends keyof PlayerEvents>(
1460
1497
  event: K,
@@ -1462,7 +1499,7 @@ declare module 'aqualink' {
1462
1499
  ): this
1463
1500
  removeListener(
1464
1501
  event: string | symbol,
1465
- listener: (...args: any[]) => void
1502
+ listener: (...args: unknown[]) => void
1466
1503
  ): this
1467
1504
 
1468
1505
  addListener<K extends keyof PlayerEvents>(
@@ -1471,7 +1508,7 @@ declare module 'aqualink' {
1471
1508
  ): this
1472
1509
  addListener(
1473
1510
  event: string | symbol,
1474
- listener: (...args: any[]) => void
1511
+ listener: (...args: unknown[]) => void
1475
1512
  ): this
1476
1513
 
1477
1514
  removeAllListeners<K extends keyof PlayerEvents>(event?: K): this
@@ -1491,7 +1528,7 @@ declare module 'aqualink' {
1491
1528
  statusCode?: number
1492
1529
  statusMessage?: string
1493
1530
  headers?: Record<string, string>
1494
- body?: any
1531
+ body?: unknown
1495
1532
  }
1496
1533
 
1497
1534
  // Extended ResolveOptions for internal use