@jugarhoy/api 1.0.2 → 1.0.4

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 (48) hide show
  1. package/apis/AdminClubsApi.ts +118 -0
  2. package/apis/AdminFeaturesApi.ts +264 -0
  3. package/apis/AdminPlaySpotsApi.ts +61 -0
  4. package/apis/AdminReservationsApi.ts +54 -0
  5. package/apis/AdminSubscriptionBillingApi.ts +331 -0
  6. package/apis/AdminSubscriptionsApi.ts +312 -5
  7. package/apis/AuthApi.ts +57 -0
  8. package/apis/UsersApi.ts +51 -0
  9. package/apis/index.ts +3 -0
  10. package/models/AddCoachToSubscriptionRequest.ts +66 -0
  11. package/models/AddPlayerToSubscriptionRequest.ts +66 -0
  12. package/models/BlockSpotItem.ts +75 -0
  13. package/models/BlockSpots200Response.ts +73 -0
  14. package/models/BlockSpotsCommand.ts +109 -0
  15. package/models/ChargeOn.ts +1 -1
  16. package/models/ClonePlaySpotRequest.ts +75 -0
  17. package/models/CreateClubForSuperadminParams.ts +227 -0
  18. package/models/CreateClubForSuperadminResponse.ts +83 -0
  19. package/models/CreateClubForSuperadminResponseResult.ts +111 -0
  20. package/models/CreateClubForSuperadminResponseResultAdminUser.ts +73 -0
  21. package/models/CreateFeatureRequest.ts +103 -0
  22. package/models/ExtendSubscriptions200Response.ts +89 -0
  23. package/models/ExtendSubscriptions200ResponseDetailsInner.ts +81 -0
  24. package/models/Feature.ts +18 -0
  25. package/models/GenerateSubscriptionBillsRequest.ts +65 -0
  26. package/models/GetAllShifts200ResponseInner.ts +8 -0
  27. package/models/LinkPaymentToBillRequest.ts +66 -0
  28. package/models/ListAllClubsResponse.ts +83 -0
  29. package/models/ListAllClubsResponseResult.ts +81 -0
  30. package/models/PlayPrice.ts +2 -2
  31. package/models/PlaySpotShift.ts +8 -0
  32. package/models/PlaySubscription.ts +41 -0
  33. package/models/PlaySubscriptionCreateDto.ts +37 -3
  34. package/models/PlaySubscriptionListDto.ts +240 -0
  35. package/models/RequestPasswordReset200Response.ts +65 -0
  36. package/models/RequestPasswordReset500Response.ts +65 -0
  37. package/models/RequestPasswordResetRequest.ts +66 -0
  38. package/models/Reserve.ts +15 -0
  39. package/models/ReserveType.ts +1 -0
  40. package/models/SavePushTokenRequest.ts +66 -0
  41. package/models/Sport.ts +15 -6
  42. package/models/SubscriptionBill.ts +198 -0
  43. package/models/UpdateBillRequest.ts +91 -0
  44. package/models/UpdateFeatureRequest.ts +91 -0
  45. package/models/UpdateReservationAdminRequest.ts +8 -0
  46. package/models/UserRole.ts +2 -1
  47. package/models/index.ts +25 -0
  48. package/package.json +1 -1
@@ -0,0 +1,240 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Jugar Hoy - API
5
+ * API documentation for Jugar Hoy application
6
+ *
7
+ * The version of the OpenAPI document: 1.5.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ import type { PlaySubscriptionType } from './PlaySubscriptionType';
17
+ import {
18
+ PlaySubscriptionTypeFromJSON,
19
+ PlaySubscriptionTypeFromJSONTyped,
20
+ PlaySubscriptionTypeToJSON,
21
+ PlaySubscriptionTypeToJSONTyped,
22
+ } from './PlaySubscriptionType';
23
+ import type { ReserveStatus } from './ReserveStatus';
24
+ import {
25
+ ReserveStatusFromJSON,
26
+ ReserveStatusFromJSONTyped,
27
+ ReserveStatusToJSON,
28
+ ReserveStatusToJSONTyped,
29
+ } from './ReserveStatus';
30
+
31
+ /**
32
+ * Lightweight DTO for listing subscriptions without heavy relations
33
+ * @export
34
+ * @interface PlaySubscriptionListDto
35
+ */
36
+ export interface PlaySubscriptionListDto {
37
+ /**
38
+ * Unique identifier for the subscription
39
+ * @type {string}
40
+ * @memberof PlaySubscriptionListDto
41
+ */
42
+ id: string;
43
+ /**
44
+ * ID of the customer where the subscription is valid
45
+ * @type {string}
46
+ * @memberof PlaySubscriptionListDto
47
+ */
48
+ customerId: string;
49
+ /**
50
+ *
51
+ * @type {PlaySubscriptionType}
52
+ * @memberof PlaySubscriptionListDto
53
+ */
54
+ type: PlaySubscriptionType;
55
+ /**
56
+ * Name of the subscription for reference
57
+ * @type {string}
58
+ * @memberof PlaySubscriptionListDto
59
+ */
60
+ name: string;
61
+ /**
62
+ * ID of the user who owns the subscription
63
+ * @type {string}
64
+ * @memberof PlaySubscriptionListDto
65
+ */
66
+ userId: string;
67
+ /**
68
+ * Start date of the subscription period
69
+ * @type {Date}
70
+ * @memberof PlaySubscriptionListDto
71
+ */
72
+ startDate: Date;
73
+ /**
74
+ * End date of the subscription period (optional)
75
+ * @type {Date}
76
+ * @memberof PlaySubscriptionListDto
77
+ */
78
+ endDate?: Date | null;
79
+ /**
80
+ * Frequency of billing
81
+ * @type {string}
82
+ * @memberof PlaySubscriptionListDto
83
+ */
84
+ frequency?: string;
85
+ /**
86
+ * Start time of the subscription in HH:MM format (24-hour)
87
+ * @type {string}
88
+ * @memberof PlaySubscriptionListDto
89
+ */
90
+ hourFrom: string;
91
+ /**
92
+ * End time of the subscription in HH:MM format (24-hour)
93
+ * @type {string}
94
+ * @memberof PlaySubscriptionListDto
95
+ */
96
+ hourTo: string;
97
+ /**
98
+ * Date until which occurrences are valid
99
+ * @type {Date}
100
+ * @memberof PlaySubscriptionListDto
101
+ */
102
+ occurrencesUntil: Date;
103
+ /**
104
+ *
105
+ * @type {ReserveStatus}
106
+ * @memberof PlaySubscriptionListDto
107
+ */
108
+ status: ReserveStatus;
109
+ /**
110
+ * Whether the subscription has scheduling conflicts
111
+ * @type {boolean}
112
+ * @memberof PlaySubscriptionListDto
113
+ */
114
+ hasConflicts: boolean;
115
+ /**
116
+ * Whether to include the titular (userId) in billing
117
+ * @type {boolean}
118
+ * @memberof PlaySubscriptionListDto
119
+ */
120
+ billTitular?: boolean;
121
+ /**
122
+ * Number of occurrences in the subscription
123
+ * @type {number}
124
+ * @memberof PlaySubscriptionListDto
125
+ */
126
+ occurrencesCount: number;
127
+ /**
128
+ * Number of members in the subscription
129
+ * @type {number}
130
+ * @memberof PlaySubscriptionListDto
131
+ */
132
+ memberCount: number;
133
+ /**
134
+ * Number of coaches in the subscription
135
+ * @type {number}
136
+ * @memberof PlaySubscriptionListDto
137
+ */
138
+ coachesCount: number;
139
+ /**
140
+ * Date when the subscription was created
141
+ * @type {Date}
142
+ * @memberof PlaySubscriptionListDto
143
+ */
144
+ createdAt?: Date;
145
+ /**
146
+ * Date when the subscription was last updated
147
+ * @type {Date}
148
+ * @memberof PlaySubscriptionListDto
149
+ */
150
+ updatedAt?: Date;
151
+ }
152
+
153
+
154
+
155
+ /**
156
+ * Check if a given object implements the PlaySubscriptionListDto interface.
157
+ */
158
+ export function instanceOfPlaySubscriptionListDto(value: object): value is PlaySubscriptionListDto {
159
+ if (!('id' in value) || value['id'] === undefined) return false;
160
+ if (!('customerId' in value) || value['customerId'] === undefined) return false;
161
+ if (!('type' in value) || value['type'] === undefined) return false;
162
+ if (!('name' in value) || value['name'] === undefined) return false;
163
+ if (!('userId' in value) || value['userId'] === undefined) return false;
164
+ if (!('startDate' in value) || value['startDate'] === undefined) return false;
165
+ if (!('hourFrom' in value) || value['hourFrom'] === undefined) return false;
166
+ if (!('hourTo' in value) || value['hourTo'] === undefined) return false;
167
+ if (!('occurrencesUntil' in value) || value['occurrencesUntil'] === undefined) return false;
168
+ if (!('status' in value) || value['status'] === undefined) return false;
169
+ if (!('hasConflicts' in value) || value['hasConflicts'] === undefined) return false;
170
+ if (!('occurrencesCount' in value) || value['occurrencesCount'] === undefined) return false;
171
+ if (!('memberCount' in value) || value['memberCount'] === undefined) return false;
172
+ if (!('coachesCount' in value) || value['coachesCount'] === undefined) return false;
173
+ return true;
174
+ }
175
+
176
+ export function PlaySubscriptionListDtoFromJSON(json: any): PlaySubscriptionListDto {
177
+ return PlaySubscriptionListDtoFromJSONTyped(json, false);
178
+ }
179
+
180
+ export function PlaySubscriptionListDtoFromJSONTyped(json: any, ignoreDiscriminator: boolean): PlaySubscriptionListDto {
181
+ if (json == null) {
182
+ return json;
183
+ }
184
+ return {
185
+
186
+ 'id': json['id'],
187
+ 'customerId': json['customerId'],
188
+ 'type': PlaySubscriptionTypeFromJSON(json['type']),
189
+ 'name': json['name'],
190
+ 'userId': json['userId'],
191
+ 'startDate': (new Date(json['startDate'])),
192
+ 'endDate': json['endDate'] == null ? undefined : (new Date(json['endDate'])),
193
+ 'frequency': json['frequency'] == null ? undefined : json['frequency'],
194
+ 'hourFrom': json['hourFrom'],
195
+ 'hourTo': json['hourTo'],
196
+ 'occurrencesUntil': (new Date(json['occurrencesUntil'])),
197
+ 'status': ReserveStatusFromJSON(json['status']),
198
+ 'hasConflicts': json['hasConflicts'],
199
+ 'billTitular': json['billTitular'] == null ? undefined : json['billTitular'],
200
+ 'occurrencesCount': json['occurrencesCount'],
201
+ 'memberCount': json['memberCount'],
202
+ 'coachesCount': json['coachesCount'],
203
+ 'createdAt': json['createdAt'] == null ? undefined : (new Date(json['createdAt'])),
204
+ 'updatedAt': json['updatedAt'] == null ? undefined : (new Date(json['updatedAt'])),
205
+ };
206
+ }
207
+
208
+ export function PlaySubscriptionListDtoToJSON(json: any): PlaySubscriptionListDto {
209
+ return PlaySubscriptionListDtoToJSONTyped(json, false);
210
+ }
211
+
212
+ export function PlaySubscriptionListDtoToJSONTyped(value?: PlaySubscriptionListDto | null, ignoreDiscriminator: boolean = false): any {
213
+ if (value == null) {
214
+ return value;
215
+ }
216
+
217
+ return {
218
+
219
+ 'id': value['id'],
220
+ 'customerId': value['customerId'],
221
+ 'type': PlaySubscriptionTypeToJSON(value['type']),
222
+ 'name': value['name'],
223
+ 'userId': value['userId'],
224
+ 'startDate': ((value['startDate']).toISOString()),
225
+ 'endDate': value['endDate'] == null ? undefined : ((value['endDate'] as any).toISOString()),
226
+ 'frequency': value['frequency'],
227
+ 'hourFrom': value['hourFrom'],
228
+ 'hourTo': value['hourTo'],
229
+ 'occurrencesUntil': ((value['occurrencesUntil']).toISOString()),
230
+ 'status': ReserveStatusToJSON(value['status']),
231
+ 'hasConflicts': value['hasConflicts'],
232
+ 'billTitular': value['billTitular'],
233
+ 'occurrencesCount': value['occurrencesCount'],
234
+ 'memberCount': value['memberCount'],
235
+ 'coachesCount': value['coachesCount'],
236
+ 'createdAt': value['createdAt'] == null ? undefined : ((value['createdAt']).toISOString()),
237
+ 'updatedAt': value['updatedAt'] == null ? undefined : ((value['updatedAt']).toISOString()),
238
+ };
239
+ }
240
+
@@ -0,0 +1,65 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Jugar Hoy - API
5
+ * API documentation for Jugar Hoy application
6
+ *
7
+ * The version of the OpenAPI document: 1.5.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface RequestPasswordReset200Response
20
+ */
21
+ export interface RequestPasswordReset200Response {
22
+ /**
23
+ *
24
+ * @type {boolean}
25
+ * @memberof RequestPasswordReset200Response
26
+ */
27
+ success?: boolean;
28
+ }
29
+
30
+ /**
31
+ * Check if a given object implements the RequestPasswordReset200Response interface.
32
+ */
33
+ export function instanceOfRequestPasswordReset200Response(value: object): value is RequestPasswordReset200Response {
34
+ return true;
35
+ }
36
+
37
+ export function RequestPasswordReset200ResponseFromJSON(json: any): RequestPasswordReset200Response {
38
+ return RequestPasswordReset200ResponseFromJSONTyped(json, false);
39
+ }
40
+
41
+ export function RequestPasswordReset200ResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): RequestPasswordReset200Response {
42
+ if (json == null) {
43
+ return json;
44
+ }
45
+ return {
46
+
47
+ 'success': json['success'] == null ? undefined : json['success'],
48
+ };
49
+ }
50
+
51
+ export function RequestPasswordReset200ResponseToJSON(json: any): RequestPasswordReset200Response {
52
+ return RequestPasswordReset200ResponseToJSONTyped(json, false);
53
+ }
54
+
55
+ export function RequestPasswordReset200ResponseToJSONTyped(value?: RequestPasswordReset200Response | null, ignoreDiscriminator: boolean = false): any {
56
+ if (value == null) {
57
+ return value;
58
+ }
59
+
60
+ return {
61
+
62
+ 'success': value['success'],
63
+ };
64
+ }
65
+
@@ -0,0 +1,65 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Jugar Hoy - API
5
+ * API documentation for Jugar Hoy application
6
+ *
7
+ * The version of the OpenAPI document: 1.5.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface RequestPasswordReset500Response
20
+ */
21
+ export interface RequestPasswordReset500Response {
22
+ /**
23
+ *
24
+ * @type {string}
25
+ * @memberof RequestPasswordReset500Response
26
+ */
27
+ error?: string;
28
+ }
29
+
30
+ /**
31
+ * Check if a given object implements the RequestPasswordReset500Response interface.
32
+ */
33
+ export function instanceOfRequestPasswordReset500Response(value: object): value is RequestPasswordReset500Response {
34
+ return true;
35
+ }
36
+
37
+ export function RequestPasswordReset500ResponseFromJSON(json: any): RequestPasswordReset500Response {
38
+ return RequestPasswordReset500ResponseFromJSONTyped(json, false);
39
+ }
40
+
41
+ export function RequestPasswordReset500ResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): RequestPasswordReset500Response {
42
+ if (json == null) {
43
+ return json;
44
+ }
45
+ return {
46
+
47
+ 'error': json['error'] == null ? undefined : json['error'],
48
+ };
49
+ }
50
+
51
+ export function RequestPasswordReset500ResponseToJSON(json: any): RequestPasswordReset500Response {
52
+ return RequestPasswordReset500ResponseToJSONTyped(json, false);
53
+ }
54
+
55
+ export function RequestPasswordReset500ResponseToJSONTyped(value?: RequestPasswordReset500Response | null, ignoreDiscriminator: boolean = false): any {
56
+ if (value == null) {
57
+ return value;
58
+ }
59
+
60
+ return {
61
+
62
+ 'error': value['error'],
63
+ };
64
+ }
65
+
@@ -0,0 +1,66 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Jugar Hoy - API
5
+ * API documentation for Jugar Hoy application
6
+ *
7
+ * The version of the OpenAPI document: 1.5.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface RequestPasswordResetRequest
20
+ */
21
+ export interface RequestPasswordResetRequest {
22
+ /**
23
+ * Email address of the user requesting password reset
24
+ * @type {string}
25
+ * @memberof RequestPasswordResetRequest
26
+ */
27
+ email: string;
28
+ }
29
+
30
+ /**
31
+ * Check if a given object implements the RequestPasswordResetRequest interface.
32
+ */
33
+ export function instanceOfRequestPasswordResetRequest(value: object): value is RequestPasswordResetRequest {
34
+ if (!('email' in value) || value['email'] === undefined) return false;
35
+ return true;
36
+ }
37
+
38
+ export function RequestPasswordResetRequestFromJSON(json: any): RequestPasswordResetRequest {
39
+ return RequestPasswordResetRequestFromJSONTyped(json, false);
40
+ }
41
+
42
+ export function RequestPasswordResetRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): RequestPasswordResetRequest {
43
+ if (json == null) {
44
+ return json;
45
+ }
46
+ return {
47
+
48
+ 'email': json['email'],
49
+ };
50
+ }
51
+
52
+ export function RequestPasswordResetRequestToJSON(json: any): RequestPasswordResetRequest {
53
+ return RequestPasswordResetRequestToJSONTyped(json, false);
54
+ }
55
+
56
+ export function RequestPasswordResetRequestToJSONTyped(value?: RequestPasswordResetRequest | null, ignoreDiscriminator: boolean = false): any {
57
+ if (value == null) {
58
+ return value;
59
+ }
60
+
61
+ return {
62
+
63
+ 'email': value['email'],
64
+ };
65
+ }
66
+
package/models/Reserve.ts CHANGED
@@ -20,6 +20,13 @@ import {
20
20
  PlayPriceToJSON,
21
21
  PlayPriceToJSONTyped,
22
22
  } from './PlayPrice';
23
+ import type { PaymentDetail } from './PaymentDetail';
24
+ import {
25
+ PaymentDetailFromJSON,
26
+ PaymentDetailFromJSONTyped,
27
+ PaymentDetailToJSON,
28
+ PaymentDetailToJSONTyped,
29
+ } from './PaymentDetail';
23
30
  import type { PaymentMethod } from './PaymentMethod';
24
31
  import {
25
32
  PaymentMethodFromJSON,
@@ -186,6 +193,12 @@ export interface Reserve {
186
193
  * @memberof Reserve
187
194
  */
188
195
  notes?: string | null;
196
+ /**
197
+ *
198
+ * @type {PaymentDetail}
199
+ * @memberof Reserve
200
+ */
201
+ paymentDetail?: PaymentDetail;
189
202
  }
190
203
 
191
204
 
@@ -248,6 +261,7 @@ export function ReserveFromJSONTyped(json: any, ignoreDiscriminator: boolean): R
248
261
  'subscriptionId': json['subscriptionId'] == null ? undefined : json['subscriptionId'],
249
262
  'paymentMethod': PaymentMethodFromJSON(json['paymentMethod']),
250
263
  'notes': json['notes'] == null ? undefined : json['notes'],
264
+ 'paymentDetail': json['paymentDetail'] == null ? undefined : PaymentDetailFromJSON(json['paymentDetail']),
251
265
  };
252
266
  }
253
267
 
@@ -285,6 +299,7 @@ export function ReserveToJSONTyped(value?: Reserve | null, ignoreDiscriminator:
285
299
  'subscriptionId': value['subscriptionId'],
286
300
  'paymentMethod': PaymentMethodToJSON(value['paymentMethod']),
287
301
  'notes': value['notes'],
302
+ 'paymentDetail': PaymentDetailToJSON(value['paymentDetail']),
288
303
  };
289
304
  }
290
305
 
@@ -24,6 +24,7 @@ export const ReserveType = {
24
24
  Training: 'TRAINING',
25
25
  Birthday: 'BIRTHDAY',
26
26
  Event: 'EVENT',
27
+ Block: 'BLOCK',
27
28
  Other: 'OTHER'
28
29
  } as const;
29
30
  export type ReserveType = typeof ReserveType[keyof typeof ReserveType];
@@ -0,0 +1,66 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Jugar Hoy - API
5
+ * API documentation for Jugar Hoy application
6
+ *
7
+ * The version of the OpenAPI document: 1.5.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface SavePushTokenRequest
20
+ */
21
+ export interface SavePushTokenRequest {
22
+ /**
23
+ * The Expo push token to save
24
+ * @type {string}
25
+ * @memberof SavePushTokenRequest
26
+ */
27
+ token: string;
28
+ }
29
+
30
+ /**
31
+ * Check if a given object implements the SavePushTokenRequest interface.
32
+ */
33
+ export function instanceOfSavePushTokenRequest(value: object): value is SavePushTokenRequest {
34
+ if (!('token' in value) || value['token'] === undefined) return false;
35
+ return true;
36
+ }
37
+
38
+ export function SavePushTokenRequestFromJSON(json: any): SavePushTokenRequest {
39
+ return SavePushTokenRequestFromJSONTyped(json, false);
40
+ }
41
+
42
+ export function SavePushTokenRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): SavePushTokenRequest {
43
+ if (json == null) {
44
+ return json;
45
+ }
46
+ return {
47
+
48
+ 'token': json['token'],
49
+ };
50
+ }
51
+
52
+ export function SavePushTokenRequestToJSON(json: any): SavePushTokenRequest {
53
+ return SavePushTokenRequestToJSONTyped(json, false);
54
+ }
55
+
56
+ export function SavePushTokenRequestToJSONTyped(value?: SavePushTokenRequest | null, ignoreDiscriminator: boolean = false): any {
57
+ if (value == null) {
58
+ return value;
59
+ }
60
+
61
+ return {
62
+
63
+ 'token': value['token'],
64
+ };
65
+ }
66
+
package/models/Sport.ts CHANGED
@@ -18,15 +18,24 @@
18
18
  * @export
19
19
  */
20
20
  export const Sport = {
21
- Tennis: 'TENNIS',
22
- TableTennis: 'TABLE_TENNIS',
21
+ Soccer: 'SOCCER',
23
22
  Paddle: 'PADDLE',
23
+ Tennis: 'TENNIS',
24
24
  Football: 'FOOTBALL',
25
- Soccer: 'SOCCER',
26
- Squash: 'SQUASH',
27
- Basketball: 'BASKETBALL',
25
+ Hockey: 'HOCKEY',
26
+ TableTennis: 'TABLE_TENNIS',
28
27
  Volleyball: 'VOLLEYBALL',
29
- Badminton: 'BADMINTON',
28
+ Basketball: 'BASKETBALL',
29
+ Squash: 'SQUASH',
30
+ CarRacing: 'CAR_RACING',
31
+ Baseball: 'BASEBALL',
32
+ Pool: 'POOL',
33
+ Chess: 'CHESS',
34
+ Rugby: 'RUGBY',
35
+ Handball: 'HANDBALL',
36
+ Golf: 'GOLF',
37
+ Swimming: 'SWIMMING',
38
+ Gym: 'GYM',
30
39
  Other: 'OTHER'
31
40
  } as const;
32
41
  export type Sport = typeof Sport[keyof typeof Sport];