@spash/frontlib 1.2.7 → 1.2.9

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/dist/main.d.ts ADDED
@@ -0,0 +1,1047 @@
1
+ import { App } from 'vue';
2
+ import { AxiosInstance } from 'axios';
3
+ import { Config } from 'tailwindcss/types/config';
4
+ import { DateTime } from 'luxon';
5
+ import { DateTimeUnit } from 'luxon';
6
+ import { MonthNumbers } from 'luxon';
7
+ import { PluginCreator } from 'tailwindcss/types/config';
8
+ import { Ref } from 'vue';
9
+ import { useI18n } from 'vue-i18n';
10
+ import { VueCookies } from 'vue3-cookies/dist/interfaces';
11
+
12
+ declare interface AppOptions {
13
+ autoImport?: {
14
+ components: boolean;
15
+ };
16
+ i18n?: {
17
+ messages: any;
18
+ };
19
+ }
20
+
21
+ export declare interface Article {
22
+ '@id': string;
23
+ id: number;
24
+ title: string;
25
+ content: string;
26
+ imageUrl: string;
27
+ createdAt: Date;
28
+ }
29
+
30
+ export declare interface CameraConfiguration {
31
+ id: number;
32
+ layer: CameraConfigurationLayer[];
33
+ }
34
+
35
+ export declare interface CameraConfigurationLayer {
36
+ label: string;
37
+ points: {
38
+ x: number;
39
+ y: number;
40
+ }[];
41
+ width: number;
42
+ height: number;
43
+ color: {
44
+ background: string;
45
+ border: string;
46
+ key: string;
47
+ text: string;
48
+ variable: string;
49
+ };
50
+ }
51
+
52
+ export declare interface Competition {
53
+ id: number;
54
+ name: string;
55
+ firstLogoImageUrl: string;
56
+ secondLogoImageUrl: string;
57
+ ngtvId: string;
58
+ Sport: Sport;
59
+ createdAt: string;
60
+ }
61
+
62
+ export declare interface CompetitionDetail {
63
+ name: string;
64
+ firstLogoImageUrl: string;
65
+ secondLogoImageUrl: string;
66
+ ngtvSessions: CompetitionNgtvSessionDetail[];
67
+ groups: {
68
+ [key: string]: Team[];
69
+ };
70
+ }
71
+
72
+ export declare interface CompetitionNgtvSessionDetail {
73
+ homeScore: number;
74
+ homeTeam: Team;
75
+ awayScore: number;
76
+ awayTeam: Team;
77
+ competitionStage: string;
78
+ field: string;
79
+ plannedStartedAt: Date;
80
+ actualStartedAt: Date;
81
+ status: string;
82
+ }
83
+
84
+ export declare interface ComputerLog {
85
+ id: string;
86
+ computer_id: string;
87
+ event_type: 'keep_alive' | 'video_loading_timeout';
88
+ data: string;
89
+ created_at: string;
90
+ updated_at: string;
91
+ }
92
+
93
+ export declare interface ComputerLogPayload {
94
+ eventType: 'keep_alive' | 'video_loading_timeout';
95
+ data: Record<string, unknown>;
96
+ }
97
+
98
+ declare const _default: (app: App, options?: AppOptions) => void;
99
+ export default _default;
100
+
101
+ export declare interface Dooh {
102
+ id: number;
103
+ name: string;
104
+ type: 'lite' | 'full';
105
+ theme: string;
106
+ orientation: 'portrait' | 'landscape';
107
+ sports: Sport[];
108
+ }
109
+
110
+ export declare interface DoohContent {
111
+ '@id': string;
112
+ id: number;
113
+ contentType: DoohContentContentType;
114
+ competitionId: number;
115
+ duration: number;
116
+ displayDoohContent: boolean;
117
+ isVideo: boolean;
118
+ isSponsoring: boolean;
119
+ filePath: string;
120
+ bookingsSessions: Record<number, (Session & {
121
+ isMainSession: boolean;
122
+ })[]>;
123
+ bookingsData: {
124
+ x: number;
125
+ y: number;
126
+ fieldId: number;
127
+ maxLengthSessionName: number;
128
+ }[];
129
+ article: Article;
130
+ competition: Competition;
131
+ competitionDetails: CompetitionDetail;
132
+ highlight: SessionEvent;
133
+ multiplexEvents: SessionEvent[];
134
+ orientation: 'landscape' | 'portrait';
135
+ type: 'lite' | 'full';
136
+ }
137
+
138
+ declare type DoohContentContentType = 'article' | 'highlights' | 'image' | 'video' | 'competition' | 'multiplex' | 'ads' | 'bookings' | 'error';
139
+
140
+ export declare interface Field {
141
+ id: number;
142
+ name: string;
143
+ theme: string;
144
+ planningAvailable: boolean;
145
+ hi5Available?: boolean;
146
+ competitionAvailable?: boolean;
147
+ scoreCounterAvailable?: boolean;
148
+ easyConnectAvailable?: boolean;
149
+ sport: Sport;
150
+ subscribedOptions: string[];
151
+ camerasTotal: number;
152
+ camerasConfiguration: CameraConfiguration[];
153
+ advertHmiPostMatchImage: string;
154
+ advertHmiLoadingImage: string;
155
+ }
156
+
157
+ declare interface KeyComparisonResult {
158
+ missingInObj2: string[];
159
+ missingInObj1: string[];
160
+ }
161
+
162
+ export declare interface Player {
163
+ id: number;
164
+ name: string;
165
+ email: string;
166
+ }
167
+
168
+ declare interface PlayerTeam {
169
+ id: number;
170
+ jerseyNumber?: number;
171
+ player: Player;
172
+ team?: Team;
173
+ }
174
+
175
+ declare const Plugin_2: {
176
+ handler: PluginCreator;
177
+ config?: Partial<Config> | undefined;
178
+ };
179
+ export { Plugin_2 as Plugin }
180
+
181
+ export declare interface Session {
182
+ '@id': string;
183
+ id: number;
184
+ name: string;
185
+ plannedStartedAt: string;
186
+ plannedEndedAt: string;
187
+ actualStartedAt: string;
188
+ actualEndedAt: string;
189
+ actualDuration: number;
190
+ actualCompetitionBreakDuration?: number | null;
191
+ plannedDuration: number;
192
+ status: string;
193
+ reference: string;
194
+ bookingProvider: string;
195
+ bookingProviderData?: string;
196
+ gameSheetUrl: string;
197
+ competitionStage: string;
198
+ videoUploadEnable?: boolean;
199
+ competition: Competition;
200
+ sport: Sport;
201
+ ngtvSessionType?: SessionType;
202
+ ngtvSessionHomeTeam: SessionTeam;
203
+ ngtvSessionAwayTeam: SessionTeam;
204
+ field: Field;
205
+ ngtvSessionEvents: SessionEvent[];
206
+ ngtvSessionPlayers: SessionPlayer[];
207
+ exportVideosEnabled?: boolean;
208
+ withStats?: boolean;
209
+ iaStatus?: 'stats_done' | 'error';
210
+ sessionPadelStat: {
211
+ id: number;
212
+ match: {
213
+ avg_rally_duration: number;
214
+ avg_rally: number;
215
+ longest_rally: {
216
+ duration: number;
217
+ };
218
+ };
219
+ createdAt: string;
220
+ updatedAt: string;
221
+ elitePlayer: {
222
+ nomansland: number;
223
+ lob_and_go: {
224
+ net_taking: number;
225
+ lob: number;
226
+ percentage: number;
227
+ coordinates: number[][];
228
+ };
229
+ net_taking: number;
230
+ positioning: {
231
+ attack: number;
232
+ };
233
+ first_serve: number;
234
+ volley_service: {
235
+ value: number;
236
+ percentage: number;
237
+ };
238
+ intensities: {
239
+ details: {
240
+ in_0_3: number;
241
+ in_3_6: number;
242
+ in_6_9: number;
243
+ in_9_12: number;
244
+ in_12_15: number;
245
+ gt_15: number;
246
+ };
247
+ };
248
+ chain_breaks: {
249
+ details: {
250
+ timestep: number;
251
+ values: number[];
252
+ };
253
+ };
254
+ };
255
+ };
256
+ sessionFootStat: {
257
+ id: number;
258
+ matchIntensity: {
259
+ score: number;
260
+ value: number;
261
+ maximumSpeed: number;
262
+ intensityScore: number;
263
+ averageSpeed: number;
264
+ totalDistance: number;
265
+ totalGoal: number;
266
+ averageGoalDifference: number;
267
+ };
268
+ zoneCoverage: {
269
+ score: number;
270
+ zone1: {
271
+ score: number;
272
+ value: number;
273
+ total: number;
274
+ percentage: number;
275
+ };
276
+ zone2: {
277
+ score: number;
278
+ value: number;
279
+ total: number;
280
+ percentage: number;
281
+ };
282
+ zone3: {
283
+ score: number;
284
+ value: number;
285
+ total: number;
286
+ percentage: number;
287
+ };
288
+ zone4: {
289
+ score: number;
290
+ value: number;
291
+ total: number;
292
+ percentage: number;
293
+ };
294
+ };
295
+ createdAt: string;
296
+ updatedAt: string;
297
+ };
298
+ }
299
+
300
+ export declare interface SessionEvent {
301
+ id: number;
302
+ type: string;
303
+ name: string;
304
+ currentSet: number;
305
+ videoTimecode: number;
306
+ startVideoTimecode: number;
307
+ currentScoreAway: number[];
308
+ currentScoreHome: number[];
309
+ aiCalculated: boolean;
310
+ duration: number;
311
+ ngtvSession: Session;
312
+ ngtvSessionTeam: SessionTeam;
313
+ ngtvSessionPlayer: SessionPlayer;
314
+ secondNgtvSessionPlayer: SessionPlayer;
315
+ ngtvSessionEventType: SessionEventTypes;
316
+ }
317
+
318
+ export declare interface SessionEventInput {
319
+ type: string;
320
+ ngtvSession: string;
321
+ ngtvSessionTeam?: string | null;
322
+ ngtvSessionPlayer?: string | null;
323
+ secondNgtvSessionPlayer?: string | null;
324
+ matchTimecode: number;
325
+ videoTimecode: number;
326
+ ngtvSessionEventType?: string | null;
327
+ }
328
+
329
+ export declare interface SessionEventTypes {
330
+ id: number;
331
+ type: string;
332
+ name: string;
333
+ color: string;
334
+ duration?: number;
335
+ imageUrl?: string;
336
+ position?: number;
337
+ }
338
+
339
+ export declare interface SessionInput {
340
+ name?: string;
341
+ status?: string;
342
+ plannedStartedAt?: string | null;
343
+ plannedEndedAt?: string | null;
344
+ field?: string;
345
+ ngtvSessionType?: string;
346
+ bookingProvider?: string;
347
+ bookingProviderData?: string;
348
+ videoUploadEnable?: boolean;
349
+ aiEnabled: boolean;
350
+ }
351
+
352
+ export declare interface SessionPlayer {
353
+ '@id': string;
354
+ id: number;
355
+ jerseyNumber: number | null;
356
+ reference: string;
357
+ manOfTheMatch: boolean;
358
+ globalRating: number;
359
+ concededGoalsTotal: number;
360
+ concededGoalsTotalAsPlayer: number;
361
+ goalkeeperDuration: number;
362
+ distanceTotal: number;
363
+ speedsAverage: number[] | null;
364
+ attackerOfTheMatch: boolean;
365
+ defenderOfTheMatch: boolean;
366
+ goalkeeperOfTheMatch: boolean;
367
+ physicalOfTheMatch: boolean;
368
+ physicalRating: number;
369
+ defenseRating: number;
370
+ attackRating: number;
371
+ goalkeeperRating: number;
372
+ defendingDuration: number;
373
+ defendingReturnTotal: number;
374
+ attackingDuration: number;
375
+ attackedPhaseTotal: number;
376
+ createdAttackTotal: number;
377
+ defendingPhaseTotal: number;
378
+ defendersNumberAverage: number;
379
+ walkDuration: number;
380
+ runDuration: number;
381
+ defendingHeightAverage: number;
382
+ consecutiveGoalsTotal: number;
383
+ goalkeeperMaxInvincibilityDuration: number;
384
+ goalkeeperOccurrencesTotal: number;
385
+ heatmap: any[] | null;
386
+ ngtvSession: Session | null;
387
+ ngtvSessionTeam: SessionTeam | null;
388
+ runRatio: number;
389
+ averageSpeed: number;
390
+ goalkeeperRatio: number;
391
+ numberOfGoalScored: number;
392
+ numberOfAssists: number;
393
+ numberOfFouls: number;
394
+ numberOfOwngoals: number;
395
+ lastMinuteWinnersEventsTotal: number;
396
+ hatTricksEventsTotal: number;
397
+ player: Player;
398
+ playerPadelStat: SessionPlayerPadelStats;
399
+ }
400
+
401
+ declare interface SessionPlayerPadelStats {
402
+ id: number;
403
+ name: string;
404
+ video_path: string;
405
+ sentence: string;
406
+ positioning: {
407
+ score: number;
408
+ nomansland: {
409
+ score: number;
410
+ percentage: number;
411
+ };
412
+ attack: {
413
+ score: number;
414
+ percentage: number;
415
+ };
416
+ defense: {
417
+ score: number;
418
+ percentage: number;
419
+ };
420
+ };
421
+ movement: {
422
+ score: number;
423
+ lob_and_go: {
424
+ score: number;
425
+ value: number;
426
+ total: number;
427
+ percentage: number;
428
+ coordinates: number[][];
429
+ average_distance: number;
430
+ average_position: number;
431
+ };
432
+ net_taking: {
433
+ score: number;
434
+ value: number;
435
+ percentage: number;
436
+ sync_total: number;
437
+ sync_percentage: number;
438
+ average_distance: number;
439
+ average_position: number;
440
+ };
441
+ attack_position: {
442
+ score: number;
443
+ value: number;
444
+ };
445
+ hit_and_move: {
446
+ score: number;
447
+ value: number;
448
+ };
449
+ };
450
+ tactical: {
451
+ score: number;
452
+ first_serve: {
453
+ score: number;
454
+ percentage: number;
455
+ };
456
+ volley_service: {
457
+ score: number;
458
+ value: number;
459
+ percentage: number;
460
+ average_distance: number;
461
+ average_position: number;
462
+ };
463
+ services: {
464
+ score: number;
465
+ };
466
+ diagonal: {
467
+ score: number;
468
+ percentage: number;
469
+ };
470
+ top_lob: {
471
+ score: number;
472
+ value: number;
473
+ total: number;
474
+ percentage: number;
475
+ coordinates: number[][];
476
+ };
477
+ divorce_zone: {
478
+ score: number;
479
+ coordinates: number[][];
480
+ team_percentage: number;
481
+ };
482
+ safe_ball: {
483
+ score: number;
484
+ safe_balls: {
485
+ coordinates: number[][];
486
+ };
487
+ unsafe_balls: {
488
+ coordinates: number[][];
489
+ };
490
+ };
491
+ lobs: {
492
+ score: number;
493
+ nb_lob: number;
494
+ nb_team_lob: number;
495
+ percentage_lob_in_team: number;
496
+ };
497
+ };
498
+ tacticalZoningServicesCoordinates: {
499
+ left: number[][];
500
+ right: number[][];
501
+ };
502
+ physical: {
503
+ score: number;
504
+ distance: {
505
+ score: number;
506
+ total: number;
507
+ details: {
508
+ [key: string]: number;
509
+ };
510
+ };
511
+ calories: {
512
+ score: number;
513
+ value: number;
514
+ };
515
+ intensities: {
516
+ score: number;
517
+ max_speed: number;
518
+ details: {
519
+ gt_15: number;
520
+ in_0_3: number;
521
+ in_3_6: number;
522
+ in_6_9: number;
523
+ in_9_12: number;
524
+ in_12_15: number;
525
+ };
526
+ };
527
+ };
528
+ badges: {
529
+ value: number;
530
+ top_badge: boolean;
531
+ badge_type: string;
532
+ }[];
533
+ teamStat: {
534
+ id: number;
535
+ score: number;
536
+ chain_breaks: {
537
+ score: number;
538
+ details: {
539
+ score: number | null;
540
+ values: number[];
541
+ timestep: number;
542
+ };
543
+ };
544
+ checks: {
545
+ score: number;
546
+ value: number;
547
+ };
548
+ createdAt: string;
549
+ updatedAt: string;
550
+ };
551
+ createdAt: string;
552
+ updatedAt: string;
553
+ }
554
+
555
+ export declare enum SessionStatus {
556
+ NOT_PLAYED = "not_played",
557
+ PLAYING = "playing",
558
+ PLAYED = "played",
559
+ DELETED = "deleted",
560
+ PROCESSING = "processing",
561
+ PROCESSING_ERROR = "processing_error",
562
+ PROCESSED = "processed",
563
+ EXPORTING = "exporting",
564
+ EXPORTING_ERROR = "exporting_error",
565
+ EXPORTED = "exported",
566
+ EXPORTED_DELETED = "exported_deleted",
567
+ ERROR = "error",
568
+ FAKE = "fake",
569
+ FAKE_DELETED = "fake_deleted"
570
+ }
571
+
572
+ export declare interface SessionTeam {
573
+ id: number;
574
+ home: boolean;
575
+ score: number[];
576
+ team: Team;
577
+ maxConsecutiveGoals?: number;
578
+ color: string;
579
+ name: string;
580
+ maxInvincibilityDuration?: number;
581
+ teamFootStat: TeamFootStat | null;
582
+ teamPadelStat: {
583
+ id: number;
584
+ score: number;
585
+ };
586
+ }
587
+
588
+ export declare interface SessionType {
589
+ id?: number;
590
+ reference: string;
591
+ }
592
+
593
+ export declare type SIZES = 'md' | 'lg' | 'xl';
594
+
595
+ export declare enum SpashVideoControls {
596
+ 'fullscreen' = "fullscreen",
597
+ 'readingSpeed' = "reading-speed",
598
+ 'videoTimecode' = "video-timecode",
599
+ 'playPause' = "play-pause",
600
+ 'changeTimecode' = "change-timecode"
601
+ }
602
+
603
+ export declare enum SpashVideoOptions {
604
+ 'buzz' = "buzz",
605
+ 'layer' = "layer",
606
+ 'draw' = "draw",
607
+ 'field2D' = "field2D",
608
+ 'resumeAuto' = "resumeAuto",
609
+ 'filterPlayers' = "filterPlayers",
610
+ 'qrCode' = "qrCode"
611
+ }
612
+
613
+ export declare interface SpashVideoPlayer {
614
+ destroyPlayer: () => void;
615
+ onUpdateVideoPlayerBarTimecode: (v: number) => void;
616
+ setControlWidth: (v: string) => void;
617
+ }
618
+
619
+ declare interface SponsoringAttributes {
620
+ fieldId: number;
621
+ sportName: string;
622
+ }
623
+
624
+ declare interface SponsoringOptions {
625
+ attributes: SponsoringAttributes | null;
626
+ siteId: number;
627
+ pageId: number;
628
+ formatIds: string;
629
+ formatId: number;
630
+ classes?: string;
631
+ element?: string;
632
+ }
633
+
634
+ export declare interface Sport {
635
+ id: number;
636
+ name: string;
637
+ racketSport: boolean;
638
+ }
639
+
640
+ export declare interface SportCenter {
641
+ id: number;
642
+ durationChoices: number[];
643
+ language: string;
644
+ computers: {
645
+ boxId: string;
646
+ createdAt: string;
647
+ id: number;
648
+ name: string;
649
+ sponsoringPlayerId: string;
650
+ sponsoringScreenId: string;
651
+ type: string;
652
+ updatedAt: string;
653
+ vpnIp: string;
654
+ interactive: boolean;
655
+ extraTimeEnabled: boolean;
656
+ keepAliveInterval: number;
657
+ }[];
658
+ bookingProvider: string;
659
+ }
660
+
661
+ declare interface SseCallback {
662
+ onOpen?: (event: any) => void;
663
+ onMessage?: (event?: any) => void;
664
+ onError?: (event: any) => void;
665
+ }
666
+
667
+ export declare interface Team {
668
+ id: number;
669
+ name: string;
670
+ primaryColor: string;
671
+ secondaryColor: string;
672
+ maxConsecutiveGoals: number;
673
+ logoImageUrl?: string;
674
+ playerTeams?: PlayerTeam[];
675
+ ngtvId?: number;
676
+ }
677
+
678
+ declare interface TeamFootStat {
679
+ id: number;
680
+ goals: number;
681
+ score: number;
682
+ side: 'left' | 'right';
683
+ color: 'orange' | 'blue';
684
+ distanceValue: number;
685
+ distanceScore: number;
686
+ maxSpeedValue: number;
687
+ maxSpeedScore: number;
688
+ leadingScore: {
689
+ percentage: number;
690
+ score: number;
691
+ total: number;
692
+ value: number;
693
+ };
694
+ distance: {
695
+ score: number;
696
+ total: number;
697
+ byInterval: Record<string, number>;
698
+ bySpeed: {
699
+ '0-3': number;
700
+ '3-6': number;
701
+ '6-9': number;
702
+ '9-12': number;
703
+ '12-15': number;
704
+ '>15': number;
705
+ };
706
+ };
707
+ scoreByTime: {
708
+ [key: string]: number;
709
+ };
710
+ attack: {
711
+ score: number;
712
+ realism: {
713
+ score: number;
714
+ goalXgRatio: {
715
+ score: number;
716
+ value: number;
717
+ };
718
+ goalShotsRatio: {
719
+ score: number;
720
+ value: number;
721
+ };
722
+ goalAttackPresRatio: {
723
+ score: number;
724
+ value: number;
725
+ };
726
+ realism: {
727
+ score: number;
728
+ value: number;
729
+ };
730
+ };
731
+ expectedGoals: {
732
+ score: number;
733
+ value: number;
734
+ };
735
+ globalShots: {
736
+ score: number;
737
+ shotsTried: {
738
+ score: number;
739
+ value: number;
740
+ };
741
+ shots: {
742
+ score: number;
743
+ shotsNumber: {
744
+ score: number;
745
+ value: number;
746
+ };
747
+ shotsPosition: {
748
+ coordinates: number[][];
749
+ };
750
+ };
751
+ shotsOnTarget: {
752
+ score: number;
753
+ shotsOnTargetNumber: {
754
+ score: number;
755
+ value: number;
756
+ };
757
+ shotsOnTargetPosition: {
758
+ coordinates: number[][];
759
+ };
760
+ };
761
+ };
762
+ attacksInitiated: {
763
+ score: number;
764
+ value: number;
765
+ };
766
+ assists: {
767
+ score: number;
768
+ value: number;
769
+ };
770
+ goalsStreak: {
771
+ score: number;
772
+ value: number;
773
+ };
774
+ timeInAttack: {
775
+ score: number;
776
+ timeInAttackValue: {
777
+ score: number;
778
+ value: number;
779
+ };
780
+ positionHeatmap: number[][];
781
+ };
782
+ attackHeight: {
783
+ score: number;
784
+ value: number;
785
+ };
786
+ attackPressure: {
787
+ score: number;
788
+ value: number;
789
+ };
790
+ };
791
+ defense: {
792
+ score: number;
793
+ goalsConceded: {
794
+ score: number;
795
+ value: number;
796
+ };
797
+ timeInDefense: {
798
+ score: number;
799
+ timeInDefenseValue: {
800
+ score: number;
801
+ value: number;
802
+ };
803
+ positionHeatmap: number[][];
804
+ };
805
+ defenseHeight: {
806
+ score: number;
807
+ value: number;
808
+ };
809
+ defensePressure: {
810
+ score: number;
811
+ value: number;
812
+ };
813
+ attacksUnderPressure: {
814
+ score: number;
815
+ value: number;
816
+ };
817
+ immuneTime: {
818
+ score: number;
819
+ value: number;
820
+ };
821
+ goalSolidity: {
822
+ score: number;
823
+ value: number;
824
+ total: number;
825
+ percentage: number;
826
+ };
827
+ };
828
+ game: {
829
+ score: number;
830
+ possession: {
831
+ score: number;
832
+ total: {
833
+ score: number;
834
+ value: number;
835
+ total: number;
836
+ percentage: number;
837
+ };
838
+ details: any[];
839
+ };
840
+ longestPossession: {
841
+ score: number;
842
+ value: number;
843
+ };
844
+ successfulPass: {
845
+ score: number;
846
+ total: {
847
+ score: number;
848
+ value: number;
849
+ };
850
+ forwardPass: {
851
+ score: number;
852
+ value: number;
853
+ total: number;
854
+ percentage: number;
855
+ };
856
+ };
857
+ ballSteal: {
858
+ score: number;
859
+ ballStealNumber: {
860
+ score: number;
861
+ value: number;
862
+ };
863
+ ballStealPosition: {
864
+ coordinates: number[][];
865
+ };
866
+ };
867
+ gameOrientation: {
868
+ score: number;
869
+ corridorLeft: {
870
+ score: number;
871
+ value: number;
872
+ total: number;
873
+ percentage: number;
874
+ };
875
+ corridorMid: {
876
+ score: number;
877
+ value: number;
878
+ total: number;
879
+ percentage: number;
880
+ };
881
+ corridorRight: {
882
+ score: number;
883
+ value: number;
884
+ total: number;
885
+ percentage: number;
886
+ };
887
+ };
888
+ fouls: {
889
+ score: number;
890
+ value: number;
891
+ };
892
+ };
893
+ physical: {
894
+ score: number;
895
+ meanSpeed: {
896
+ score: number;
897
+ value: number;
898
+ };
899
+ };
900
+ badges: {
901
+ value: number;
902
+ badge_type: string;
903
+ }[];
904
+ createdAt: string;
905
+ updatedAt: string;
906
+ }
907
+
908
+ declare interface Toast {
909
+ id: number;
910
+ type?: 'success' | 'error' | 'warning' | 'info';
911
+ message: string;
912
+ timeout: number;
913
+ }
914
+
915
+ declare interface ToastOptions {
916
+ type?: 'success' | 'error' | 'warning' | 'info';
917
+ message: string;
918
+ timeout: number;
919
+ }
920
+
921
+ export declare const useAdServer: () => {
922
+ hasAdServerContent: Ref<boolean, boolean>;
923
+ initAdServer: () => void;
924
+ callAdServer: (attributes: SponsoringAttributes | null, siteId: number, pageId: number, formats: string) => void;
925
+ addAdvertising: (advertId: number, divClasses?: string, divStyles?: string, target?: string, el?: any) => void;
926
+ resetAdServerAdvertising: () => void;
927
+ addSponsoringContent: ({ attributes, siteId, pageId, formatIds, formatId, classes, element, }: SponsoringOptions) => void;
928
+ };
929
+
930
+ export declare const useAxios: (apiUrl: string) => {
931
+ axiosInstance: () => AxiosInstance;
932
+ };
933
+
934
+ export declare const useCompetition: ({ t }?: {
935
+ t?: any;
936
+ }) => {
937
+ groupsOptions: (groupsTotal?: number) => {
938
+ id: string;
939
+ name: any;
940
+ }[];
941
+ };
942
+
943
+ /**
944
+ * It imports all the components in the `components` and `modules` directories, and registers them with
945
+ * the Vue instance
946
+ * @param {App} app - App - The app object that is passed to the plugin function.
947
+ */
948
+ export declare const useComponent: (app: App, components: any, moduleComponents: any) => void;
949
+
950
+ export declare const useCookies: () => VueCookies;
951
+
952
+ export declare const useDisplayImage: () => {
953
+ logoInline: Ref<any, any>;
954
+ logoSmall: Ref<any, any>;
955
+ homeBackgroundLeft: string;
956
+ homeBackgroundRight: string;
957
+ matchBackground: string;
958
+ reloadImages: (theme: string) => void;
959
+ };
960
+
961
+ export declare const useHelper: ({ t, router }?: {
962
+ t?: any;
963
+ router?: any;
964
+ }) => {
965
+ timeout: Ref<any, any>;
966
+ getAndParseObjectFromLocalStorage: (key: string) => any;
967
+ timecodeToString: (timecode: any, mode?: string, displayEmpty?: boolean) => string;
968
+ dynamicSort: (property: any, sortType?: string) => (a: any, b: any) => number;
969
+ redirectToUrl: (redirectUrl: string) => void;
970
+ timeoutRedirectToPage: (routeName: string, timeoutMinutes?: number) => void;
971
+ buildQueryParams: (queryParams: any) => string;
972
+ groupBy: <T, K extends keyof T>(items: T[], key: K) => Record<string, T[]>;
973
+ timecodeToTimeObject: (timecode: any) => {
974
+ hours: number;
975
+ minutes: number;
976
+ seconds: number;
977
+ };
978
+ arrayUniqueValue: (array: any[], key: string) => any[];
979
+ sleep: (ms: number) => Promise<unknown>;
980
+ checkIfComponentExists: (componentName: string) => boolean;
981
+ compareObjectKeys: (obj1: Record<string, unknown>, obj2: Record<string, unknown>, prefix?: string) => KeyComparisonResult;
982
+ };
983
+
984
+ export { useI18n }
985
+
986
+ export declare const useIdle: (time: number, callback?: () => void) => {
987
+ isIdle: Ref<boolean, boolean>;
988
+ cleanup: () => void;
989
+ };
990
+
991
+ export declare const useLuxon: () => {
992
+ DateTime: typeof DateTime;
993
+ currentDate: DateTime<true>;
994
+ currentMonth: MonthNumbers;
995
+ currentMonthName: string;
996
+ currentMonthFormated: string;
997
+ currentTime: string;
998
+ nextMonth: MonthNumbers;
999
+ nextMonthName: string;
1000
+ prevMonth: MonthNumbers;
1001
+ prevMonthName: string;
1002
+ currentYear: number;
1003
+ prevYear: number;
1004
+ dateStartOf: (date: Date | string, of?: DateTimeUnit) => string | null;
1005
+ dateEndOf: (date: Date | string, of?: DateTimeUnit) => string | null;
1006
+ dateEndSession: (date: any, plannedDuration: number) => any;
1007
+ formatDateTime: (date: any) => any;
1008
+ isSameDate: (date1: DateTime, date2: DateTime, filters: string) => boolean;
1009
+ };
1010
+
1011
+ export declare const useSse: (apiUrl?: string) => {
1012
+ eventSource: Ref<EventSource | undefined, EventSource | undefined>;
1013
+ addSubscriber: (topics: string[] | string, callback?: SseCallback) => EventSource;
1014
+ getActiveSseConnections: () => EventSource[];
1015
+ closeAllConnections: () => void;
1016
+ };
1017
+
1018
+ export declare const useStats: () => {
1019
+ defaultPadelStatEventsName: string[];
1020
+ matchEvent: (eventName: string) => string;
1021
+ };
1022
+
1023
+ export declare const useTheme: () => {
1024
+ defaultTheme: Ref<string, string>;
1025
+ currentTheme: Ref<string, string>;
1026
+ setTheme: (newTheme: string) => void;
1027
+ };
1028
+
1029
+ export declare const useTimeout: () => void;
1030
+
1031
+ export declare const useToaster: () => {
1032
+ toasts: Ref< {
1033
+ id: number;
1034
+ type?: "error" | "success" | "warning" | "info" | undefined;
1035
+ message: string;
1036
+ timeout: number;
1037
+ }[], Toast[] | {
1038
+ id: number;
1039
+ type?: "error" | "success" | "warning" | "info" | undefined;
1040
+ message: string;
1041
+ timeout: number;
1042
+ }[]>;
1043
+ addToast: (options: ToastOptions) => void;
1044
+ removeToast: (id: number) => void;
1045
+ };
1046
+
1047
+ export { }