nhle-api 0.5.1 → 0.5.2

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/lib/index.d.ts CHANGED
@@ -200,24 +200,22 @@ declare const ZoneTimeSortEnum: {
200
200
  };
201
201
 
202
202
  declare const Year$1: arktype.BaseType<number | ((In: string) => arktype_internal_attributes_ts.To<number>), {}>;
203
+ declare const NHLMonth$1: arktype_internal_variants_object_ts.ObjectType<(In: string | Date) => arktype.Out<string>, {}>;
204
+ declare const NHLDate$1: arktype_internal_variants_object_ts.ObjectType<(In: string | Date) => arktype.Out<string>, {}>;
203
205
  declare const Season$1: arktype_internal_variants_object_ts.ObjectType<(In: string | number) => arktype.Out<string>, {}>;
204
206
  declare const TeamAbbrev$1: arktype_internal_variants_string_ts.StringType<"ANA" | "BOS" | "BUF" | "CGY" | "CAR" | "CHI" | "COL" | "CBJ" | "DAL" | "DET" | "EDM" | "FLA" | "LAK" | "MIN" | "MTL" | "NJD" | "NSH" | "NYI" | "NYR" | "OTT" | "PHI" | "PIT" | "SJS" | "SEA" | "STL" | "TBL" | "TOR" | "UTA" | "VAN" | "VGK" | "WPG" | "WSH" | "AFM" | "ARI" | "ATL" | "BRK" | "CGS" | "CLE" | "CLR" | "DCG" | "DFL" | "HAM" | "HFD" | "KCS" | "MMR" | "MNS" | "MWN" | "NYA" | "OAK" | "PHX" | "PIR" | "QBD" | "QUA" | "QUE" | "SEN" | "SLE" | "TAN" | "TSP" | "WIN", {}>;
205
- declare const TeamId$1: arktype_internal_variants_number_ts.NumberType<1 | 10 | 2 | 3 | 4 | 24 | 6 | 7 | 20 | 12 | 16 | 21 | 29 | 25 | 17 | 22 | 13 | 26 | 30 | 8 | 18 | 9 | 5 | 28 | 55 | 19 | 14 | 59 | 23 | 54 | 52 | 15, {}>;
206
- declare const GameType$1: arktype.BaseType<1 | "1" | "2" | "3" | "4" | 2 | 3 | 4 | 19 | ((In: "REG" | "PRE" | "POST" | "ASG" | "INTL") => arktype.Out<1 | 2 | 3 | 4 | 19>) | "19", {}>;
207
+ declare const TeamId$1: arktype_internal_variants_number_ts.NumberType<1 | 10 | 2 | 3 | 4 | 24 | 6 | 7 | 20 | 12 | 16 | 21 | 29 | 25 | 17 | 22 | 13 | 26 | 30 | 8 | 18 | 9 | 5 | 28 | 55 | 19 | 14 | 59 | 23 | 54 | 52 | 15 | 47 | 53 | 11 | 51 | 56 | 49 | 35 | 40 | 50 | 37 | 34 | 48 | 43 | 31 | 41 | 44 | 46 | 27 | 38 | 42 | 39 | 32 | 36 | 45 | 57 | 58 | 33, {}>;
208
+ declare const GameType$1: arktype.BaseType<1 | 2 | 3 | 4 | 19 | ((In: "REG" | "PRE" | "POST" | "ASG" | "INTL") => arktype.Out<1 | 2 | 3 | 4 | 19>), {}>;
207
209
  declare const GameNumber$1: arktype_internal_variants_object_ts.ObjectType<(In: string | number) => arktype.Out<string>, {}>;
208
210
  declare const DraftRound$1: arktype_internal_variants_object_ts.ObjectType<(In: string | number) => arktype.Out<string>, {}>;
209
211
  declare const EventId$1: arktype.BaseType<number | ((In: string) => arktype_internal_attributes_ts.To<number>), {}>;
210
- declare const NHLDate$1: arktype_internal_variants_object_ts.ObjectType<(In: string | Date) => arktype.Out<string>, {}>;
211
- declare const NHLMonth$1: arktype_internal_variants_object_ts.ObjectType<(In: string | Date) => arktype.Out<string>, {}>;
212
212
  declare const GameId$1: arktype.BaseType<number | ((In: string) => arktype_internal_attributes_ts.To<number>), {}>;
213
213
  declare const SeriesLetter$1: arktype_internal_variants_string_ts.StringType<"A" | "B" | "C" | "D" | "E" | "F" | "G" | "H" | "I" | "J" | "K" | "L" | "M" | "N" | "O", {}>;
214
- declare const GameState$3: arktype_internal_variants_string_ts.StringType<"FUT" | "LIV" | "FIN", {}>;
215
- declare const CountryCode$3: arktype_internal_variants_object_ts.ObjectType<(In: string) => arktype.Out<string>, {}>;
214
+ declare const GameState$2: arktype_internal_variants_string_ts.StringType<"FUT" | "LIV" | "FIN", {}>;
215
+ declare const CountryCode$2: arktype_internal_variants_object_ts.ObjectType<(In: string) => arktype.Out<string>, {}>;
216
+ declare const PostalCode$1: arktype_internal_variants_string_ts.StringType<string, {}>;
216
217
  declare const PlayerId$1: arktype_internal_variants_object_ts.ObjectType<(In: string | number) => arktype.Out<string>, {}>;
217
218
 
218
- /**
219
- * Type definitions for common parameters
220
- */
221
219
  /**
222
220
  * Represents a valid NHL year (e.g., 2023, 2024, ...)
223
221
  */
@@ -242,11 +240,11 @@ type GameId = typeof GameId$1.inferIn;
242
240
  /**
243
241
  * Represents a valid NHL team abbreviation (e.g., NYR, MTL, ...)
244
242
  */
245
- type TeamAbbrev = typeof TeamAbbrev$1.inferIn;
243
+ type TeamAbbrev = typeof TeamAbbrev$1.inferIn | (string & {});
246
244
  /**
247
245
  * Represents a valid NHL team ID
248
246
  */
249
- type TeamId = typeof TeamId$1.inferIn;
247
+ type TeamId = typeof TeamId$1.inferIn | (number & {});
250
248
  /**
251
249
  * Represents a valid NHL game number
252
250
  */
@@ -254,7 +252,7 @@ type GameNumber = typeof GameNumber$1.inferIn;
254
252
  /**
255
253
  * Represents a valid NHL game state
256
254
  */
257
- type GameState$2 = typeof GameState$3.inferIn;
255
+ type GameState$1 = typeof GameState$2.inferIn;
258
256
  /**
259
257
  * Represents a valid draft round (1-7)
260
258
  */
@@ -282,7 +280,11 @@ type PlayoffRound = 1 | 2 | 3 | 4;
282
280
  /**
283
281
  * Represents a valid country code (e.g., CAN, USA, SWE, ...)
284
282
  */
285
- type CountryCode$2 = typeof CountryCode$3.inferIn;
283
+ type CountryCode$1 = typeof CountryCode$2.inferIn;
284
+ /**
285
+ * Represents a valid country code (e.g., CAN, USA, SWE, ...)
286
+ */
287
+ type PostalCode = typeof PostalCode$1.inferIn;
286
288
  /**
287
289
  * Represents a valid NHL player ID
288
290
  */
@@ -318,50 +320,60 @@ type ZoneTimeSort = keyof typeof ZoneTimeSortEnum;
318
320
  /**
319
321
  * Common types used in Gamecenter API responses
320
322
  */
323
+ type IncompleteOptions<T> = T | (string & {});
321
324
  /** GameState - The current state of the game. */
322
- type GameState$1 = 'OFF' | 'FUT' | 'LIVE' | 'PRE' | 'CRIT' | 'FINAL';
323
- /** Market - The market for this broadcast. (H = Home, A = Away, N = National) */
324
- type Market = 'H' | 'A' | 'N';
325
+ type GameState = 'OFF' | 'FUT' | 'LIVE' | 'PRE' | 'CRIT' | 'FINAL';
326
+ /** GameScheduleState - The current state of the game. */
327
+ type GameScheduleState = IncompleteOptions<'OK' | 'TBD' | 'CNCL'>;
328
+ /** PeriodType - The type of period in the game. */
329
+ type PeriodType = 'REG' | 'OT' | 'SO';
330
+ /** PenaltyType - The type of penalty. (MIN = Minor, BEN = Bench, MAJ = Major) */
331
+ type PenaltyTypeCode = IncompleteOptions<'MIN' | 'BEN' | 'MAJ'>;
332
+ /** Market - The market for this broadcast. (H = Home, A = Away, N = National, S = Satellite Radio) */
333
+ type Market = 'H' | 'A' | 'N' | 'S';
325
334
  /** CountryCode - The country code for this broadcast. (CA = Canada, US = United States) */
326
- type CountryCode$1 = 'CA' | 'US' | string;
327
- /** CountryTLA - The three-letter country code. */
328
- type CountryTLA = 'CAN' | 'FIN' | 'USA' | 'LAT' | 'CZE' | 'SWE' | 'CHE' | 'GER' | 'RUS' | 'AUT' | 'GBR' | 'NOR' | 'DEU' | 'SVK' | 'LVA' | 'BLR' | 'KAZ' | 'DNK' | 'ITA' | 'SUI' | 'FRA' | string;
329
- /**
330
- * PositionCode - The position code for a player. (D = Defenseman, C = Center, R[W] = Right Wing, L[W] = Left Wing, G = Goalie)
331
- * Note: The NHL data likes to switch between including and excluding the [W] for wing positions
332
- */
333
- type PositionCode = 'D' | 'C' | 'L' | 'LW' | 'R' | 'RW' | 'G';
335
+ type CountryCode = 'CA' | 'US';
336
+ /** PositionCode - The position code for a player. (C = Center, RW = Right Wing, LW = Left Wing, D = Defenseman, G = Goalie) */
337
+ type PositionCode = 'C' | 'LW' | 'RW' | 'D' | 'G';
338
+ /** PositionCode - The position code for a player. (C = Center, R = Right, L = Left, D = Defenseman, G = Goalie) */
339
+ type Position$1 = 'C' | 'L' | 'R' | 'D' | 'G';
334
340
  /** ShootsCatches - Player's shooting/catching handedness. (L = Left, R = Right) */
335
341
  type ShootsCatches = 'L' | 'R';
336
- /** Default - An object containing a default string value. */
342
+ /** DefaultWith - An object containing a default string value as well as any translations to other languages. */
337
343
  interface Default {
338
- default: string;
339
- }
340
- /** DefaultWithTranslations - An object containing a default string value as well as any alternative spellings for other languages. */
341
- interface DefaultWithTranslations extends Default {
342
344
  /** French */
343
345
  fr?: string;
344
346
  /** Czech */
345
347
  cs?: string;
348
+ /** German */
349
+ de?: string;
350
+ /** Spanish */
351
+ es?: string;
346
352
  /** Finnish */
347
353
  fi?: string;
348
354
  /** Slovak */
349
355
  sk?: string;
350
356
  /** Swedish */
351
357
  sv?: string;
352
- /** German */
353
- de?: string;
354
- /** Spanish */
355
- es?: string;
358
+ /** Additional languages */
356
359
  [key: string]: string | undefined;
357
360
  }
361
+ type UTCOffset = `+${number}:${number}` | `-${number}:${number}`;
362
+ type ZoneCode = 'N' | 'D' | 'O';
363
+ interface TvBroadcast$3 {
364
+ id: number;
365
+ market: Market;
366
+ countryCode: CountryCode;
367
+ network: string;
368
+ sequenceNumber: number;
369
+ }
358
370
 
359
371
  interface DraftPicks {
360
372
  broadcastStartTimeUTC: string;
361
373
  draftYear: number;
362
374
  draftYears: number[];
363
375
  selectableRounds: number[];
364
- state: 'over' | string;
376
+ state: string;
365
377
  picks: Pick$1[];
366
378
  }
367
379
  interface Pick$1 {
@@ -370,26 +382,22 @@ interface Pick$1 {
370
382
  overallPick: number;
371
383
  teamId: number;
372
384
  teamAbbrev: TeamAbbrev;
373
- teamName: TeamName$1;
374
- teamCommonName: TeamName$1;
375
- teamPlaceNameWithPreposition: TeamName$1;
376
- displayAbbrev: DisplayAbbrev;
385
+ teamName: Default;
386
+ teamCommonName: Default;
387
+ teamPlaceNameWithPreposition: Default;
388
+ displayAbbrev: Default;
377
389
  teamLogoLight: string;
378
390
  teamLogoDark: string;
379
391
  teamPickHistory: string;
380
- firstName: DisplayAbbrev;
381
- lastName: DisplayAbbrev;
392
+ firstName: Default;
393
+ lastName: Default;
382
394
  positionCode: PositionCode;
383
- countryCode: CountryCode;
395
+ countryCode: string;
384
396
  height: number;
385
397
  weight: number;
386
- amateurLeague: AmateurLeague$1;
398
+ amateurLeague: string;
387
399
  amateurClubName: string;
388
400
  }
389
- type AmateurLeague$1 = 'OHL' | 'SWEDEN-2' | 'QMJHL' | 'H-EAST' | 'WHL' | 'RUSSIA-JR.' | 'BIG10' | 'USHL' | 'HIGH-MN' | 'NCHC' | 'SWEDEN-JR.' | 'NTDP - USHL' | 'SWEDEN' | 'CZECHIA' | 'FINLAND-JR.' | 'HIGH-ON' | 'CZECHIA-JR.' | 'GERMANY' | 'CCHL' | 'SWE-JR. U18' | 'SWISS-JR.' | 'FINLAND' | 'RUSSIA' | 'BCHL' | 'HIGH-RI' | 'SWISS' | 'HIGH-MA' | string;
390
- type CountryCode = 'CAN' | 'SWE' | 'USA' | 'CZE' | 'RUS' | 'FIN' | 'CHN' | 'AUS' | 'SVN' | 'SVK' | 'BLR' | 'DEU' | 'ITA' | 'CHE' | 'NOR' | 'DNK' | 'HRV' | string;
391
- type DisplayAbbrev = Default;
392
- type TeamName$1 = DefaultWithTranslations;
393
401
 
394
402
  interface DraftRankings {
395
403
  draftYear: number;
@@ -401,11 +409,11 @@ interface DraftRankings {
401
409
  }
402
410
  interface Category {
403
411
  id: number;
404
- name: Name$1;
412
+ name: Name;
405
413
  consumerKey: Key;
406
414
  }
407
415
  type Key = 'north-american-skater' | 'international-skater' | 'north-american-goalie' | 'international-goalie';
408
- type Name$1 = 'North American Skater' | 'International Skater' | 'North American Goalie' | 'International Goalie';
416
+ type Name = 'North American Skater' | 'International Skater' | 'North American Goalie' | 'International Goalie';
409
417
  interface Ranking {
410
418
  lastName: string;
411
419
  firstName: string;
@@ -414,16 +422,14 @@ interface Ranking {
414
422
  heightInInches: number;
415
423
  weightInPounds: number;
416
424
  lastAmateurClub?: string;
417
- lastAmateurLeague?: AmateurLeague;
425
+ lastAmateurLeague?: string;
418
426
  birthDate: Date;
419
427
  birthCity: string;
420
- birthCountry: BirthCountry;
428
+ birthCountry: string;
421
429
  midtermRank?: number;
422
430
  finalRank?: number;
423
431
  birthStateProvince?: string;
424
432
  }
425
- type BirthCountry = 'RUS' | 'CHE' | 'SWE' | 'FIN' | 'CZE' | 'BLR' | 'CAN' | 'SVK' | 'USA' | 'LVA' | 'SVN' | 'AUS' | 'ITA' | 'DNK' | 'NOR' | 'AUT' | 'NLD' | 'DEU' | 'ESP' | 'BEL' | 'POL' | 'CHN' | 'HRV' | 'GBR' | 'KAZ';
426
- type AmateurLeague = 'RUSSIA-JR.' | 'SWISS-JR.' | 'SWEDEN-JR.' | 'FINLAND' | 'WHL' | 'SWEDEN-2' | 'FINLAND-JR.' | 'QMJHL' | 'USHL' | 'OHL' | 'H-EAST' | 'CCHL' | 'BCHL' | 'NAHL' | 'CZECHIA' | 'SWEDEN' | 'CZECHIA-JR.' | 'CZECHIA-2' | 'RUSSIA' | 'SWISS' | 'SLOVAKIA' | 'SWISS-2' | 'GERMANY' | 'FRANCE' | 'SLOVAKIA-JR.' | 'BIG10' | 'NCHC' | 'HIGH-MN' | 'NTDP - USHL' | 'HIGH-ON' | 'ECAC' | 'HIGH-RI' | 'HIGH-MA' | 'CCHA' | 'RUSSIA-2';
427
433
 
428
434
  interface DraftTracker {
429
435
  currentDraftDate: Date;
@@ -433,7 +439,7 @@ interface DraftTracker {
433
439
  logoFrUrl: string;
434
440
  uiAccentColor: HexColorCode;
435
441
  round: number;
436
- state: 'over' | string;
442
+ state: string;
437
443
  picks: Pick[];
438
444
  }
439
445
  interface Pick {
@@ -441,23 +447,21 @@ interface Pick {
441
447
  overallPick: number;
442
448
  teamId: number;
443
449
  teamAbbrev: TeamAbbrev;
444
- teamFullName: TeamName;
445
- teamCommonName: TeamName;
446
- teamPlaceNameWithPreposition: TeamName;
450
+ teamFullName: Default;
451
+ teamCommonName: Default;
452
+ teamPlaceNameWithPreposition: Default;
447
453
  teamLogoLight: string;
448
454
  teamLogoDark: string;
449
- state: 'confirmed' | string;
450
- lastName: Name;
451
- firstName: Name;
455
+ state: string;
456
+ lastName: Default;
457
+ firstName: Default;
452
458
  positionCode: PositionCode;
453
459
  }
454
- type Name = DefaultWithTranslations;
455
- type TeamName = DefaultWithTranslations;
456
460
  type HexColorCode = `#${string}`;
457
461
  interface TvBroadcast$2 {
458
462
  id: number;
459
463
  market: Market;
460
- countryCode: CountryCode$1;
464
+ countryCode: CountryCode;
461
465
  network: string;
462
466
  sequenceNumber: number;
463
467
  }
@@ -485,7 +489,7 @@ interface WhereToWatch {
485
489
  active: boolean;
486
490
  countryCode: string;
487
491
  countryName: string;
488
- streamingName?: StreamingName;
492
+ streamingName?: string;
489
493
  streamingSiteUrl?: string;
490
494
  streamingLogoUrl?: string;
491
495
  primaryBroadcastName?: string;
@@ -495,54 +499,54 @@ interface WhereToWatch {
495
499
  secondaryBroadcastSiteUrl?: string;
496
500
  secondaryBroadcastLogoUrl?: string;
497
501
  }
498
- type StreamingName = 'NHL Live' | 'NHL.TV INTL' | 'ESPN+' | 'ESPN Play' | 'Disney Plus' | 'Disney+' | 'Viaplay' | 'TV24' | 'TV3' | string;
499
502
 
500
503
  interface GamecenterBoxscore {
501
504
  id: number;
502
505
  season: number;
503
506
  gameType: number;
504
507
  limitedScoring: boolean;
505
- gameDate: Date;
508
+ gameDate: string;
506
509
  venue: Default;
507
510
  venueLocation: Default;
508
- startTimeUTC: Date;
509
- easternUTCOffset: string;
510
- venueUTCOffset: string;
511
+ startTimeUTC: string;
512
+ easternUTCOffset: UTCOffset;
513
+ venueUTCOffset: UTCOffset;
511
514
  tvBroadcasts: TvBroadcast$1[];
512
- gameState: GameState$1;
513
- gameScheduleState: 'OK' | string;
514
- periodDescriptor?: PeriodDescriptor$1;
515
+ gameState: GameState;
516
+ gameScheduleState: GameScheduleState;
517
+ periodDescriptor?: PeriodDescriptor$2;
515
518
  regPeriods: number;
516
- awayTeam: Team$1;
517
- homeTeam: Team$1;
518
- clock: Clock;
519
+ awayTeam: Team$4;
520
+ homeTeam: Team$4;
521
+ clock: Clock$1;
519
522
  playerByGameStats?: PlayerByGameStats;
520
- summary?: Summary;
521
- gameOutcome?: GameOutcome$1;
522
- situation?: Situation;
523
+ summary?: Summary$1;
524
+ gameOutcome?: GameOutcome$2;
525
+ situation?: Situation$1;
523
526
  }
524
- interface Team$1 {
527
+ interface Team$4 {
525
528
  id: number;
526
529
  commonName: Default;
527
- abbrev: string;
530
+ abbrev: TeamAbbrev;
528
531
  score?: number;
529
532
  sog?: number;
530
533
  logo: string;
531
534
  darkLogo: string;
532
535
  placeName: Default;
533
- placeNameWithPreposition: DefaultWithTranslations;
536
+ placeNameWithPreposition: Default;
534
537
  radioLink?: string;
535
538
  }
536
- interface Clock {
539
+ interface Clock$1 {
537
540
  timeRemaining: string;
538
541
  secondsRemaining: number;
539
542
  running: boolean;
540
543
  inIntermission: boolean;
541
544
  }
542
- interface GameOutcome$1 {
545
+ interface GameOutcome$2 {
543
546
  lastPeriodType: string;
547
+ otPeriods?: number;
544
548
  }
545
- interface PeriodDescriptor$1 {
549
+ interface PeriodDescriptor$2 {
546
550
  number: number;
547
551
  periodType: string;
548
552
  maxRegulationPeriods: number;
@@ -551,17 +555,19 @@ interface PlayerByGameStats {
551
555
  awayTeam: PlayerByGameStatsTeam;
552
556
  homeTeam: PlayerByGameStatsTeam;
553
557
  }
554
- type Position = 'C' | 'R' | 'L' | 'D';
555
558
  interface PlayerByGameStatsTeam {
556
559
  forwards: Forward$1[];
557
560
  defense: Defense[];
558
561
  goalies: Goalie$1[];
559
562
  }
560
- interface Skater {
563
+ interface BasePlayer {
561
564
  playerId: number;
562
565
  sweaterNumber: number;
563
- name: DefaultWithTranslations;
564
- position: Exclude<Position, 'G'>;
566
+ name: Default;
567
+ position: Position$1;
568
+ }
569
+ interface Skater extends BasePlayer {
570
+ position: Exclude<Position$1, 'G'>;
565
571
  goals: number;
566
572
  assists: number;
567
573
  points: number;
@@ -578,15 +584,12 @@ interface Skater {
578
584
  takeaways: number;
579
585
  }
580
586
  interface Forward$1 extends Skater {
581
- position: Exclude<Position, 'D' | 'G'>;
587
+ position: Exclude<Position$1, 'D' | 'G'>;
582
588
  }
583
589
  interface Defense extends Skater {
584
590
  position: 'D';
585
591
  }
586
- interface Goalie$1 {
587
- playerId: number;
588
- sweaterNumber: number;
589
- name: DefaultWithTranslations;
592
+ interface Goalie$1 extends BasePlayer {
590
593
  position: 'G';
591
594
  evenStrengthShotsAgainst: string;
592
595
  powerPlayShotsAgainst: string;
@@ -600,11 +603,12 @@ interface Goalie$1 {
600
603
  goalsAgainst: number;
601
604
  toi: string;
602
605
  starter?: boolean;
603
- decision?: string;
606
+ decision?: Decision;
604
607
  shotsAgainst: number;
605
608
  saves: number;
606
609
  }
607
- interface Situation {
610
+ type Decision = 'W' | 'L' | 'O';
611
+ interface Situation$1 {
608
612
  homeTeam: SituationDetails;
609
613
  awayTeam: SituationDetails;
610
614
  situationCode: string;
@@ -616,15 +620,292 @@ interface SituationDetails {
616
620
  situationDescriptions: string[];
617
621
  strength: number;
618
622
  }
619
- type Summary = Record<string, unknown>;
623
+ type Summary$1 = Record<string, unknown>;
620
624
  interface TvBroadcast$1 {
621
625
  id: number;
622
626
  market: Market;
623
- countryCode: CountryCode$1;
627
+ countryCode: CountryCode;
624
628
  network: string;
625
629
  sequenceNumber: number;
626
630
  }
627
631
 
632
+ interface GamecenterPlayByPlay {
633
+ id: number;
634
+ season: number;
635
+ gameType: number;
636
+ limitedScoring: boolean;
637
+ gameDate: string;
638
+ venue: Default;
639
+ venueLocation: Default;
640
+ startTimeUTC: string;
641
+ easternUTCOffset: UTCOffset;
642
+ venueUTCOffset: UTCOffset;
643
+ tvBroadcasts: TvBroadcast$3[];
644
+ gameState: GameState;
645
+ gameScheduleState: GameScheduleState;
646
+ periodDescriptor?: PeriodDescriptor$1;
647
+ awayTeam: Team$3;
648
+ homeTeam: Team$3;
649
+ shootoutInUse: boolean;
650
+ otInUse: boolean;
651
+ clock: Clock;
652
+ displayPeriod: number;
653
+ maxPeriods: number;
654
+ gameOutcome?: GameOutcome$1;
655
+ plays: Play[];
656
+ rosterSpots: RosterSpot[];
657
+ regPeriods: number;
658
+ summary?: Summary;
659
+ situation?: Situation;
660
+ }
661
+ interface Clock {
662
+ timeRemaining: string;
663
+ secondsRemaining: number;
664
+ running: boolean;
665
+ inIntermission: boolean;
666
+ }
667
+ interface GameOutcome$1 {
668
+ lastPeriodType: PeriodType;
669
+ otPeriods?: number;
670
+ }
671
+ interface GamecenterPlayByPlayHomeTeam {
672
+ id: number;
673
+ commonName: Default;
674
+ abbrev: TeamAbbrev;
675
+ score: number;
676
+ sog?: number;
677
+ logo: string;
678
+ darkLogo: string;
679
+ placeName: Default;
680
+ placeNameWithPreposition: Default;
681
+ radioLink?: string;
682
+ }
683
+ interface PeriodDescriptor$1 {
684
+ number: number;
685
+ periodType: PeriodType;
686
+ maxRegulationPeriods: number;
687
+ }
688
+ interface Play {
689
+ eventId: number;
690
+ periodDescriptor: PeriodDescriptor$1;
691
+ timeInPeriod: string;
692
+ timeRemaining: string;
693
+ situationCode: string;
694
+ homeTeamDefendingSide: HomeTeamDefendingSide;
695
+ typeCode: number;
696
+ typeDescKey: TypeDescKey;
697
+ sortOrder: number;
698
+ details?: Details;
699
+ pptReplayUrl?: string;
700
+ }
701
+ interface Details {
702
+ eventOwnerTeamId?: number;
703
+ losingPlayerId?: number;
704
+ winningPlayerId?: number;
705
+ xCoord?: number;
706
+ yCoord?: number;
707
+ zoneCode?: ZoneCode;
708
+ blockingPlayerId?: number;
709
+ shootingPlayerId?: number;
710
+ reason?: Reason;
711
+ shotType?: ShotType;
712
+ scoringPlayerId?: number;
713
+ scoringPlayerTotal?: number;
714
+ assist1PlayerId?: number;
715
+ assist1PlayerTotal?: number;
716
+ assist2PlayerId?: number;
717
+ assist2PlayerTotal?: number;
718
+ goalieInNetId?: number;
719
+ awayScore?: number;
720
+ homeScore?: number;
721
+ highlightClipSharingUrl?: string;
722
+ highlightClipSharingUrlFr?: string;
723
+ highlightClip?: number;
724
+ highlightClipFr?: number;
725
+ discreteClip?: number;
726
+ discreteClipFr?: number;
727
+ hittingPlayerId?: number;
728
+ hitteePlayerId?: number;
729
+ playerId?: number;
730
+ awaySOG?: number;
731
+ homeSOG?: number;
732
+ secondaryReason?: Reason;
733
+ typeCode?: PenaltyTypeCode;
734
+ descKey?: PenaltyDescKey;
735
+ duration?: number;
736
+ committedByPlayerId?: number;
737
+ drawnByPlayerId?: number;
738
+ servedByPlayerId?: number;
739
+ }
740
+ type PenaltyDescKey = 'tripping' | 'hooking' | 'interference' | 'high-sticking' | 'roughing' | 'unsportsmanlike-conduct' | 'slashing' | 'delaying-game-puck-over-glass' | 'holding' | 'holding-the-stick' | 'too-many-men-on-the-ice' | 'fighting' | 'minor' | 'cross-checking';
741
+ type Reason = 'blocked' | 'failed-bank-attempt' | 'wide-right' | 'goalie-stopped-after-sog' | 'offside' | 'teammate-blocked' | 'icing' | 'puck-in-netting' | 'wide-left' | 'high-and-wide-left' | 'puck-frozen' | 'above-crossbar' | 'tv-timeout' | 'hand-pass' | 'skater-puck-frozen' | 'high-stick' | 'high-and-wide-right' | 'hit-crossbar' | 'puck-in-benches' | 'hit-right-post' | 'short' | 'referee-or-linesman' | 'puck-in-crowd' | 'hit-left-post' | 'player-equipment' | 'net-dislodged-defensive-skater' | 'home-timeout' | 'chlg-hm-goal-interference' | 'video-review' | 'chlg-league-missed-stoppage' | 'visitor-timeout' | 'official-injury';
742
+ type ShotType = 'wrist' | 'tip-in' | 'slap' | 'snap' | 'deflected' | 'backhand' | 'poke' | 'bat' | 'between-legs' | 'wrap-around';
743
+ type HomeTeamDefendingSide = 'left' | 'right';
744
+ type TypeDescKey = 'period-start' | 'faceoff' | 'blocked-shot' | 'goal' | 'hit' | 'giveaway' | 'missed-shot' | 'shot-on-goal' | 'stoppage' | 'takeaway' | 'penalty' | 'period-end' | 'delayed-penalty' | 'game-end';
745
+ interface RosterSpot {
746
+ teamId: number;
747
+ playerId: number;
748
+ firstName: Default;
749
+ lastName: Default;
750
+ sweaterNumber: number;
751
+ positionCode: Position;
752
+ headshot: string;
753
+ }
754
+ interface Situation {
755
+ homeTeam: Team$3;
756
+ awayTeam: Team$3;
757
+ situationCode: string;
758
+ timeRemaining: string;
759
+ secondsRemaining: number;
760
+ }
761
+ interface Team$3 {
762
+ id: number;
763
+ commonName: Default;
764
+ abbrev: TeamAbbrev;
765
+ score: number;
766
+ sog?: number;
767
+ logo: string;
768
+ darkLogo: string;
769
+ placeName: Default;
770
+ placeNameWithPreposition: Default;
771
+ radioLink?: string;
772
+ }
773
+ interface Team$3 {
774
+ abbrev: TeamAbbrev;
775
+ strength: number;
776
+ situationDescriptions?: string[];
777
+ }
778
+ interface Summary {
779
+ iceSurface?: IceSurface;
780
+ }
781
+ interface IceSurface {
782
+ awayTeam: IceSurfaceAwayTeam;
783
+ homeTeam: IceSurfaceHomeTeam;
784
+ }
785
+ interface IceSurfaceAwayTeam {
786
+ forwards: GoalieElement[];
787
+ defensemen: PenaltyBoxElement[];
788
+ goalies: GoalieElement[];
789
+ penaltyBox: PenaltyBoxElement[];
790
+ }
791
+ interface PenaltyBoxElement {
792
+ playerId: number;
793
+ name: Default;
794
+ sweaterNumber: number;
795
+ positionCode: Position;
796
+ headshot: string;
797
+ totalSOI?: number;
798
+ secondsRemaining?: number;
799
+ }
800
+ interface GoalieElement {
801
+ playerId: number;
802
+ name: Default;
803
+ sweaterNumber: number;
804
+ positionCode: Position;
805
+ headshot: string;
806
+ totalSOI?: number;
807
+ }
808
+ interface IceSurfaceHomeTeam {
809
+ forwards: PurpleForward[];
810
+ defensemen: PurpleDefenseman[];
811
+ goalies: GoalieElement[];
812
+ penaltyBox: PenaltyBoxElement[];
813
+ }
814
+ interface PurpleDefenseman {
815
+ playerId: number;
816
+ name: Default;
817
+ sweaterNumber: number;
818
+ positionCode: ZoneCode;
819
+ headshot: string;
820
+ totalSOI?: number;
821
+ }
822
+ interface PurpleForward {
823
+ playerId: number;
824
+ name: Default;
825
+ sweaterNumber: number;
826
+ positionCode: Position;
827
+ headshot: string;
828
+ totalSOI?: number;
829
+ }
830
+
831
+ interface PlayoffSeriesMeta {
832
+ seriesTitle: string;
833
+ teams: Teams;
834
+ }
835
+ interface Teams {
836
+ topSeed: Seed;
837
+ bottomSeed: Seed;
838
+ }
839
+ interface Seed {
840
+ name: Default;
841
+ commonName: Default;
842
+ tricode: string;
843
+ teamSlug: string;
844
+ }
845
+ interface GameMeta {
846
+ teams: Team$2[];
847
+ seasonStates: SeasonStates;
848
+ gameState: string;
849
+ }
850
+ interface SeasonStates {
851
+ date: string;
852
+ gameType: number;
853
+ season: number;
854
+ }
855
+ interface Team$2 {
856
+ name: Default;
857
+ tricode: string;
858
+ teamId: number;
859
+ teamSlug: string;
860
+ }
861
+
862
+ interface PartnerGameInfo {
863
+ currentOddsDate: string;
864
+ lastUpdatedUTC: string;
865
+ bettingPartner?: BettingPartner;
866
+ games: Game$1[];
867
+ }
868
+ interface BettingPartner {
869
+ partnerId: number;
870
+ country: string;
871
+ name: string;
872
+ imageUrl: string;
873
+ siteUrl: string;
874
+ bgColor: string;
875
+ textColor: string;
876
+ accentColor: string;
877
+ }
878
+ interface Game$1 {
879
+ gameId: number;
880
+ gameType: number;
881
+ startTimeUTC: string;
882
+ homeTeam: Team$1;
883
+ awayTeam: Team$1;
884
+ }
885
+ interface Team$1 {
886
+ id: number;
887
+ name: Default;
888
+ abbrev: string;
889
+ logo: string;
890
+ odds: Odd[];
891
+ }
892
+ interface Odd {
893
+ description: Description;
894
+ value: number;
895
+ qualifier: string;
896
+ }
897
+ type Description = 'MONEY_LINE_2_WAY' | 'OVER_UNDER' | 'PUCK_LINE' | 'MONEY_LINE_3_WAY';
898
+
899
+ type PostalCodeInfo = Array<{
900
+ stateProvince: string;
901
+ networkType?: string;
902
+ county?: string;
903
+ teamName: Default;
904
+ postalCode: string;
905
+ country: string;
906
+ city: string;
907
+ }>;
908
+
628
909
  interface NHLStandings {
629
910
  wildCardIndicator: boolean;
630
911
  standings: TeamStanding[];
@@ -679,7 +960,7 @@ interface TeamStanding {
679
960
  leagueSequence: number;
680
961
  losses: number;
681
962
  otLosses: number;
682
- placeName: DefaultWithTranslations;
963
+ placeName: Default;
683
964
  pointPctg: number;
684
965
  points: number;
685
966
  regulationPlusOtWinPctg: number;
@@ -702,8 +983,8 @@ interface TeamStanding {
702
983
  shootoutWins: number;
703
984
  streakCode: StreakCode;
704
985
  streakCount: number;
705
- teamName: DefaultWithTranslations;
706
- teamCommonName: DefaultWithTranslations;
986
+ teamName: Default;
987
+ teamCommonName: Default;
707
988
  teamAbbrev: Default;
708
989
  teamLogo: string;
709
990
  ties: number;
@@ -748,8 +1029,8 @@ interface TeamProspects {
748
1029
  interface PlayerBase {
749
1030
  id: number;
750
1031
  headshot: string;
751
- firstName: DefaultWithTranslations;
752
- lastName: DefaultWithTranslations;
1032
+ firstName: Default;
1033
+ lastName: Default;
753
1034
  sweaterNumber?: number;
754
1035
  shootsCatches: ShootsCatches;
755
1036
  heightInInches: number;
@@ -757,9 +1038,9 @@ interface PlayerBase {
757
1038
  heightInCentimeters: number;
758
1039
  weightInKilograms: number;
759
1040
  birthDate: string;
760
- birthCity?: DefaultWithTranslations;
761
- birthCountry: CountryTLA;
762
- birthStateProvince?: DefaultWithTranslations;
1041
+ birthCity?: Default;
1042
+ birthCountry: string;
1043
+ birthStateProvince?: Default;
763
1044
  }
764
1045
  interface Defenseman extends PlayerBase {
765
1046
  positionCode: 'D';
@@ -778,12 +1059,29 @@ interface TeamScheduleSeason {
778
1059
  clubUTCOffset: string;
779
1060
  games: Game[];
780
1061
  }
1062
+ interface TeamScheduleMonth {
1063
+ currentMonth: string;
1064
+ nextMonth?: string;
1065
+ calendarUrl?: string;
1066
+ clubTimezone: string;
1067
+ clubUTCOffset: string;
1068
+ games: Game[];
1069
+ previousMonth?: string;
1070
+ }
1071
+ interface TeamScheduleWeek {
1072
+ nextStartDate?: string;
1073
+ calendarUrl?: string;
1074
+ clubTimezone: string;
1075
+ clubUTCOffset: string;
1076
+ games: Game[];
1077
+ previousStartDate?: string;
1078
+ }
781
1079
  interface Game {
782
1080
  id: number;
783
1081
  season: number;
784
1082
  gameType: number;
785
1083
  gameDate: string;
786
- venue: DefaultWithTranslations;
1084
+ venue: Default;
787
1085
  neutralSite: boolean;
788
1086
  startTimeUTC: string;
789
1087
  easternUTCOffset: string;
@@ -797,64 +1095,79 @@ interface Game {
797
1095
  periodDescriptor: PeriodDescriptor;
798
1096
  gameOutcome?: GameOutcome;
799
1097
  winningGoalie?: WinningGoal;
1098
+ gameCenterLink?: string;
1099
+ seriesStatus?: SeriesStatus;
1100
+ seriesUrl?: string;
800
1101
  winningGoalScorer?: WinningGoal;
1102
+ specialEvent?: SpecialEvent;
801
1103
  threeMinRecap?: string;
802
- threeMinRecapFr?: string;
803
1104
  condensedGame?: string;
1105
+ threeMinRecapFr?: string;
804
1106
  condensedGameFr?: string;
805
- gameCenterLink?: string;
806
1107
  ticketsLink?: string;
807
1108
  ticketsLinkFr?: string;
808
- specialEvent?: SpecialEvent;
1109
+ alternateBroadcasts?: AlternateBroadcast[];
809
1110
  }
810
1111
  interface Team {
811
1112
  id: number;
812
- commonName: DefaultWithTranslations;
813
- placeName: DefaultWithTranslations;
814
- placeNameWithPreposition: DefaultWithTranslations;
815
- abbrev: Abbrev;
816
- logo: string;
817
- darkLogo: string;
1113
+ commonName: Default;
1114
+ placeName: Default;
1115
+ placeNameWithPreposition: Default;
1116
+ abbrev: TeamAbbrev;
1117
+ logo?: string;
1118
+ darkLogo?: string;
1119
+ homeSplitSquad?: boolean;
818
1120
  awaySplitSquad?: boolean;
819
1121
  score?: number;
1122
+ radioLink?: string;
820
1123
  airlineLink?: string;
821
1124
  airlineDesc?: string;
822
1125
  hotelLink?: string;
823
1126
  hotelDesc?: string;
824
- radioLink?: string;
825
1127
  promoLink?: string;
826
1128
  promoDesc?: string;
827
- homeSplitSquad?: boolean;
828
1129
  }
829
- type Abbrev = 'ANA' | 'BOS' | 'BUF' | 'CAR' | 'CBJ' | 'CGY' | 'CHI' | 'COL' | 'DAL' | 'DET' | 'EDM' | 'FLA' | 'LAK' | 'MIN' | 'MTL' | 'NJD' | 'NSH' | 'NYI' | 'NYR' | 'OTT' | 'PHI' | 'PIT' | 'SEA' | 'SJS' | 'STL' | 'TBL' | 'TOR' | 'UTA' | 'VAN' | 'VGK' | 'WPG' | 'WSH';
830
1130
  interface GameOutcome {
831
1131
  lastPeriodType: PeriodType;
832
1132
  }
833
- type PeriodType = 'REG' | 'OT' | 'SO';
834
- type GameScheduleState = 'OK' | 'TBD';
835
- type GameState = 'FINAL' | 'OFF' | 'FUT' | 'LIVE';
836
1133
  interface PeriodDescriptor {
1134
+ number?: number;
837
1135
  periodType: PeriodType;
838
1136
  maxRegulationPeriods: number;
1137
+ otPeriods?: number;
839
1138
  }
840
1139
  interface SpecialEvent {
841
1140
  parentId: number;
842
- name: DefaultWithTranslations;
1141
+ name: Default;
1142
+ lightLogoUrl?: Default;
1143
+ }
1144
+ interface SeriesStatus {
1145
+ round: number;
1146
+ seriesAbbrev: string;
1147
+ seriesTitle: string;
1148
+ seriesLetter: SeriesLetter;
1149
+ neededToWin: number;
1150
+ topSeedWins: number;
1151
+ bottomSeedWins: number;
1152
+ gameNumberOfSeries: number;
843
1153
  }
844
1154
  interface TvBroadcast {
845
1155
  id: number;
846
1156
  market: Market;
847
- countryCode: CountryCode$1;
1157
+ countryCode: CountryCode;
848
1158
  network: string;
849
1159
  sequenceNumber: number;
850
1160
  }
851
1161
  interface WinningGoal {
852
1162
  playerId: number;
853
1163
  firstInitial: Default;
854
- lastName: DefaultWithTranslations;
1164
+ lastName: Default;
1165
+ }
1166
+ interface AlternateBroadcast {
1167
+ country: CountryCode;
1168
+ descriptions: Default[];
855
1169
  }
856
1170
 
857
- type GamecenterPlayByPlay = Record<string, unknown>;
858
1171
  type GamecenterReports = Record<string, unknown>;
859
1172
  type GamecenterLanding = Record<string, unknown>;
860
1173
 
@@ -868,18 +1181,14 @@ type PlayoffBracket = Record<string, unknown>;
868
1181
  type PlayoffSeries = Record<string, unknown>;
869
1182
  type PlayoffSeriesSchedule = Record<string, unknown>;
870
1183
  type NHLSeasons = Record<string, unknown>;
871
- type PlayoffSeriesMeta = Record<string, unknown>;
872
- type GameMeta = Record<string, unknown>;
873
- type PostalCodeInfo = Record<string, unknown>;
874
- type LocationInfo = Record<string, unknown>;
875
- type PartnerGameInfo = Record<string, unknown>;
1184
+
1185
+ interface LocationInfo {
1186
+ country: string;
1187
+ }
876
1188
 
877
1189
  type TeamRoster = Record<string, unknown>;
878
1190
  type TeamRosterSeasons = Record<string, unknown>;
879
1191
 
880
- type TeamScheduleMonth = Record<string, unknown>;
881
-
882
- type TeamScheduleWeek = Record<string, unknown>;
883
1192
  type TeamStats = Record<string, unknown>;
884
1193
  type TeamStatsSeason = Record<string, unknown>;
885
1194
  type PlayerLanding = Record<string, unknown>;
@@ -892,30 +1201,53 @@ type NHLScore = Record<string, unknown>;
892
1201
  type NHLScoreboard = Record<string, unknown>;
893
1202
 
894
1203
  /**
895
- * Draft-related API endpoints
1204
+ * @module api/gamecenter/draft
1205
+ * @description Draft-related API endpoints for accessing NHL draft picks, rankings, and tracker information
896
1206
  */
897
1207
 
898
1208
  /**
899
- * Get draft picks for a specific year and round
900
- * @param year - The draft year
901
- * @param round - The draft round
1209
+ * Get draft picks for a specific year and round, or all picks for a year
1210
+ * @param year - The draft year (defaults to current year if not provided)
1211
+ * @param round - The draft round (1-7). If omitted, returns the first round picks for the year
902
1212
  * @returns Promise resolving to draft picks for the specified year and round
1213
+ * @example
1214
+ * ```ts
1215
+ * // Get all draft picks for 2023
1216
+ * picks(2023).then((data) => console.log(data));
1217
+ *
1218
+ * // Get first round picks for 2023
1219
+ * picks(2023, 1).then((data) => console.log(data));
1220
+ * ```
1221
+ */
1222
+ declare function picks(year?: Year, round?: DraftRound): Promise<APIResponse<DraftPicks>>;
1223
+ /**
1224
+ * Get current draft tracker information for live draft coverage
1225
+ * @returns Promise resolving to current draft tracker data, including live pick information
1226
+ * @example
1227
+ * ```ts
1228
+ * tracker().then((data) => console.log(data));
1229
+ * ```
1230
+ */
1231
+ declare function tracker(): Promise<APIResponse<DraftTracker>>;
1232
+ /**
1233
+ * Access draft rankings by category (skaters/goalies, NA/International)
1234
+ * @param year - The draft year (defaults to current year if not provided)
1235
+ * @returns Object with methods to get rankings by category
1236
+ * @example
1237
+ * ```ts
1238
+ * // Get North American skater rankings for 2024
1239
+ * rankings(2024).skatersNA().then((data) => console.log(data));
1240
+ *
1241
+ * // Get all rankings for 2024
1242
+ * rankings(2024).all().then((allRankings) => console.log(allRankings));
1243
+ * ```
903
1244
  */
904
- declare const picks: (year?: Year, round?: DraftRound) => Promise<APIResponse<DraftPicks>>;
905
- /**
906
- * Get current draft tracker information
907
- * @returns Promise resolving to current draft tracker data
908
- */
909
- declare const tracker: () => Promise<APIResponse<DraftTracker>>;
910
- /**
911
- * Access draft rankings related endpoints
912
- */
913
- declare const rankings: (year?: Year) => {
1245
+ declare function rankings(year?: Year): {
914
1246
  skatersNA: () => Promise<APIResponse<DraftRankings>>;
915
1247
  skatersIntl: () => Promise<APIResponse<DraftRankings>>;
916
1248
  goaliesNA: () => Promise<APIResponse<DraftRankings>>;
917
1249
  goaliesIntl: () => Promise<APIResponse<DraftRankings>>;
918
- all: () => Promise<APIResponse<DraftRankings>[]>;
1250
+ all: () => Promise<APIResponse<DraftRankings[]>>;
919
1251
  };
920
1252
 
921
1253
  declare const draft_picks: typeof picks;
@@ -927,96 +1259,197 @@ declare namespace draft {
927
1259
 
928
1260
  /**
929
1261
  * Get play-by-play data for a specific game
930
- * @param gameId - The unique identifier for the game
931
- * @returns Promise resolving to play-by-play data
1262
+ * @param gameId - The unique identifier for the game (10-digit format)
1263
+ * @returns Promise resolving to play-by-play data including all game events
1264
+ * @example
1265
+ * ```ts
1266
+ * playByPlay(2023020001).then((data) => console.log(data));
1267
+ * ```
932
1268
  */
933
- declare const playByPlay: (gameId: string | number) => Promise<APIResponse<GamecenterPlayByPlay>>;
1269
+ declare function playByPlay(gameId: GameId): Promise<APIResponse<GamecenterPlayByPlay>>;
934
1270
  /**
935
- * Get reports data for a specific game
936
- * @param gameId - The unique identifier for the game
937
- * @returns Promise resolving to reports data
1271
+ * Get comprehensive game data including stats, reports, and game information
1272
+ *
1273
+ * Includes:
1274
+ * - **Season Series**: Head-to-head games between the two teams
1275
+ * - **Game Info**: Officials (referees, linesmen), coaches, scratches
1276
+ * - **Game Video**: Recap and condensed game video IDs
1277
+ * - **Line Score**: Period-by-period scoring
1278
+ * - **Shots by Period**: Shot totals for each period
1279
+ * - **Team Game Stats**: SOG, faceoffs, power play, PIM, hits, blocks, giveaways, takeaways
1280
+ * - **Game Reports**: Links to official NHL reports:
1281
+ * - Game Summary
1282
+ * - Event Summary
1283
+ * - Play-by-Play
1284
+ * - Faceoff Summary & Comparison
1285
+ * - Rosters
1286
+ * - Shot Summary
1287
+ * - Shift Chart
1288
+ * - Time on Ice (both teams)
1289
+ *
1290
+ * @param gameId - The unique identifier for the game (10-digit format)
1291
+ * @returns Promise resolving to comprehensive game data with stats, reports, and metadata
938
1292
  * @note The official endpoint name is 'right-rail', as it is used
939
- * to populate the right rail UI component of the NHL website. The
1293
+ * to populate the right rail UI component of the NHL Gamecenter website. The
940
1294
  * function has been renamed to 'reports' for clarity.
1295
+ * @example
1296
+ * ```ts
1297
+ * reports(2023020001).then((data) => console.log(data));
1298
+ * ```
941
1299
  */
942
- declare const reports: (gameId: string | number) => Promise<APIResponse<GamecenterReports>>;
1300
+ declare function reports(gameId: GameId): Promise<APIResponse<GamecenterReports>>;
943
1301
  /**
944
1302
  * Get landing page data for a specific game
945
- * @param gameId - The unique identifier for the game
946
- * @returns Promise resolving to landing page data
1303
+ * @param gameId - The unique identifier for the game (10-digit format)
1304
+ * @returns Promise resolving to landing page data with game summary and key information
1305
+ * @example
1306
+ * ```ts
1307
+ * landing(2023020001).then((data) => console.log(data));
1308
+ * ```
947
1309
  */
948
- declare const landing$1: (gameId: string | number) => Promise<APIResponse<GamecenterLanding>>;
1310
+ declare function landing$1(gameId: GameId): Promise<APIResponse<GamecenterLanding>>;
949
1311
  /**
950
1312
  * Get boxscore data for a specific game
951
- * @param gameId - The unique identifier for the game
952
- * @returns Promise resolving to boxscore data
1313
+ * @param gameId - The unique identifier for the game (10-digit format)
1314
+ * @returns Promise resolving to boxscore data with player stats and game summary
1315
+ * @example
1316
+ * ```ts
1317
+ * boxscore(2023020001).then((data) => console.log(data));
1318
+ * ```
953
1319
  */
954
- declare const boxscore: (gameId: string | number) => Promise<APIResponse<GamecenterBoxscore>>;
955
- declare const wsc: {
956
- /**
957
- * Get game story data for a specific game
958
- * @param gameId - The unique identifier for the game
959
- * @returns Promise resolving to game story data
960
- */
961
- gameStory: (gameId: number | string) => Promise<APIResponse<WSCGameStory>>;
962
- /**
963
- * Get play-by-play data for a specific game
964
- * @param gameId - The unique identifier for the game
965
- * @returns Promise resolving to play-by-play data
966
- */
967
- playByPlay: (gameId: number | string) => Promise<APIResponse<WSCPlayByPlay>>;
968
- };
1320
+ declare function boxscore(gameId: GameId): Promise<APIResponse<GamecenterBoxscore>>;
969
1321
  /**
970
- * Access PPT replay related endpoints
1322
+ * Access WSC Sports related game content endpoints
1323
+ * @description Alternative data source for game information
971
1324
  */
972
- declare const pptReplay: {
973
- /**
974
- * Get goal replay data for a specific game and event
975
- * @param gameId - The unique identifier for the game
976
- * @param eventId - The unique identifier for the event
977
- * @returns Promise resolving to goal replay data
978
- */
979
- goal: (gameId: number | string, eventId: number | string) => Promise<APIResponse<PPTReplayGoal>>;
980
- /**
981
- * Get event replay data for a specific date
982
- * @param date - Date to get event replay data for (Date object or ISO date string)
983
- * @returns Promise resolving to event replay data
984
- */
985
- event: (date: Date | string) => Promise<APIResponse<PPTReplayEvent>>;
1325
+ declare const wsc: {
1326
+ gameStory: typeof wscGameStory;
1327
+ playByPlay: typeof wscPlayByPlay;
986
1328
  };
987
1329
  /**
988
- * Access schedule related endpoints
989
- */
990
- declare const schedule$1: (date?: Date | string) => Promise<APIResponse<LeagueSchedule>>;
991
- /**
992
- * Access schedule calendar related endpoints
1330
+ * Get game story data for a specific game
1331
+ * @param gameId - The unique identifier for the game (10-digit format)
1332
+ * @returns Promise resolving to game story data with narrative content
1333
+ * @example
1334
+ * ```ts
1335
+ * wsc.gameStory(2023020001).then((data) => console.log(data));
1336
+ * ```
993
1337
  */
994
- declare const scheduleCalendar: (date?: Date | string) => Promise<APIResponse<ScheduleCalendar>>;
1338
+ declare function wscGameStory(gameId: GameId): Promise<APIResponse<WSCGameStory>>;
995
1339
  /**
996
- * Access playoff bracket related endpoints
1340
+ * Get WSC play-by-play data for a specific game
1341
+ * @param gameId - The unique identifier for the game (10-digit format)
1342
+ * @returns Promise resolving to play-by-play data from WSC source
1343
+ * @example
1344
+ * ```ts
1345
+ * wsc.playByPlay(2023020001).then((data) => console.log(data));
1346
+ * ```
997
1347
  */
998
- declare const playoffBracket: (year?: string) => Promise<APIResponse<PlayoffBracket>>;
1348
+ declare function wscPlayByPlay(gameId: GameId): Promise<APIResponse<WSCPlayByPlay>>;
999
1349
  /**
1000
- * Access playoff series related endpoints
1001
- */
1002
- declare const playoffSeries: (season?: string) => Promise<APIResponse<PlayoffSeries>>;
1003
- /**
1004
- * Access playoff series schedule related endpoints
1005
- */
1006
- declare const playoffSeriesSchedule: (seriesLetter: string, season?: string) => Promise<APIResponse<PlayoffSeriesSchedule>>;
1007
- /**
1008
- * Access where-to-watch related endpoints
1009
- */
1010
- declare const whereToWatch: () => Promise<APIResponse<WhereToWatch>>;
1011
- /**
1012
- * Access network related endpoints
1350
+ * Access PPT (Player and Puck Tracking) visualization data endpoints
1351
+ * @description Endpoints for accessing player and puck tracking data used for replay visualizations
1013
1352
  */
1353
+ declare const pptReplay: {
1354
+ goal: typeof pptReplayGoal;
1355
+ event: typeof pptReplayEvent;
1356
+ };
1014
1357
  /**
1015
- * Get TV schedule data for a specific date
1016
- * @param date - Date to get TV schedule data for (optional)
1017
- * @returns Promise resolving to TV schedule data
1018
- */
1019
- declare const networkTVSchedule: (date?: Date | string) => Promise<APIResponse<NetworkTVSchedule>>;
1358
+ * Get player and puck tracking visualization data for a specific goal event
1359
+ * @param gameId - The unique identifier for the game (10-digit format)
1360
+ * @param eventId - The unique identifier for the goal event
1361
+ * @returns Promise resolving to tracking data used for goal replay visualization
1362
+ * @example
1363
+ * ```ts
1364
+ * pptReplay.goal(2023020001, 42).then((data) => console.log(data));
1365
+ * ```
1366
+ */
1367
+ declare function pptReplayGoal(gameId: GameId, eventId: number | string): Promise<APIResponse<PPTReplayGoal>>;
1368
+ /**
1369
+ * Get player and puck tracking visualization data for a specific event
1370
+ * @param gameId - The unique identifier for the game (10-digit format)
1371
+ * @param eventId - The unique identifier for the event
1372
+ * @returns Promise resolving to tracking data used for event replay visualization
1373
+ * @example
1374
+ * ```ts
1375
+ * pptReplay.event(2023020001, 42).then((data) => console.log(data));
1376
+ * ```
1377
+ */
1378
+ declare function pptReplayEvent(gameId: GameId, eventId: number | string): Promise<APIResponse<PPTReplayEvent>>;
1379
+ /**
1380
+ * Get the league schedule for a specific date
1381
+ * @param date - Date to get schedule for (Date object or ISO date string 'YYYY-MM-DD'). Defaults to current date
1382
+ * @returns Promise resolving to league-wide schedule data for the specified date
1383
+ * @example
1384
+ * ```ts
1385
+ * // Get today's schedule
1386
+ * schedule().then((data) => console.log(data));
1387
+ *
1388
+ * // Get schedule for a specific date
1389
+ * schedule('2023-11-15').then((data) => console.log(data));
1390
+ * ```
1391
+ */
1392
+ declare function schedule$1(date?: Date | string): Promise<APIResponse<LeagueSchedule>>;
1393
+ /**
1394
+ * Get schedule calendar data for a specific date
1395
+ * @param date - Date to get calendar data for (Date object or ISO date string 'YYYY-MM-DD'). Defaults to current date
1396
+ * @returns Promise resolving to schedule calendar data showing game availability
1397
+ * @example
1398
+ * ```ts
1399
+ * scheduleCalendar('2023-11-15').then((data) => console.log(data));
1400
+ * ```
1401
+ */
1402
+ declare function scheduleCalendar(date?: Date | string): Promise<APIResponse<ScheduleCalendar>>;
1403
+ /**
1404
+ * Get playoff bracket data for a specific year
1405
+ * @param year - The playoff year (YYYY format). Defaults to current year
1406
+ * @returns Promise resolving to playoff bracket structure with all series
1407
+ * @example
1408
+ * ```ts
1409
+ * playoffBracket(2023).then((data) => console.log(data));
1410
+ * ```
1411
+ */
1412
+ declare function playoffBracket(year?: Year): Promise<APIResponse<PlayoffBracket>>;
1413
+ /**
1414
+ * Get playoff series information for a season
1415
+ * @param season - The season identifier (8-digit format: YYYYYYYY, e.g., 20232024). Defaults to current season
1416
+ * @returns Promise resolving to all playoff series data for the season
1417
+ * @example
1418
+ * ```ts
1419
+ * playoffSeries(20232024).then((data) => console.log(data));
1420
+ * ```
1421
+ */
1422
+ declare function playoffSeries(season?: Season): Promise<APIResponse<PlayoffSeries>>;
1423
+ /**
1424
+ * Get schedule for a specific playoff series
1425
+ * @param seriesLetter - Single letter identifier for the playoff series (A-O)
1426
+ * @param season - The season identifier (8-digit format: YYYYYYYY). Defaults to current season
1427
+ * @returns Promise resolving to schedule for the specified playoff series
1428
+ * @example
1429
+ * ```ts
1430
+ * playoffSeriesSchedule('A', 20232024).then((data) => console.log(data));
1431
+ * ```
1432
+ */
1433
+ declare function playoffSeriesSchedule(seriesLetter: SeriesLetter, season?: Season): Promise<APIResponse<PlayoffSeriesSchedule>>;
1434
+ /**
1435
+ * Get information about where games are available to watch
1436
+ * @returns Promise resolving to streaming and broadcast availability information
1437
+ * @example
1438
+ * ```ts
1439
+ * whereToWatch().then((data) => console.log(data));
1440
+ * ```
1441
+ */
1442
+ declare function whereToWatch(): Promise<APIResponse<WhereToWatch>>;
1443
+ /**
1444
+ * Get TV network schedule for a specific date
1445
+ * @param date - Date to get TV schedule for (Date object or ISO date string 'YYYY-MM-DD'). Defaults to current date
1446
+ * @returns Promise resolving to TV schedule data with network broadcast information
1447
+ * @example
1448
+ * ```ts
1449
+ * networkTVSchedule('2023-11-15').then((data) => console.log(data));
1450
+ * ```
1451
+ */
1452
+ declare function networkTVSchedule(date?: Date | string): Promise<APIResponse<NetworkTVSchedule>>;
1020
1453
 
1021
1454
  declare const game_boxscore: typeof boxscore;
1022
1455
  declare const game_networkTVSchedule: typeof networkTVSchedule;
@@ -1034,49 +1467,84 @@ declare namespace game {
1034
1467
  }
1035
1468
 
1036
1469
  /**
1037
- * @module api/misc
1038
- * @description Miscellaneous NHL API endpoints for meta information, location data, and other utility functions
1470
+ * @module api/gamecenter/misc
1471
+ * @description Miscellaneous NHL API endpoints for meta information, location data, and utility functions
1039
1472
  */
1040
1473
 
1041
- declare const seasons: () => Promise<APIResponse<NHLSeasons>>;
1474
+ /**
1475
+ * Get list of all valid NHL seasons
1476
+ * @returns Promise resolving to array of all NHL seasons
1477
+ * @example
1478
+ * ```ts
1479
+ * seasons().then((data) => console.log(data));
1480
+ * ```
1481
+ */
1482
+ declare function seasons(): Promise<APIResponse<NHLSeasons>>;
1483
+ /**
1484
+ * Access meta information endpoints
1485
+ * @description Get metadata about playoff series and games
1486
+ */
1042
1487
  declare const meta: {
1043
- /**
1044
- * Get meta information for a playoff series
1045
- *
1046
- * @param year - The year in YYYY format
1047
- * @param seriesLetter - Single letter identifier for the playoff series
1048
- * @returns Promise resolving to playoff series meta information
1049
- */
1050
- playoffSeries: (seriesLetter: string, year?: number | string) => Promise<APIResponse<PlayoffSeriesMeta>>;
1051
- /**
1052
- * Get meta information for a specific game
1053
- *
1054
- * @param gameId - The unique game identifier
1055
- * @returns Promise resolving to game meta information
1056
- */
1057
- game: (gameId: string | number) => Promise<APIResponse<GameMeta>>;
1488
+ game: typeof metaGame;
1489
+ playoffSeries: typeof metaPlayoffSeries;
1058
1490
  };
1059
1491
  /**
1060
- * Lookup information based on postal code
1492
+ * Get meta information for a specific game
1061
1493
  *
1062
- * @param postalCode - The postal/zip code to lookup
1063
- * @returns Promise resolving to postal code information
1494
+ * @param gameId - The unique game identifier (10-digit format)
1495
+ * @returns Promise resolving to game meta information
1496
+ * @example
1497
+ * ```ts
1498
+ * meta.game(2023020001).then((data) => console.log(data));
1499
+ * ```
1064
1500
  */
1065
- declare const postalLookup: (postalCode: string) => Promise<APIResponse<PostalCodeInfo>>;
1501
+ declare function metaGame(gameId: GameId): Promise<APIResponse<GameMeta>>;
1066
1502
  /**
1067
- * Get location information
1503
+ * Get meta information for a playoff series
1504
+ *
1505
+ * @param seriesLetter - Single letter identifier for the playoff series (A-O)
1506
+ * @param year - The year in YYYY format. Defaults to current year
1507
+ * @returns Promise resolving to playoff series meta information
1508
+ * @example
1509
+ * ```ts
1510
+ * meta.playoffSeries('A', 2023).then((data) => console.log(data));
1511
+ * ```
1512
+ */
1513
+ declare function metaPlayoffSeries(seriesLetter: SeriesLetter, year?: Year): Promise<APIResponse<PlayoffSeriesMeta>>;
1514
+ /**
1515
+ * Lookup information based on postal/zip code
1516
+ *
1517
+ * @param postalCode - The postal/zip code to lookup (US or Canadian format)
1518
+ * @returns Promise resolving to location information including lat/long coordinates
1519
+ * @example
1520
+ * ```ts
1521
+ * postalLookup('10001').then((data) => console.log(data)); // US zip
1522
+ * postalLookup('M5H 2N2').then((data) => console.log(data)); // Canadian postal
1523
+ * ```
1524
+ */
1525
+ declare function postalLookup(postalCode: PostalCode): Promise<APIResponse<PostalCodeInfo>>;
1526
+ /**
1527
+ * Get location information based on IP address
1068
1528
  *
1069
1529
  * @returns Promise resolving to the location determined by the API
1070
- * (assumed to be based on the user's IP address)
1530
+ * (based on the user's IP address)
1531
+ * @example
1532
+ * ```ts
1533
+ * location().then((data) => console.log(data));
1534
+ * ```
1071
1535
  */
1072
- declare const location: () => Promise<APIResponse<LocationInfo>>;
1536
+ declare function location(): Promise<APIResponse<LocationInfo>>;
1073
1537
  /**
1074
1538
  * Get partner game information for a specific country
1075
1539
  *
1076
- * @param countryCode - The two-letter country code (e.g. 'ca', 'se', 'cz', etc.)
1077
- * @returns Promise resolving to partner game information
1078
- */
1079
- declare const partnerGame: (countryCode: string) => Promise<APIResponse<PartnerGameInfo>>;
1540
+ * @param countryCode - The three-letter country code (e.g., 'USA', 'CAN', 'SWE')
1541
+ * @returns Promise resolving to partner game information for the country
1542
+ * @example
1543
+ * ```ts
1544
+ * partnerGame('USA').then((data) => console.log(data));
1545
+ * ```
1546
+ */
1547
+ declare function partnerGame(countryCode: CountryCode$1): Promise<APIResponse<PartnerGameInfo>>;
1080
1548
 
1081
1549
  declare const misc_location: typeof location;
1082
1550
  declare const misc_meta: typeof meta;
@@ -1088,37 +1556,81 @@ declare namespace misc {
1088
1556
  }
1089
1557
 
1090
1558
  /**
1091
- *
1559
+ * @module api/gamecenter/player
1560
+ * @description Player-related API endpoints for player information, stats, game logs, and search
1092
1561
  */
1093
1562
 
1094
1563
  /**
1095
- * Get player landing information
1096
- * @param playerId - The unique player identifier
1097
- * @returns Promise resolving to player landing information
1098
- */
1099
- declare const landing: (playerId: number | string) => Promise<APIResponse<PlayerLanding>>;
1100
- declare const gameLog: (playerId: number | string, season?: number | string, gameType?: number | string) => Promise<APIResponse<PlayerGameLog>>;
1101
- declare const spotlight: () => Promise<APIResponse<PlayerSpotlight>>;
1102
- declare const search: (query: string) => Promise<APIResponse<PlayerSearchResult>>;
1103
- /**
1104
- * Access stats leaders related endpoints
1564
+ * Get player landing page information
1565
+ * @param playerId - The unique player identifier (NHL player ID number)
1566
+ * @returns Promise resolving to player landing information with career stats and bio
1567
+ * @example
1568
+ * ```ts
1569
+ * landing(8478402).then((data) => console.log(data)); // Connor McDavid
1570
+ * ```
1571
+ */
1572
+ declare function landing(playerId: number | string): Promise<APIResponse<PlayerLanding>>;
1573
+ /**
1574
+ * Get player game log for a specific season
1575
+ * @param playerId - The unique player identifier (NHL player ID number)
1576
+ * @param season - The season identifier (8-digit format: YYYYYYYY). Defaults to current season
1577
+ * @param gameType - The game type (2 = regular season, 3 = playoffs). Defaults to regular season
1578
+ * @returns Promise resolving to player game-by-game statistics
1579
+ * @example
1580
+ * ```ts
1581
+ * gameLog(8478402, 20232024, 2).then((data) => console.log(data));
1582
+ * ```
1583
+ */
1584
+ declare function gameLog(playerId: number | string, season?: Season, gameType?: GameType): Promise<APIResponse<PlayerGameLog>>;
1585
+ /**
1586
+ * Get player spotlight featuring highlighted players
1587
+ * @returns Promise resolving to featured/spotlight players
1588
+ * @example
1589
+ * ```ts
1590
+ * spotlight().then((data) => console.log(data));
1591
+ * ```
1592
+ */
1593
+ declare function spotlight(): Promise<APIResponse<PlayerSpotlight>>;
1594
+ /**
1595
+ * Search for players by name
1596
+ * @param query - The search query string (player name)
1597
+ * @returns Promise resolving to player search results
1598
+ * @example
1599
+ * ```ts
1600
+ * search('McDavid').then((data) => console.log(data));
1601
+ * ```
1602
+ */
1603
+ declare function search(query: string): Promise<APIResponse<PlayerSearchResult>>;
1604
+ /**
1605
+ * Access stats leaders endpoints for skaters and goalies
1606
+ * @description Get statistical leaders across various categories
1105
1607
  */
1106
1608
  declare const statsLeaders: {
1107
- /**
1108
- * Get skater stats leaders
1109
- * @param season - The season identifier (optional)
1110
- * @param gameType - The game type identifier (optional)
1111
- * @returns Promise resolving to skater stats leaders
1112
- */
1113
- skaters: (season?: number | string, gameType?: number | string) => Promise<APIResponse<SkaterStatsLeaders>>;
1114
- /**
1115
- * Get goalie stats leaders
1116
- * @param season - The season identifier (optional)
1117
- * @param gameType - The game type identifier (optional)
1118
- * @returns Promise resolving to goalie stats leaders
1119
- */
1120
- goalies: (season?: number | string, gameType?: number | string) => Promise<APIResponse<GoalieStatsLeaders>>;
1609
+ skaters: typeof statsLeadersSkaters;
1610
+ goalies: typeof statsLeadersGoalies;
1121
1611
  };
1612
+ /**
1613
+ * Get skater stats leaders
1614
+ * @param season - The season identifier (8-digit format: YYYYYYYY). Defaults to current season
1615
+ * @param gameType - The game type (2 = regular season, 3 = playoffs). Defaults to regular season
1616
+ * @returns Promise resolving to skater statistical leaders
1617
+ * @example
1618
+ * ```ts
1619
+ * statsLeaders.skaters(20232024, 2).then((data) => console.log(data));
1620
+ * ```
1621
+ */
1622
+ declare function statsLeadersSkaters(season?: Season, gameType?: GameType): Promise<APIResponse<SkaterStatsLeaders>>;
1623
+ /**
1624
+ * Get goalie stats leaders
1625
+ * @param season - The season identifier (8-digit format: YYYYYYYY). Defaults to current season
1626
+ * @param gameType - The game type (2 = regular season, 3 = playoffs). Defaults to regular season
1627
+ * @returns Promise resolving to goalie statistical leaders
1628
+ * @example
1629
+ * ```ts
1630
+ * statsLeaders.goalies(20232024, 2).then((data) => console.log(data));
1631
+ * ```
1632
+ */
1633
+ declare function statsLeadersGoalies(season?: Season, gameType?: GameType): Promise<APIResponse<GoalieStatsLeaders>>;
1122
1634
 
1123
1635
  declare const player_gameLog: typeof gameLog;
1124
1636
  declare const player_landing: typeof landing;
@@ -1129,120 +1641,183 @@ declare namespace player {
1129
1641
  export { player_gameLog as gameLog, player_landing as landing, player_search as search, player_spotlight as spotlight, player_statsLeaders as statsLeaders };
1130
1642
  }
1131
1643
 
1132
- /**
1133
- * Access score related endpoints
1134
- */
1135
1644
  /**
1136
1645
  * Get scores for a specific date
1137
- * @param date - Date to get scores for (Date object or ISO date string)
1138
- * @returns Promise resolving to scores for the specified date
1139
- */
1140
- declare const score: (date?: Date | string) => Promise<APIResponse<NHLScore>>;
1141
- /**
1142
- * Access scoreboard related endpoints
1143
- */
1144
- declare const scoreboard: {
1145
- (): Promise<APIResponse<NHLScoreboard>>;
1146
- team(team: TeamAbbrev): Promise<APIResponse<NHLScoreboard>>;
1147
- date(date: Date | string): Promise<APIResponse<NHLScoreboard>>;
1148
- };
1646
+ * @param date - Date to get scores for (Date object or ISO date string 'YYYY-MM-DD'). Defaults to current date
1647
+ * @returns Promise resolving to all game scores for the specified date
1648
+ * @example
1649
+ * ```ts
1650
+ * // Get today's scores
1651
+ * score().then((data) => console.log(data));
1652
+ *
1653
+ * // Get scores for a specific date
1654
+ * score('2023-11-15').then((data) => console.log(data));
1655
+ * ```
1656
+ */
1657
+ declare function score(date?: Date | string): Promise<APIResponse<NHLScore>>;
1658
+ /**
1659
+ * Get current scoreboard information
1660
+ * @returns Promise resolving to current scoreboard with live and recent game data
1661
+ * @example
1662
+ * ```ts
1663
+ * scoreboard().then((data) => console.log(data));
1664
+ * ```
1665
+ */
1666
+ declare function scoreboard(): Promise<APIResponse<NHLScoreboard>>;
1667
+ declare namespace scoreboard {
1668
+ var team: (team: TeamAbbrev) => Promise<APIResponse<NHLScoreboard>>;
1669
+ var date: (date: Date | string) => Promise<APIResponse<NHLScoreboard>>;
1670
+ }
1149
1671
 
1150
1672
  /**
1151
- * Access roster seasons related endpoints
1152
- */
1153
- declare const rosterSeasons: (team: string) => Promise<APIResponse<TeamRosterSeasons>>;
1154
- /**
1155
- * Access roster related endpoints
1156
- */
1157
- declare const roster: (team: string, season?: string | number) => Promise<APIResponse<TeamRoster>>;
1158
- /**
1159
- * Access prospects related endpoints
1160
- */
1161
- declare const prospects: (team: string) => Promise<APIResponse<TeamProspects>>;
1162
- /**
1163
- * Access club stats related endpoints
1164
- */
1165
- declare const clubStats: (team: string, season?: string | number, gameType?: string | number) => Promise<APIResponse<TeamStats>>;
1166
- /**
1167
- * Access club stats season related endpoints
1168
- */
1169
- declare const clubStatsSeason: (team: string) => Promise<APIResponse<TeamStatsSeason>>;
1170
- /**
1171
- * Access standings related endpoints
1172
- */
1173
- declare const standings: (date?: Date | string) => Promise<APIResponse<NHLStandings>>;
1174
- /**
1175
- * Access standings season related endpoints
1673
+ * Get available roster seasons for a team
1674
+ * @param team - The team abbreviation (e.g., 'TOR', 'MTL', 'NYR')
1675
+ * @returns Promise resolving to list of seasons with roster data available
1676
+ * @example
1677
+ * ```ts
1678
+ * rosterSeasons('TOR').then((data) => console.log(data));
1679
+ * ```
1680
+ */
1681
+ declare function rosterSeasons(team: TeamAbbrev): Promise<APIResponse<TeamRosterSeasons>>;
1682
+ /**
1683
+ * Get team roster for a specific season
1684
+ * @param team - The team abbreviation (e.g., 'TOR', 'MTL', 'NYR')
1685
+ * @param season - The season identifier (8-digit format: YYYYYYYY). Defaults to current season
1686
+ * @returns Promise resolving to team roster with player information
1687
+ * @example
1688
+ * ```ts
1689
+ * roster('TOR', 20232024).then((data) => console.log(data));
1690
+ * ```
1691
+ */
1692
+ declare function roster(team: string, season?: string | number): Promise<APIResponse<TeamRoster>>;
1693
+ /**
1694
+ * Get team prospects information
1695
+ * @param team - The team abbreviation (e.g., 'TOR', 'MTL', 'NYR')
1696
+ * @returns Promise resolving to team prospects and draft picks
1697
+ * @example
1698
+ * ```ts
1699
+ * prospects('TOR').then((data) => console.log(data));
1700
+ * ```
1701
+ */
1702
+ declare function prospects(team: TeamAbbrev): Promise<APIResponse<TeamProspects>>;
1703
+ /**
1704
+ * Get team statistics for a specific season
1705
+ * @param team - The team abbreviation (e.g., 'TOR', 'MTL', 'NYR')
1706
+ * @param season - The season identifier (8-digit format: YYYYYYYY). Defaults to current season
1707
+ * @param gameType - The game type ('REG' or 2, 'POST' or 3, etc.). Defaults to regular season
1708
+ * @returns Promise resolving to team statistics
1709
+ * @example
1710
+ * ```ts
1711
+ * stats('TOR', 20232024, 'REG').then((data) => console.log(data));
1712
+ * ```
1713
+ */
1714
+ declare function stats(team: TeamAbbrev, season?: Season, gameType?: GameType): Promise<APIResponse<TeamStats>>;
1715
+ /**
1716
+ * Get valid season and game type options for a team's statistics
1717
+ * @param team - The team abbreviation (e.g., 'TOR', 'MTL', 'NYR')
1718
+ * @returns Promise resolving to available season and game type combinations for the team.
1719
+ * Only includes seasons and game types where the team actually played (e.g., excludes playoff game types
1720
+ * for seasons where the team didn't make the playoffs)
1721
+ * @example
1722
+ * ```ts
1723
+ * statsSeason('TOR').then((data) => console.log(data));
1724
+ * ```
1725
+ */
1726
+ declare function statsSeason(team: TeamAbbrev): Promise<APIResponse<TeamStatsSeason>>;
1727
+ /**
1728
+ * Get league standings for a specific date
1729
+ * @param date - Date to get standings for (Date object or ISO date string 'YYYY-MM-DD'). Defaults to current date
1730
+ * @returns Promise resolving to league standings
1731
+ * @example
1732
+ * ```ts
1733
+ * standings('2023-11-15').then((data) => console.log(data));
1734
+ * ```
1735
+ */
1736
+ declare function standings(date?: Date | string): Promise<APIResponse<NHLStandings>>;
1737
+ /**
1738
+ * Get current season standings information
1739
+ * @returns Promise resolving to current season standings with detailed team records
1740
+ * @example
1741
+ * ```ts
1742
+ * standingsSeason().then((data) => console.log(data));
1743
+ * ```
1744
+ */
1745
+ declare function standingsSeason(): Promise<APIResponse<NHLStandingsSeason>>;
1746
+ /**
1747
+ * Get the team schedule for any seven-day period
1748
+ * @param team - The team abbreviation (e.g., 'TOR', 'MTL', 'NYR')
1749
+ * @param date - The date indicating the start of the seven-day period (Date object or ISO date string 'YYYY-MM-DD').
1750
+ * Defaults to current date
1751
+ * @returns A promise that resolves to the club schedule for the specified week
1752
+ *
1753
+ * @example
1754
+ * ```ts
1755
+ * // Get the schedule for the Chicago Blackhawks for the week of November 4, 2023
1756
+ * // This returns the schedule from November 4 to November 10, 2023
1757
+ * gc.team.schedule.week('CHI', '2023-11-04').then((data) => {
1758
+ * console.log(data);
1759
+ * });
1760
+ * ```
1761
+ */
1762
+ declare function scheduleWeek(team: TeamAbbrev, date?: Date | string): Promise<APIResponse<TeamScheduleWeek>>;
1763
+ declare function scheduleWeek(team: string, date?: Date | string): Promise<APIResponse<TeamScheduleWeek>>;
1764
+ /**
1765
+ * Get the team schedule for any month
1766
+ * @param team - The team abbreviation (e.g., 'TOR', 'MTL', 'NYR')
1767
+ * @param date - The date indicating the month to get the schedule for (ISO date string 'YYYY-MM').
1768
+ * Defaults to current month
1769
+ * @returns A promise that resolves to the club schedule for the specified month
1770
+ *
1771
+ * @example
1772
+ * ```ts
1773
+ * // Get the schedule for the Toronto Maple Leafs for November 2023
1774
+ * gc.team.schedule.month('TOR', '2023-11').then((data) => {
1775
+ * console.log(data);
1776
+ * });
1777
+ * ```
1778
+ */
1779
+ declare function scheduleMonth(team: TeamAbbrev, date?: Date | string): Promise<APIResponse<TeamScheduleMonth>>;
1780
+ declare function scheduleMonth(team: string, date?: Date | string): Promise<APIResponse<TeamScheduleMonth>>;
1781
+ /**
1782
+ * Returns the full season schedule for the provided team and season
1783
+ * @param team - The team abbreviation for the desired team (e.g., 'TOR', 'MTL', 'NYR')
1784
+ * @param season - The specific season (8-digit format: YYYYYYYY, e.g., 20232024). Defaults to current season
1785
+ * @returns A promise that resolves to the full season schedule for the specified team and season
1786
+ * @example
1787
+ * ```ts
1788
+ * // Get the full season schedule for the Boston Bruins for the 2022-2023 season
1789
+ * gc.team.schedule.season('BOS', 20222023).then((data) => {
1790
+ * console.log(data);
1791
+ * });
1792
+ * ```
1793
+ */
1794
+ declare function scheduleSeason(team: TeamAbbrev, season?: Season): Promise<APIResponse<TeamScheduleSeason>>;
1795
+ declare function scheduleSeason(team: string, season?: Season): Promise<APIResponse<TeamScheduleSeason>>;
1796
+ /**
1797
+ * Access team schedule endpoints for different time periods
1798
+ * @description Get team schedules by season, week, or month
1176
1799
  */
1177
- declare const standingsSeason: () => Promise<APIResponse<NHLStandingsSeason>>;
1178
1800
  declare const schedule: {
1179
- /** Returns the full season schedule for the provided team and season
1180
- * @param team - The team abbreviation for the desired team
1181
- * @param season - The specific season (e.g. 20222023); if not provided, defaults to the current season.
1182
- * @returns A promise that resolves to the full season schedule for the specified team and season
1183
- * @example
1184
- * ```ts
1185
- * // Get the full season schedule for the Boston Bruins for the 2022-2023 season
1186
- * schedule.season('BOS', 20222023).then((data) => {
1187
- * console.log(data);
1188
- * });
1189
- * ```
1190
- */
1191
- season: (team: string, season?: number) => Promise<APIResponse<TeamScheduleSeason>>;
1192
- /**
1193
- * Get the team schedule for any seven-day period
1194
- * @param team - The team abbreviation
1195
- * @param date - The date indicating the start of the seven-day period.
1196
- * If not provided, defaults to the current date. format: 'YYYY-MM'
1197
- * @returns A promise that resolves to the club schedule for the specified week
1198
- *
1199
- * @example
1200
- * ```ts
1201
- * import { schedule } from 'nhle-api';
1202
- *
1203
- * // Get the schedule for the Chicago Blackhawks for the week of November 4, 2023
1204
- * // This returns the schedule from November 4 to November 10, 2023
1205
- * schedule.week('CHI', '2023-11-04').then((data) => {
1206
- * console.log(data);
1207
- * });
1208
- * ```
1209
- */
1210
- week: (team: string, date?: Date | string) => Promise<APIResponse<TeamScheduleWeek>>;
1211
- /**
1212
- * Get the team schedule for any month
1213
- * @param team - The team abbreviation
1214
- * @param date - The date indicating the month to get the schedule for.
1215
- * If not provided, defaults to the current month. format: 'YYYY-MM'
1216
- * @returns A promise that resolves to the club schedule for the specified month
1217
- *
1218
- * @example
1219
- * ```ts
1220
- * import { schedule } from 'nhle-api';
1221
- *
1222
- * // Get the schedule for the Toronto Maple Leafs for November 2023
1223
- * schedule.month('TOR', '2023-11').then((data) => {
1224
- * console.log(data);
1225
- * });
1226
- * ```
1227
- */
1228
- month: (team: string, date?: NHLMonth) => Promise<APIResponse<TeamScheduleMonth>>;
1801
+ season: typeof scheduleSeason;
1802
+ week: typeof scheduleWeek;
1803
+ month: typeof scheduleMonth;
1229
1804
  };
1230
1805
 
1231
- declare const team_clubStats: typeof clubStats;
1232
- declare const team_clubStatsSeason: typeof clubStatsSeason;
1233
1806
  declare const team_prospects: typeof prospects;
1234
1807
  declare const team_roster: typeof roster;
1235
1808
  declare const team_rosterSeasons: typeof rosterSeasons;
1236
1809
  declare const team_schedule: typeof schedule;
1237
1810
  declare const team_standings: typeof standings;
1238
1811
  declare const team_standingsSeason: typeof standingsSeason;
1812
+ declare const team_stats: typeof stats;
1813
+ declare const team_statsSeason: typeof statsSeason;
1239
1814
  declare namespace team {
1240
- export { team_clubStats as clubStats, team_clubStatsSeason as clubStatsSeason, team_prospects as prospects, team_roster as roster, team_rosterSeasons as rosterSeasons, team_schedule as schedule, team_standings as standings, team_standingsSeason as standingsSeason };
1815
+ export { team_prospects as prospects, team_roster as roster, team_rosterSeasons as rosterSeasons, team_schedule as schedule, team_standings as standings, team_standingsSeason as standingsSeason, team_stats as stats, team_statsSeason as statsSeason };
1241
1816
  }
1242
1817
 
1243
1818
  /**
1244
- * NHL API Endpoints
1245
- * This file re-exports all the API endpoint functions
1819
+ * Game Center API exports
1820
+ * NHL Game Center API endpoints for accessing game, player, team, draft, and miscellaneous information
1246
1821
  */
1247
1822
 
1248
1823
  declare const index_draft: typeof draft;
@@ -1620,4 +2195,4 @@ declare const EDGE: {
1620
2195
  };
1621
2196
  };
1622
2197
 
1623
- export { type AmateurLeague, type BirthCountry, type Broadcast, type Category, type CountryCode$2 as CountryCode, type DraftPicks, type DraftRankings, type DraftRound, type DraftTracker, EDGE, type EventId, type GameId, type GameMeta, type GameNumber, type GameState$2 as GameState, type GameType, type GamecenterBoxscore, type GamecenterLanding, type GamecenterPlayByPlay, type GamecenterReports, type GoalieStatsLeaders, type Key, type LeagueSchedule, type LocationInfo, nhl as NHL, type NHLDate, type NHLMonth, type NHLScore, type NHLScoreboard, type NHLSeasons, type NHLStandings, type NHLStandingsSeason, type Name$1 as Name, type NetworkTVSchedule, type PPTReplayEvent, type PPTReplayGoal, type PartnerGameInfo, type PlayerGameLog, type PlayerId, type PlayerLanding, type PlayerSearchResult, type PlayerSpotlight, type PlayoffBracket, type PlayoffRound, type PlayoffSeries, type PlayoffSeriesMeta, type PlayoffSeriesSchedule, type PositionFilter, type PostalCodeInfo, type Ranking, type SaveLocationCategory, type SaveLocationSort, type SavePercentage5v5Sort, type SavePercentageSort, type ScheduleCalendar, type Season, type SeasonDetails, type SeriesLetter, type ShotLocationCategory, type ShotLocationSort, type ShotSpeedSort, type SkaterStatsLeaders, type SkatersStrength, type SkatingDistanceSort, type SkatingSpeedSort, type StreamingName, type TeamAbbrev, type TeamId, type TeamProspects, type TeamRoster, type TeamRosterSeasons, type TeamScheduleMonth, type TeamScheduleSeason, type TeamScheduleWeek, type TeamStats, type TeamStatsSeason, type WSCGameStory, type WSCPlayByPlay, type WhereToWatch, type Year, type ZoneTimeSort, index as gc };
2198
+ export { type Broadcast, type Clock, type CountryCode$1 as CountryCode, type Details, type DraftPicks, type DraftRankings, type DraftRound, type DraftTracker, EDGE, type EventId, type GameId, type GameMeta, type GameNumber, type GameOutcome$1 as GameOutcome, type GameState$1 as GameState, type GameType, type GamecenterBoxscore, type GamecenterLanding, type GamecenterPlayByPlay, type GamecenterPlayByPlayHomeTeam, type GamecenterReports, type GoalieElement, type GoalieStatsLeaders, type HomeTeamDefendingSide, type IceSurface, type IceSurfaceAwayTeam, type IceSurfaceHomeTeam, type LeagueSchedule, type LocationInfo, nhl as NHL, type NHLDate, type NHLMonth, type NHLScore, type NHLScoreboard, type NHLSeasons, type NHLStandings, type NHLStandingsSeason, type NetworkTVSchedule, type PPTReplayEvent, type PPTReplayGoal, type PartnerGameInfo, type PenaltyBoxElement, type PenaltyDescKey, type PeriodDescriptor$1 as PeriodDescriptor, type Play, type PlayerGameLog, type PlayerId, type PlayerLanding, type PlayerSearchResult, type PlayerSpotlight, type PlayoffBracket, type PlayoffRound, type PlayoffSeries, type PlayoffSeriesMeta, type PlayoffSeriesSchedule, type PositionFilter, type PostalCode, type PostalCodeInfo, type PurpleDefenseman, type PurpleForward, type Reason, type RosterSpot, type SaveLocationCategory, type SaveLocationSort, type SavePercentage5v5Sort, type SavePercentageSort, type ScheduleCalendar, type Season, type SeasonDetails, type SeriesLetter, type ShotLocationCategory, type ShotLocationSort, type ShotSpeedSort, type ShotType, type Situation, type SkaterStatsLeaders, type SkatersStrength, type SkatingDistanceSort, type SkatingSpeedSort, type Summary, type Team$3 as Team, type TeamAbbrev, type TeamId, type TeamProspects, type TeamRoster, type TeamRosterSeasons, type TeamScheduleMonth, type TeamScheduleSeason, type TeamScheduleWeek, type TeamStats, type TeamStatsSeason, type TypeDescKey, type WSCGameStory, type WSCPlayByPlay, type WhereToWatch, type Year, type ZoneTimeSort, index as gc };