fansunited-data-layer 0.0.1 → 0.0.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.
Files changed (88) hide show
  1. package/README.md +145 -60
  2. package/dist/api/sportal365-sports/football/index.d.ts +11 -0
  3. package/dist/api/sportal365-sports/football/index.d.ts.map +1 -0
  4. package/dist/api/sportal365-sports/football/matches/index.d.ts +109 -0
  5. package/dist/api/sportal365-sports/football/matches/index.d.ts.map +1 -0
  6. package/dist/api/sportal365-sports/football/matches/transformers/commentary.d.ts +12 -0
  7. package/dist/api/sportal365-sports/football/matches/transformers/commentary.d.ts.map +1 -0
  8. package/dist/api/sportal365-sports/football/matches/transformers/index.d.ts +10 -0
  9. package/dist/api/sportal365-sports/football/matches/transformers/index.d.ts.map +1 -0
  10. package/dist/api/sportal365-sports/football/matches/transformers/lineup.d.ts +11 -0
  11. package/dist/api/sportal365-sports/football/matches/transformers/lineup.d.ts.map +1 -0
  12. package/dist/api/sportal365-sports/football/matches/transformers/match-event.d.ts +12 -0
  13. package/dist/api/sportal365-sports/football/matches/transformers/match-event.d.ts.map +1 -0
  14. package/dist/api/sportal365-sports/football/matches/transformers/match.d.ts +11 -0
  15. package/dist/api/sportal365-sports/football/matches/transformers/match.d.ts.map +1 -0
  16. package/dist/api/sportal365-sports/football/matches/transformers/odds.d.ts +11 -0
  17. package/dist/api/sportal365-sports/football/matches/transformers/odds.d.ts.map +1 -0
  18. package/dist/api/sportal365-sports/football/matches/transformers/statistics.d.ts +11 -0
  19. package/dist/api/sportal365-sports/football/matches/transformers/statistics.d.ts.map +1 -0
  20. package/dist/api/sportal365-sports/football/matches/types/commentary.types.d.ts +24 -0
  21. package/dist/api/sportal365-sports/football/matches/types/commentary.types.d.ts.map +1 -0
  22. package/dist/api/sportal365-sports/football/matches/types/event.types.d.ts +19 -0
  23. package/dist/api/sportal365-sports/football/matches/types/event.types.d.ts.map +1 -0
  24. package/dist/api/sportal365-sports/football/matches/types/index.d.ts +16 -0
  25. package/dist/api/sportal365-sports/football/matches/types/index.d.ts.map +1 -0
  26. package/dist/api/sportal365-sports/football/matches/types/lineup.types.d.ts +78 -0
  27. package/dist/api/sportal365-sports/football/matches/types/lineup.types.d.ts.map +1 -0
  28. package/dist/api/sportal365-sports/football/matches/types/match.types.d.ts +47 -0
  29. package/dist/api/sportal365-sports/football/matches/types/match.types.d.ts.map +1 -0
  30. package/dist/api/sportal365-sports/football/matches/types/minute.types.d.ts +8 -0
  31. package/dist/api/sportal365-sports/football/matches/types/minute.types.d.ts.map +1 -0
  32. package/dist/api/sportal365-sports/football/matches/types/odds.types.d.ts +80 -0
  33. package/dist/api/sportal365-sports/football/matches/types/odds.types.d.ts.map +1 -0
  34. package/dist/api/sportal365-sports/football/matches/types/option.types.d.ts +55 -0
  35. package/dist/api/sportal365-sports/football/matches/types/option.types.d.ts.map +1 -0
  36. package/dist/api/sportal365-sports/football/matches/types/referee.types.d.ts +13 -0
  37. package/dist/api/sportal365-sports/football/matches/types/referee.types.d.ts.map +1 -0
  38. package/dist/api/sportal365-sports/football/matches/types/statistics.types.d.ts +45 -0
  39. package/dist/api/sportal365-sports/football/matches/types/statistics.types.d.ts.map +1 -0
  40. package/dist/api/sportal365-sports/football/matches/types/status.types.d.ts +13 -0
  41. package/dist/api/sportal365-sports/football/matches/types/status.types.d.ts.map +1 -0
  42. package/dist/api/sportal365-sports/football/matches/types/team.types.d.ts +17 -0
  43. package/dist/api/sportal365-sports/football/matches/types/team.types.d.ts.map +1 -0
  44. package/dist/api/sportal365-sports/football/matches/types/winner.types.d.ts +15 -0
  45. package/dist/api/sportal365-sports/football/matches/types/winner.types.d.ts.map +1 -0
  46. package/dist/api/sportal365-sports/football/teams/index.d.ts +25 -0
  47. package/dist/api/sportal365-sports/football/teams/index.d.ts.map +1 -0
  48. package/dist/api/sportal365-sports/football/teams/team.types.d.ts +55 -0
  49. package/dist/api/sportal365-sports/football/teams/team.types.d.ts.map +1 -0
  50. package/dist/api/sportal365-sports/football/teams/utils.d.ts +11 -0
  51. package/dist/api/sportal365-sports/football/teams/utils.d.ts.map +1 -0
  52. package/dist/api/sportal365-sports/http.d.ts +24 -0
  53. package/dist/api/sportal365-sports/http.d.ts.map +1 -0
  54. package/dist/api/sportal365-sports/index.d.ts +9 -0
  55. package/dist/api/sportal365-sports/index.d.ts.map +1 -0
  56. package/dist/api/sportal365-sports/shared/index.d.ts +5 -0
  57. package/dist/api/sportal365-sports/shared/index.d.ts.map +1 -0
  58. package/dist/api/sportal365-sports/shared/types.d.ts +189 -0
  59. package/dist/api/sportal365-sports/shared/types.d.ts.map +1 -0
  60. package/dist/config/index.d.ts +31 -0
  61. package/dist/config/index.d.ts.map +1 -0
  62. package/dist/config/types.d.ts +34 -0
  63. package/dist/config/types.d.ts.map +1 -0
  64. package/dist/fansunited-data-layer.js +1 -1
  65. package/dist/fansunited-data-layer.umd.cjs +1 -1
  66. package/dist/index.d.ts +32 -0
  67. package/dist/index.d.ts.map +1 -0
  68. package/dist/types/canonical/base.types.d.ts +134 -0
  69. package/dist/types/canonical/base.types.d.ts.map +1 -0
  70. package/dist/types/canonical/commentary.types.d.ts +42 -0
  71. package/dist/types/canonical/commentary.types.d.ts.map +1 -0
  72. package/dist/types/canonical/event.types.d.ts +31 -0
  73. package/dist/types/canonical/event.types.d.ts.map +1 -0
  74. package/dist/types/canonical/index.d.ts +14 -0
  75. package/dist/types/canonical/index.d.ts.map +1 -0
  76. package/dist/types/canonical/lineup.types.d.ts +33 -0
  77. package/dist/types/canonical/lineup.types.d.ts.map +1 -0
  78. package/dist/types/canonical/match.types.d.ts +139 -0
  79. package/dist/types/canonical/match.types.d.ts.map +1 -0
  80. package/dist/types/canonical/odds.types.d.ts +73 -0
  81. package/dist/types/canonical/odds.types.d.ts.map +1 -0
  82. package/dist/types/canonical/standing.types.d.ts +57 -0
  83. package/dist/types/canonical/standing.types.d.ts.map +1 -0
  84. package/dist/types/canonical/statistics.types.d.ts +27 -0
  85. package/dist/types/canonical/statistics.types.d.ts.map +1 -0
  86. package/dist/types/index.d.ts +9 -0
  87. package/dist/types/index.d.ts.map +1 -0
  88. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lineup.types.d.ts","sourceRoot":"","sources":["../../../src/lib/types/canonical/lineup.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,QAAQ,EAAE,oBAAoB,EAAE,CAAC;IACjC,WAAW,EAAE,oBAAoB,EAAE,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,wBAAwB,CAAC;IACxC,aAAa,EAAE,wBAAwB,CAAC;CAC3C"}
@@ -0,0 +1,139 @@
1
+ /**
2
+ * Match FUSports types - Core match entities
3
+ */
4
+ import type { FUSportsCompetitor, FUSportsCompetition, FUSportsVenue, FUSportsOfficial } from "./base.types";
5
+ import type { FUSportsMatchEvent } from "./event.types";
6
+ /**
7
+ * Match score breakdown - String-based to support various sports formats
8
+ */
9
+ export interface FUSportsMatchScore {
10
+ competitorOne: string | null;
11
+ competitorTwo: string | null;
12
+ breakdown?: {
13
+ total?: {
14
+ competitorOne: string;
15
+ competitorTwo: string;
16
+ };
17
+ halfTime?: {
18
+ competitorOne: string;
19
+ competitorTwo: string;
20
+ };
21
+ regularTime?: {
22
+ competitorOne: string;
23
+ competitorTwo: string;
24
+ };
25
+ extraTime?: {
26
+ competitorOne: string;
27
+ competitorTwo: string;
28
+ };
29
+ penaltyShootout?: {
30
+ competitorOne: string;
31
+ competitorTwo: string;
32
+ };
33
+ aggregate?: {
34
+ competitorOne: string;
35
+ competitorTwo: string;
36
+ };
37
+ periods?: Array<{
38
+ competitorOne: string;
39
+ competitorTwo: string;
40
+ }>;
41
+ };
42
+ }
43
+ /**
44
+ * Match status
45
+ */
46
+ export interface FUSportsMatchStatus {
47
+ code: "not_started" | "live" | "finished" | "postponed" | "cancelled" | "abandoned" | "interrupted";
48
+ name: string;
49
+ shortName?: string;
50
+ type: "NOT_STARTED" | "LIVE" | "FINISHED" | "POSTPONED" | "CANCELLED" | "ABANDONED" | "INTERRUPTED";
51
+ }
52
+ /**
53
+ * Match timing information
54
+ */
55
+ export interface FUSportsMatchTiming {
56
+ kickoffTime: Date;
57
+ currentMinute?: number;
58
+ currentPeriod?: string;
59
+ phaseStartedAt?: Date;
60
+ finishedAt?: Date;
61
+ firstHalfStartedAt?: Date;
62
+ secondHalfStartedAt?: Date;
63
+ extraTimeFirstHalfStartedAt?: Date;
64
+ extraTimeSecondHalfStartedAt?: Date;
65
+ }
66
+ /**
67
+ * Match winner information
68
+ */
69
+ export interface FUSportsMatchWinner {
70
+ competitorId: string;
71
+ reason?: "REGULAR_TIME" | "EXTRA_TIME" | "PENALTIES" | "FORFEIT" | "WALKOVER";
72
+ aggregate?: boolean;
73
+ }
74
+ /**
75
+ * Main Match model
76
+ * Sport-agnostic, works for football, tennis, basketball, cricket, etc.
77
+ */
78
+ export interface FUSportsMatch {
79
+ id: string;
80
+ slug?: string;
81
+ status: FUSportsMatchStatus;
82
+ timing: FUSportsMatchTiming;
83
+ competitorOne: FUSportsCompetitor;
84
+ competitorTwo: FUSportsCompetitor;
85
+ competition?: FUSportsCompetition;
86
+ round?: {
87
+ id: string;
88
+ key: string;
89
+ name: string;
90
+ type: string;
91
+ };
92
+ group?: {
93
+ id: string;
94
+ name: string;
95
+ };
96
+ venue?: FUSportsVenue;
97
+ officials?: FUSportsOfficial[];
98
+ spectators?: number;
99
+ score?: FUSportsMatchScore;
100
+ mainEvents?: FUSportsMatchEvent[];
101
+ penaltyShootoutEvents?: FUSportsMatchEvent[];
102
+ winner?: FUSportsMatchWinner;
103
+ coverage?: "LIVE" | "UNKNOWN" | "HIGHLIGHTS";
104
+ lineupStatus?: "CONFIRMED" | "NOT_AVAILABLE" | "EXPECTED";
105
+ metadata?: Record<string, unknown>;
106
+ }
107
+ /**
108
+ * Simplified match for lists, fixtures, results
109
+ */
110
+ export interface FUSportsMatchSimple {
111
+ id: string;
112
+ slug?: string;
113
+ competitorOne: {
114
+ id: string;
115
+ name: string;
116
+ shortName?: string;
117
+ logo?: string;
118
+ score?: string;
119
+ };
120
+ competitorTwo: {
121
+ id: string;
122
+ name: string;
123
+ shortName?: string;
124
+ logo?: string;
125
+ score?: string;
126
+ };
127
+ status: {
128
+ code: string;
129
+ name: string;
130
+ };
131
+ kickoffTime: Date;
132
+ venue?: string;
133
+ competition?: {
134
+ id: string;
135
+ name: string;
136
+ logo?: string;
137
+ };
138
+ }
139
+ //# sourceMappingURL=match.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"match.types.d.ts","sourceRoot":"","sources":["../../../src/lib/types/canonical/match.types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,73 @@
1
+ /**
2
+ * Odds FUSports types
3
+ */
4
+ /**
5
+ * Betting operator branding information
6
+ */
7
+ export interface FUSportsBettingOperatorBranding {
8
+ backgroundColor?: string;
9
+ textColor?: string;
10
+ logo?: string;
11
+ }
12
+ /**
13
+ * Betting operator information
14
+ */
15
+ export interface FUSportsBettingOperator {
16
+ id: string;
17
+ name: string;
18
+ url?: string;
19
+ branding?: FUSportsBettingOperatorBranding;
20
+ }
21
+ /**
22
+ * Single betting selection/outcome
23
+ */
24
+ export interface FUSportsOddSelection {
25
+ id: string;
26
+ name: string;
27
+ code: string;
28
+ value?: string;
29
+ odds: string;
30
+ oddsOld?: string;
31
+ movement?: "UP" | "DOWN" | "NONE";
32
+ url?: string;
33
+ }
34
+ /**
35
+ * Market period (e.g., full time, first half)
36
+ */
37
+ export interface FUSportsMarketPeriod {
38
+ id: string;
39
+ type: string;
40
+ name: string;
41
+ }
42
+ /**
43
+ * Market type (e.g., 1x2, over/under)
44
+ */
45
+ export interface FUSportsMarketType {
46
+ id: string;
47
+ code: string;
48
+ name: string;
49
+ }
50
+ /**
51
+ * Betting market with selections
52
+ */
53
+ export interface FUSportsOddMarket {
54
+ type: FUSportsMarketType;
55
+ period: FUSportsMarketPeriod;
56
+ selections: FUSportsOddSelection[];
57
+ }
58
+ /**
59
+ * Odds from a specific betting operator
60
+ */
61
+ export interface FUSportsBettingOperatorOdds {
62
+ operator: FUSportsBettingOperator;
63
+ type: "PRE_EVENT" | "LIVE";
64
+ markets: FUSportsOddMarket[];
65
+ }
66
+ /**
67
+ * All odds for a match
68
+ */
69
+ export interface FUSportsMatchOdds {
70
+ matchId: string;
71
+ operators: FUSportsBettingOperatorOdds[];
72
+ }
73
+ //# sourceMappingURL=odds.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"odds.types.d.ts","sourceRoot":"","sources":["../../../src/lib/types/canonical/odds.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,+BAA+B;IAC5C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,+BAA+B,CAAC;CAC9C;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;IAClC,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,kBAAkB,CAAC;IACzB,MAAM,EAAE,oBAAoB,CAAC;IAC7B,UAAU,EAAE,oBAAoB,EAAE,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IACxC,QAAQ,EAAE,uBAAuB,CAAC;IAClC,IAAI,EAAE,WAAW,GAAG,MAAM,CAAC;IAC3B,OAAO,EAAE,iBAAiB,EAAE,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,2BAA2B,EAAE,CAAC;CAC5C"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Standing and form FUSports types
3
+ */
4
+ /**
5
+ * Form/Recent results
6
+ */
7
+ export interface FUSportsCompetitorForm {
8
+ competitorId: string;
9
+ results: Array<{
10
+ matchId: string;
11
+ result: "W" | "D" | "L";
12
+ score?: string;
13
+ opponent: {
14
+ id: string;
15
+ name: string;
16
+ logo?: string;
17
+ };
18
+ date: Date;
19
+ competition?: {
20
+ id: string;
21
+ name: string;
22
+ };
23
+ }>;
24
+ formString?: string;
25
+ }
26
+ /**
27
+ * Standing/Ranking entry
28
+ */
29
+ export interface FUSportsStandingEntry {
30
+ rank: number;
31
+ competitor: {
32
+ id: string;
33
+ name: string;
34
+ shortName?: string;
35
+ logo?: string;
36
+ };
37
+ stats: {
38
+ played?: number;
39
+ won?: number;
40
+ drawn?: number;
41
+ lost?: number;
42
+ goalsFor?: number;
43
+ goalsAgainst?: number;
44
+ goalDifference?: number;
45
+ points?: number;
46
+ [key: string]: number | undefined;
47
+ };
48
+ form?: string;
49
+ metadata?: {
50
+ promoted?: boolean;
51
+ relegated?: boolean;
52
+ playoffQualified?: boolean;
53
+ championsLeagueQualified?: boolean;
54
+ [key: string]: unknown;
55
+ };
56
+ }
57
+ //# sourceMappingURL=standing.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"standing.types.d.ts","sourceRoot":"","sources":["../../../src/lib/types/canonical/standing.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,KAAK,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;QACxB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE;YACN,EAAE,EAAE,MAAM,CAAC;YACX,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,CAAC,EAAE,MAAM,CAAC;SACjB,CAAC;QACF,IAAI,EAAE,IAAI,CAAC;QACX,WAAW,CAAC,EAAE;YACV,EAAE,EAAE,MAAM,CAAC;YACX,IAAI,EAAE,MAAM,CAAC;SAChB,CAAC;KACL,CAAC,CAAC;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE;QACR,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,IAAI,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,KAAK,EAAE;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,MAAM,CAAC,EAAE,MAAM,CAAC;QAEhB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;KACrC,CAAC;IACF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE;QACP,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,wBAAwB,CAAC,EAAE,OAAO,CAAC;QACnC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KAC1B,CAAC;CACL"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Statistics FUSports types
3
+ */
4
+ /**
5
+ * Single statistic entry - generic key-value pair with display metadata
6
+ */
7
+ export interface FUSportsStatisticEntry {
8
+ key: string;
9
+ value: string;
10
+ label: string;
11
+ unit?: string;
12
+ }
13
+ /**
14
+ * Competitor statistics in a match - sport-agnostic array of stats
15
+ */
16
+ export interface FUSportsCompetitorStatistics {
17
+ competitorId: string;
18
+ statistics: FUSportsStatisticEntry[];
19
+ }
20
+ /**
21
+ * Match statistics for both competitors
22
+ */
23
+ export interface FUSportsMatchStatistics {
24
+ competitorOne: FUSportsCompetitorStatistics;
25
+ competitorTwo: FUSportsCompetitorStatistics;
26
+ }
27
+ //# sourceMappingURL=statistics.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"statistics.types.d.ts","sourceRoot":"","sources":["../../../src/lib/types/canonical/statistics.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,sBAAsB,EAAE,CAAC;CACxC;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACpC,aAAa,EAAE,4BAA4B,CAAC;IAC5C,aAAa,EAAE,4BAA4B,CAAC;CAC/C"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Type definitions for fansunited-data-layer
3
+ */
4
+ export type { RawAsset, RawAssets, RawCountry, RawCity, RawVenueProfile, RawVenue, RawMatchVenue, RawTournament, RawSeason, RawGroup, RawStage, RawRound, RawCompetitionCountry, RawCompetition, RawPartialPlayer, RawTeamScore, RawScore, RawFormMatchStatus, RawFormMatchResult, RawFormMatchParticipant, RawFormMatch, ApiError, } from "../api/sportal365-sports/shared/types";
5
+ export type { RawTeamSocial, RawCoach, RawShirtColor, RawTeamProfile, GetFootballTeamOptions, } from "../api/sportal365-sports/football/teams/team.types";
6
+ export type { RawMatchStatusType, RawMatchStatus, RawMatchTeam, RawMatchEventTypeCode, RawMatchEvent, RawMatchReferee, RawMatchWinnerReason, RawMatchOrAggregateWinner, RawMatchWinner, RawMatchMinute, RawMatchOdd, RawMatchCoverage, RawLineupStatus, RawMatch, OddType, ScopeType, OddFormat, MarketType, OptionalMatchData, GetFootballMatchOptions, } from "../api/sportal365-sports/football/matches/types";
7
+ export type { FUSportsCountry, FUSportsCompetitor, FUSportsCompetition, FUSportsVenue, FUSportsOfficial, FUSportsPlayer, FUSportsMatchPlayer, FUSportsCoach, FUSportsMatchScore, FUSportsMatchStatus, FUSportsMatchTiming, FUSportsMatchWinner, FUSportsMatch, FUSportsMatchSimple, FUSportsFootballEventType, FUSportsOtherEventType, FUSportsMatchEvent, FUSportsLineupPlayer, FUSportsCompetitorLineup, FUSportsMatchLineups, FUSportsStatisticEntry, FUSportsCompetitorStatistics, FUSportsMatchStatistics, FUSportsBettingOperatorBranding, FUSportsBettingOperator, FUSportsOddSelection, FUSportsMarketPeriod, FUSportsMarketType, FUSportsOddMarket, FUSportsBettingOperatorOdds, FUSportsMatchOdds, FUSportsCommentaryDetail, FUSportsCommentaryMeta, FUSportsCommentaryItem, FUSportsStandingEntry, FUSportsCompetitorForm, } from "./canonical";
8
+ export type { DataLayerConfig, Sportal365SportsConfig } from "../config/types";
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EAER,QAAQ,EACR,SAAS,EAET,UAAU,EACV,OAAO,EACP,eAAe,EACf,QAAQ,EACR,aAAa,EAEb,aAAa,EACb,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,qBAAqB,EACrB,cAAc,EAEd,gBAAgB,EAEhB,YAAY,EACZ,QAAQ,EAER,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,YAAY,EAEZ,QAAQ,GACX,MAAM,uCAAuC,CAAC;AAG/C,YAAY,EACR,aAAa,EACb,QAAQ,EACR,aAAa,EACb,cAAc,EACd,sBAAsB,GACzB,MAAM,oDAAoD,CAAC;AAG5D,YAAY,EACR,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,qBAAqB,EACrB,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,yBAAyB,EACzB,cAAc,EACd,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,QAAQ,EACR,OAAO,EACP,SAAS,EACT,SAAS,EACT,UAAU,EACV,iBAAiB,EACjB,uBAAuB,GAC1B,MAAM,iDAAiD,CAAC;AAGzD,YAAY,EAER,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,mBAAmB,EACnB,aAAa,EAEb,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EAEnB,yBAAyB,EACzB,sBAAsB,EACtB,kBAAkB,EAElB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EAEpB,sBAAsB,EACtB,4BAA4B,EAC5B,uBAAuB,EAEvB,+BAA+B,EAC/B,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,2BAA2B,EAC3B,iBAAiB,EAEjB,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EAEtB,qBAAqB,EACrB,sBAAsB,GACzB,MAAM,aAAa,CAAC;AAGrB,YAAY,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "fansunited-data-layer",
3
3
  "private": false,
4
- "version": "0.0.1",
4
+ "version": "0.0.2",
5
5
  "type": "module",
6
6
  "files": [
7
7
  "dist"