bengaluru-transit 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +507 -0
  3. package/dist/api/info.d.ts +77 -0
  4. package/dist/api/info.d.ts.map +1 -0
  5. package/dist/api/info.js +197 -0
  6. package/dist/api/info.js.map +1 -0
  7. package/dist/api/locations.d.ts +26 -0
  8. package/dist/api/locations.d.ts.map +1 -0
  9. package/dist/api/locations.js +57 -0
  10. package/dist/api/locations.js.map +1 -0
  11. package/dist/api/routes.d.ts +341 -0
  12. package/dist/api/routes.d.ts.map +1 -0
  13. package/dist/api/routes.js +1133 -0
  14. package/dist/api/routes.js.map +1 -0
  15. package/dist/api/stops.d.ts +92 -0
  16. package/dist/api/stops.d.ts.map +1 -0
  17. package/dist/api/stops.js +237 -0
  18. package/dist/api/stops.js.map +1 -0
  19. package/dist/api/vehicles.d.ts +49 -0
  20. package/dist/api/vehicles.d.ts.map +1 -0
  21. package/dist/api/vehicles.js +154 -0
  22. package/dist/api/vehicles.js.map +1 -0
  23. package/dist/client/base-client.d.ts +52 -0
  24. package/dist/client/base-client.d.ts.map +1 -0
  25. package/dist/client/base-client.js +76 -0
  26. package/dist/client/base-client.js.map +1 -0
  27. package/dist/client/transit-client.d.ts +91 -0
  28. package/dist/client/transit-client.d.ts.map +1 -0
  29. package/dist/client/transit-client.js +98 -0
  30. package/dist/client/transit-client.js.map +1 -0
  31. package/dist/constants/api.d.ts +16 -0
  32. package/dist/constants/api.d.ts.map +1 -0
  33. package/dist/constants/api.js +16 -0
  34. package/dist/constants/api.js.map +1 -0
  35. package/dist/constants/routes.d.ts +16 -0
  36. package/dist/constants/routes.d.ts.map +1 -0
  37. package/dist/constants/routes.js +16 -0
  38. package/dist/constants/routes.js.map +1 -0
  39. package/dist/index.d.ts +11 -0
  40. package/dist/index.d.ts.map +1 -0
  41. package/dist/index.js +10 -0
  42. package/dist/index.js.map +1 -0
  43. package/dist/schemas/common.d.ts +34 -0
  44. package/dist/schemas/common.d.ts.map +1 -0
  45. package/dist/schemas/common.js +20 -0
  46. package/dist/schemas/common.js.map +1 -0
  47. package/dist/schemas/index.d.ts +7 -0
  48. package/dist/schemas/index.d.ts.map +1 -0
  49. package/dist/schemas/index.js +7 -0
  50. package/dist/schemas/index.js.map +1 -0
  51. package/dist/schemas/info.d.ts +390 -0
  52. package/dist/schemas/info.d.ts.map +1 -0
  53. package/dist/schemas/info.js +110 -0
  54. package/dist/schemas/info.js.map +1 -0
  55. package/dist/schemas/locations.d.ts +84 -0
  56. package/dist/schemas/locations.d.ts.map +1 -0
  57. package/dist/schemas/locations.js +31 -0
  58. package/dist/schemas/locations.js.map +1 -0
  59. package/dist/schemas/routes.d.ts +3967 -0
  60. package/dist/schemas/routes.d.ts.map +1 -0
  61. package/dist/schemas/routes.js +532 -0
  62. package/dist/schemas/routes.js.map +1 -0
  63. package/dist/schemas/stops.d.ts +543 -0
  64. package/dist/schemas/stops.d.ts.map +1 -0
  65. package/dist/schemas/stops.js +129 -0
  66. package/dist/schemas/stops.js.map +1 -0
  67. package/dist/schemas/vehicles.d.ts +602 -0
  68. package/dist/schemas/vehicles.d.ts.map +1 -0
  69. package/dist/schemas/vehicles.js +116 -0
  70. package/dist/schemas/vehicles.js.map +1 -0
  71. package/dist/types/api.d.ts +9 -0
  72. package/dist/types/api.d.ts.map +1 -0
  73. package/dist/types/api.js +5 -0
  74. package/dist/types/api.js.map +1 -0
  75. package/dist/types/coordinates.d.ts +7 -0
  76. package/dist/types/coordinates.d.ts.map +1 -0
  77. package/dist/types/coordinates.js +2 -0
  78. package/dist/types/coordinates.js.map +1 -0
  79. package/dist/types/geojson.d.ts +84 -0
  80. package/dist/types/geojson.d.ts.map +1 -0
  81. package/dist/types/geojson.js +2 -0
  82. package/dist/types/geojson.js.map +1 -0
  83. package/dist/types/index.d.ts +16 -0
  84. package/dist/types/index.d.ts.map +1 -0
  85. package/dist/types/index.js +12 -0
  86. package/dist/types/index.js.map +1 -0
  87. package/dist/types/info.d.ts +133 -0
  88. package/dist/types/info.d.ts.map +1 -0
  89. package/dist/types/info.js +5 -0
  90. package/dist/types/info.js.map +1 -0
  91. package/dist/types/locations.d.ts +59 -0
  92. package/dist/types/locations.d.ts.map +1 -0
  93. package/dist/types/locations.js +5 -0
  94. package/dist/types/locations.js.map +1 -0
  95. package/dist/types/routes.d.ts +1137 -0
  96. package/dist/types/routes.d.ts.map +1 -0
  97. package/dist/types/routes.js +14 -0
  98. package/dist/types/routes.js.map +1 -0
  99. package/dist/types/stops.d.ts +286 -0
  100. package/dist/types/stops.d.ts.map +1 -0
  101. package/dist/types/stops.js +26 -0
  102. package/dist/types/stops.js.map +1 -0
  103. package/dist/types/vehicles.d.ts +138 -0
  104. package/dist/types/vehicles.d.ts.map +1 -0
  105. package/dist/types/vehicles.js +5 -0
  106. package/dist/types/vehicles.js.map +1 -0
  107. package/dist/utils/date.d.ts +35 -0
  108. package/dist/utils/date.d.ts.map +1 -0
  109. package/dist/utils/date.js +49 -0
  110. package/dist/utils/date.js.map +1 -0
  111. package/dist/utils/errors.d.ts +34 -0
  112. package/dist/utils/errors.d.ts.map +1 -0
  113. package/dist/utils/errors.js +41 -0
  114. package/dist/utils/errors.js.map +1 -0
  115. package/dist/utils/geojson.d.ts +36 -0
  116. package/dist/utils/geojson.d.ts.map +1 -0
  117. package/dist/utils/geojson.js +115 -0
  118. package/dist/utils/geojson.js.map +1 -0
  119. package/dist/utils/validation.d.ts +40 -0
  120. package/dist/utils/validation.d.ts.map +1 -0
  121. package/dist/utils/validation.js +62 -0
  122. package/dist/utils/validation.js.map +1 -0
  123. package/package.json +77 -0
@@ -0,0 +1,543 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * Zod schemas for stop/station-related endpoints
4
+ */
5
+ /**
6
+ * Schema for raw facility item from AroundBusStops API
7
+ */
8
+ export declare const rawFacilityItemSchema: z.ZodObject<{
9
+ name: z.ZodString;
10
+ latitude: z.ZodString;
11
+ longitude: z.ZodString;
12
+ distance: z.ZodString;
13
+ }, "strip", z.ZodTypeAny, {
14
+ latitude: string;
15
+ longitude: string;
16
+ distance: string;
17
+ name: string;
18
+ }, {
19
+ latitude: string;
20
+ longitude: string;
21
+ distance: string;
22
+ name: string;
23
+ }>;
24
+ /**
25
+ * Schema for raw facility type group from AroundBusStops API
26
+ */
27
+ export declare const rawFacilityTypeGroupSchema: z.ZodObject<{
28
+ type: z.ZodString;
29
+ typeid: z.ZodString;
30
+ icon: z.ZodString;
31
+ list: z.ZodArray<z.ZodObject<{
32
+ name: z.ZodString;
33
+ latitude: z.ZodString;
34
+ longitude: z.ZodString;
35
+ distance: z.ZodString;
36
+ }, "strip", z.ZodTypeAny, {
37
+ latitude: string;
38
+ longitude: string;
39
+ distance: string;
40
+ name: string;
41
+ }, {
42
+ latitude: string;
43
+ longitude: string;
44
+ distance: string;
45
+ name: string;
46
+ }>, "many">;
47
+ }, "strip", z.ZodTypeAny, {
48
+ type: string;
49
+ icon: string;
50
+ typeid: string;
51
+ list: {
52
+ latitude: string;
53
+ longitude: string;
54
+ distance: string;
55
+ name: string;
56
+ }[];
57
+ }, {
58
+ type: string;
59
+ icon: string;
60
+ typeid: string;
61
+ list: {
62
+ latitude: string;
63
+ longitude: string;
64
+ distance: string;
65
+ name: string;
66
+ }[];
67
+ }>;
68
+ /**
69
+ * Schema for raw station data item from AroundBusStops API
70
+ */
71
+ export declare const rawStationDataItemSchema: z.ZodObject<{
72
+ stationname: z.ZodString;
73
+ distance: z.ZodString;
74
+ Arounds: z.ZodArray<z.ZodObject<{
75
+ type: z.ZodString;
76
+ typeid: z.ZodString;
77
+ icon: z.ZodString;
78
+ list: z.ZodArray<z.ZodObject<{
79
+ name: z.ZodString;
80
+ latitude: z.ZodString;
81
+ longitude: z.ZodString;
82
+ distance: z.ZodString;
83
+ }, "strip", z.ZodTypeAny, {
84
+ latitude: string;
85
+ longitude: string;
86
+ distance: string;
87
+ name: string;
88
+ }, {
89
+ latitude: string;
90
+ longitude: string;
91
+ distance: string;
92
+ name: string;
93
+ }>, "many">;
94
+ }, "strip", z.ZodTypeAny, {
95
+ type: string;
96
+ icon: string;
97
+ typeid: string;
98
+ list: {
99
+ latitude: string;
100
+ longitude: string;
101
+ distance: string;
102
+ name: string;
103
+ }[];
104
+ }, {
105
+ type: string;
106
+ icon: string;
107
+ typeid: string;
108
+ list: {
109
+ latitude: string;
110
+ longitude: string;
111
+ distance: string;
112
+ name: string;
113
+ }[];
114
+ }>, "many">;
115
+ }, "strip", z.ZodTypeAny, {
116
+ stationname: string;
117
+ distance: string;
118
+ Arounds: {
119
+ type: string;
120
+ icon: string;
121
+ typeid: string;
122
+ list: {
123
+ latitude: string;
124
+ longitude: string;
125
+ distance: string;
126
+ name: string;
127
+ }[];
128
+ }[];
129
+ }, {
130
+ stationname: string;
131
+ distance: string;
132
+ Arounds: {
133
+ type: string;
134
+ icon: string;
135
+ typeid: string;
136
+ list: {
137
+ latitude: string;
138
+ longitude: string;
139
+ distance: string;
140
+ name: string;
141
+ }[];
142
+ }[];
143
+ }>;
144
+ /**
145
+ * Schema for raw around bus stops API response from BMTC API
146
+ */
147
+ export declare const rawAroundBusStopsResponseSchema: z.ZodObject<{
148
+ data: z.ZodArray<z.ZodObject<{
149
+ stationname: z.ZodString;
150
+ distance: z.ZodString;
151
+ Arounds: z.ZodArray<z.ZodObject<{
152
+ type: z.ZodString;
153
+ typeid: z.ZodString;
154
+ icon: z.ZodString;
155
+ list: z.ZodArray<z.ZodObject<{
156
+ name: z.ZodString;
157
+ latitude: z.ZodString;
158
+ longitude: z.ZodString;
159
+ distance: z.ZodString;
160
+ }, "strip", z.ZodTypeAny, {
161
+ latitude: string;
162
+ longitude: string;
163
+ distance: string;
164
+ name: string;
165
+ }, {
166
+ latitude: string;
167
+ longitude: string;
168
+ distance: string;
169
+ name: string;
170
+ }>, "many">;
171
+ }, "strip", z.ZodTypeAny, {
172
+ type: string;
173
+ icon: string;
174
+ typeid: string;
175
+ list: {
176
+ latitude: string;
177
+ longitude: string;
178
+ distance: string;
179
+ name: string;
180
+ }[];
181
+ }, {
182
+ type: string;
183
+ icon: string;
184
+ typeid: string;
185
+ list: {
186
+ latitude: string;
187
+ longitude: string;
188
+ distance: string;
189
+ name: string;
190
+ }[];
191
+ }>, "many">;
192
+ }, "strip", z.ZodTypeAny, {
193
+ stationname: string;
194
+ distance: string;
195
+ Arounds: {
196
+ type: string;
197
+ icon: string;
198
+ typeid: string;
199
+ list: {
200
+ latitude: string;
201
+ longitude: string;
202
+ distance: string;
203
+ name: string;
204
+ }[];
205
+ }[];
206
+ }, {
207
+ stationname: string;
208
+ distance: string;
209
+ Arounds: {
210
+ type: string;
211
+ icon: string;
212
+ typeid: string;
213
+ list: {
214
+ latitude: string;
215
+ longitude: string;
216
+ distance: string;
217
+ name: string;
218
+ }[];
219
+ }[];
220
+ }>, "many">;
221
+ Message: z.ZodString;
222
+ Issuccess: z.ZodBoolean;
223
+ exception: z.ZodOptional<z.ZodNullable<z.ZodUnknown>>;
224
+ RowCount: z.ZodNumber;
225
+ responsecode: z.ZodNumber;
226
+ }, "strip", z.ZodTypeAny, {
227
+ data: {
228
+ stationname: string;
229
+ distance: string;
230
+ Arounds: {
231
+ type: string;
232
+ icon: string;
233
+ typeid: string;
234
+ list: {
235
+ latitude: string;
236
+ longitude: string;
237
+ distance: string;
238
+ name: string;
239
+ }[];
240
+ }[];
241
+ }[];
242
+ responsecode: number;
243
+ Message: string;
244
+ Issuccess: boolean;
245
+ RowCount: number;
246
+ exception?: unknown;
247
+ }, {
248
+ data: {
249
+ stationname: string;
250
+ distance: string;
251
+ Arounds: {
252
+ type: string;
253
+ icon: string;
254
+ typeid: string;
255
+ list: {
256
+ latitude: string;
257
+ longitude: string;
258
+ distance: string;
259
+ name: string;
260
+ }[];
261
+ }[];
262
+ }[];
263
+ responsecode: number;
264
+ Message: string;
265
+ Issuccess: boolean;
266
+ RowCount: number;
267
+ exception?: unknown;
268
+ }>;
269
+ /**
270
+ * Schema for around bus stops request parameters
271
+ */
272
+ export declare const aroundBusStopsParamsSchema: z.ZodObject<{
273
+ latitude: z.ZodNumber;
274
+ longitude: z.ZodNumber;
275
+ }, "strip", z.ZodTypeAny, {
276
+ latitude: number;
277
+ longitude: number;
278
+ }, {
279
+ latitude: number;
280
+ longitude: number;
281
+ }>;
282
+ /**
283
+ * Schema for raw nearby bus stop item from FindNearByBusStop_v2 API
284
+ */
285
+ export declare const rawNearbyBusStopItemSchema: z.ZodObject<{
286
+ srno: z.ZodNumber;
287
+ routeno: z.ZodString;
288
+ routeid: z.ZodNumber;
289
+ center_lat: z.ZodNumber;
290
+ center_lon: z.ZodNumber;
291
+ responsecode: z.ZodNumber;
292
+ routetypeid: z.ZodString;
293
+ routename: z.ZodString;
294
+ route: z.ZodString;
295
+ }, "strip", z.ZodTypeAny, {
296
+ responsecode: number;
297
+ routeno: string;
298
+ routename: string;
299
+ routeid: number;
300
+ srno: number;
301
+ center_lat: number;
302
+ center_lon: number;
303
+ routetypeid: string;
304
+ route: string;
305
+ }, {
306
+ responsecode: number;
307
+ routeno: string;
308
+ routename: string;
309
+ routeid: number;
310
+ srno: number;
311
+ center_lat: number;
312
+ center_lon: number;
313
+ routetypeid: string;
314
+ route: string;
315
+ }>;
316
+ /**
317
+ * Schema for raw nearby bus stops API response from FindNearByBusStop_v2
318
+ */
319
+ export declare const rawNearbyBusStopsResponseSchema: z.ZodObject<{
320
+ data: z.ZodArray<z.ZodObject<{
321
+ srno: z.ZodNumber;
322
+ routeno: z.ZodString;
323
+ routeid: z.ZodNumber;
324
+ center_lat: z.ZodNumber;
325
+ center_lon: z.ZodNumber;
326
+ responsecode: z.ZodNumber;
327
+ routetypeid: z.ZodString;
328
+ routename: z.ZodString;
329
+ route: z.ZodString;
330
+ }, "strip", z.ZodTypeAny, {
331
+ responsecode: number;
332
+ routeno: string;
333
+ routename: string;
334
+ routeid: number;
335
+ srno: number;
336
+ center_lat: number;
337
+ center_lon: number;
338
+ routetypeid: string;
339
+ route: string;
340
+ }, {
341
+ responsecode: number;
342
+ routeno: string;
343
+ routename: string;
344
+ routeid: number;
345
+ srno: number;
346
+ center_lat: number;
347
+ center_lon: number;
348
+ routetypeid: string;
349
+ route: string;
350
+ }>, "many">;
351
+ Message: z.ZodString;
352
+ Issuccess: z.ZodBoolean;
353
+ exception: z.ZodOptional<z.ZodNullable<z.ZodUnknown>>;
354
+ RowCount: z.ZodNumber;
355
+ responsecode: z.ZodNumber;
356
+ }, "strip", z.ZodTypeAny, {
357
+ data: {
358
+ responsecode: number;
359
+ routeno: string;
360
+ routename: string;
361
+ routeid: number;
362
+ srno: number;
363
+ center_lat: number;
364
+ center_lon: number;
365
+ routetypeid: string;
366
+ route: string;
367
+ }[];
368
+ responsecode: number;
369
+ Message: string;
370
+ Issuccess: boolean;
371
+ RowCount: number;
372
+ exception?: unknown;
373
+ }, {
374
+ data: {
375
+ responsecode: number;
376
+ routeno: string;
377
+ routename: string;
378
+ routeid: number;
379
+ srno: number;
380
+ center_lat: number;
381
+ center_lon: number;
382
+ routetypeid: string;
383
+ route: string;
384
+ }[];
385
+ responsecode: number;
386
+ Message: string;
387
+ Issuccess: boolean;
388
+ RowCount: number;
389
+ exception?: unknown;
390
+ }>;
391
+ /**
392
+ * Schema for nearby bus stops request parameters (internal - validates after conversion)
393
+ */
394
+ export declare const nearbyBusStopsParamsSchema: z.ZodObject<{
395
+ stationname: z.ZodString;
396
+ stationflag: z.ZodNumber;
397
+ }, "strip", z.ZodTypeAny, {
398
+ stationname: string;
399
+ stationflag: number;
400
+ }, {
401
+ stationname: string;
402
+ stationflag: number;
403
+ }>;
404
+ /**
405
+ * Schema for raw nearby station item from NearbyStations_v2 API
406
+ */
407
+ export declare const rawNearbyStationItemSchema: z.ZodObject<{
408
+ rowno: z.ZodNumber;
409
+ geofenceid: z.ZodNumber;
410
+ geofencename: z.ZodString;
411
+ center_lat: z.ZodNumber;
412
+ center_lon: z.ZodNumber;
413
+ towards: z.ZodString;
414
+ distance: z.ZodNumber;
415
+ totalminute: z.ZodNumber;
416
+ responsecode: z.ZodNumber;
417
+ radiuskm: z.ZodNumber;
418
+ }, "strip", z.ZodTypeAny, {
419
+ responsecode: number;
420
+ distance: number;
421
+ center_lat: number;
422
+ center_lon: number;
423
+ rowno: number;
424
+ geofenceid: number;
425
+ geofencename: string;
426
+ towards: string;
427
+ totalminute: number;
428
+ radiuskm: number;
429
+ }, {
430
+ responsecode: number;
431
+ distance: number;
432
+ center_lat: number;
433
+ center_lon: number;
434
+ rowno: number;
435
+ geofenceid: number;
436
+ geofencename: string;
437
+ towards: string;
438
+ totalminute: number;
439
+ radiuskm: number;
440
+ }>;
441
+ /**
442
+ * Schema for raw nearby stations API response from NearbyStations_v2
443
+ */
444
+ export declare const rawNearbyStationsResponseSchema: z.ZodObject<{
445
+ data: z.ZodArray<z.ZodObject<{
446
+ rowno: z.ZodNumber;
447
+ geofenceid: z.ZodNumber;
448
+ geofencename: z.ZodString;
449
+ center_lat: z.ZodNumber;
450
+ center_lon: z.ZodNumber;
451
+ towards: z.ZodString;
452
+ distance: z.ZodNumber;
453
+ totalminute: z.ZodNumber;
454
+ responsecode: z.ZodNumber;
455
+ radiuskm: z.ZodNumber;
456
+ }, "strip", z.ZodTypeAny, {
457
+ responsecode: number;
458
+ distance: number;
459
+ center_lat: number;
460
+ center_lon: number;
461
+ rowno: number;
462
+ geofenceid: number;
463
+ geofencename: string;
464
+ towards: string;
465
+ totalminute: number;
466
+ radiuskm: number;
467
+ }, {
468
+ responsecode: number;
469
+ distance: number;
470
+ center_lat: number;
471
+ center_lon: number;
472
+ rowno: number;
473
+ geofenceid: number;
474
+ geofencename: string;
475
+ towards: string;
476
+ totalminute: number;
477
+ radiuskm: number;
478
+ }>, "many">;
479
+ Message: z.ZodString;
480
+ Issuccess: z.ZodBoolean;
481
+ exception: z.ZodOptional<z.ZodNullable<z.ZodUnknown>>;
482
+ RowCount: z.ZodNumber;
483
+ responsecode: z.ZodNumber;
484
+ }, "strip", z.ZodTypeAny, {
485
+ data: {
486
+ responsecode: number;
487
+ distance: number;
488
+ center_lat: number;
489
+ center_lon: number;
490
+ rowno: number;
491
+ geofenceid: number;
492
+ geofencename: string;
493
+ towards: string;
494
+ totalminute: number;
495
+ radiuskm: number;
496
+ }[];
497
+ responsecode: number;
498
+ Message: string;
499
+ Issuccess: boolean;
500
+ RowCount: number;
501
+ exception?: unknown;
502
+ }, {
503
+ data: {
504
+ responsecode: number;
505
+ distance: number;
506
+ center_lat: number;
507
+ center_lon: number;
508
+ rowno: number;
509
+ geofenceid: number;
510
+ geofencename: string;
511
+ towards: string;
512
+ totalminute: number;
513
+ radiuskm: number;
514
+ }[];
515
+ responsecode: number;
516
+ Message: string;
517
+ Issuccess: boolean;
518
+ RowCount: number;
519
+ exception?: unknown;
520
+ }>;
521
+ /**
522
+ * Schema for nearby stations request parameters
523
+ */
524
+ export declare const nearbyStationsParamsSchema: z.ZodObject<{
525
+ latitude: z.ZodNumber;
526
+ longitude: z.ZodNumber;
527
+ radiuskm: z.ZodNumber;
528
+ stationflag: z.ZodOptional<z.ZodNumber>;
529
+ flexiflag: z.ZodOptional<z.ZodNumber>;
530
+ }, "strip", z.ZodTypeAny, {
531
+ latitude: number;
532
+ longitude: number;
533
+ radiuskm: number;
534
+ stationflag?: number | undefined;
535
+ flexiflag?: number | undefined;
536
+ }, {
537
+ latitude: number;
538
+ longitude: number;
539
+ radiuskm: number;
540
+ stationflag?: number | undefined;
541
+ flexiflag?: number | undefined;
542
+ }>;
543
+ //# sourceMappingURL=stops.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stops.d.ts","sourceRoot":"","sources":["../../src/schemas/stops.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AAEH;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;EAKhC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKrC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAInC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAO1C,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;EASrC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUrC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAO1C,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;EAGrC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWrC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAO1C,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;EAYrC,CAAC"}
@@ -0,0 +1,129 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * Zod schemas for stop/station-related endpoints
4
+ */
5
+ /**
6
+ * Schema for raw facility item from AroundBusStops API
7
+ */
8
+ export const rawFacilityItemSchema = z.object({
9
+ name: z.string(),
10
+ latitude: z.string(),
11
+ longitude: z.string(),
12
+ distance: z.string(),
13
+ });
14
+ /**
15
+ * Schema for raw facility type group from AroundBusStops API
16
+ */
17
+ export const rawFacilityTypeGroupSchema = z.object({
18
+ type: z.string(),
19
+ typeid: z.string(),
20
+ icon: z.string().url(),
21
+ list: z.array(rawFacilityItemSchema),
22
+ });
23
+ /**
24
+ * Schema for raw station data item from AroundBusStops API
25
+ */
26
+ export const rawStationDataItemSchema = z.object({
27
+ stationname: z.string(),
28
+ distance: z.string(),
29
+ Arounds: z.array(rawFacilityTypeGroupSchema),
30
+ });
31
+ /**
32
+ * Schema for raw around bus stops API response from BMTC API
33
+ */
34
+ export const rawAroundBusStopsResponseSchema = z.object({
35
+ data: z.array(rawStationDataItemSchema),
36
+ Message: z.string(),
37
+ Issuccess: z.boolean(),
38
+ exception: z.unknown().nullish(),
39
+ RowCount: z.number(),
40
+ responsecode: z.number(),
41
+ });
42
+ /**
43
+ * Schema for around bus stops request parameters
44
+ */
45
+ export const aroundBusStopsParamsSchema = z.object({
46
+ latitude: z
47
+ .number()
48
+ .min(-90, "Latitude must be between -90 and 90")
49
+ .max(90, "Latitude must be between -90 and 90"),
50
+ longitude: z
51
+ .number()
52
+ .min(-180, "Longitude must be between -180 and 180")
53
+ .max(180, "Longitude must be between -180 and 180"),
54
+ });
55
+ /**
56
+ * Schema for raw nearby bus stop item from FindNearByBusStop_v2 API
57
+ */
58
+ export const rawNearbyBusStopItemSchema = z.object({
59
+ srno: z.number(),
60
+ routeno: z.string(),
61
+ routeid: z.number(),
62
+ center_lat: z.number(),
63
+ center_lon: z.number(),
64
+ responsecode: z.number(),
65
+ routetypeid: z.string(),
66
+ routename: z.string(),
67
+ route: z.string(),
68
+ });
69
+ /**
70
+ * Schema for raw nearby bus stops API response from FindNearByBusStop_v2
71
+ */
72
+ export const rawNearbyBusStopsResponseSchema = z.object({
73
+ data: z.array(rawNearbyBusStopItemSchema),
74
+ Message: z.string(),
75
+ Issuccess: z.boolean(),
76
+ exception: z.unknown().nullish(),
77
+ RowCount: z.number().int().nonnegative(),
78
+ responsecode: z.number().int(),
79
+ });
80
+ /**
81
+ * Schema for nearby bus stops request parameters (internal - validates after conversion)
82
+ */
83
+ export const nearbyBusStopsParamsSchema = z.object({
84
+ stationname: z.string().min(1, "Station name is required"),
85
+ stationflag: z.number().int().positive(), // Converted to number for API
86
+ });
87
+ /**
88
+ * Schema for raw nearby station item from NearbyStations_v2 API
89
+ */
90
+ export const rawNearbyStationItemSchema = z.object({
91
+ rowno: z.number().int().positive(),
92
+ geofenceid: z.number().int().positive(),
93
+ geofencename: z.string(),
94
+ center_lat: z.number(),
95
+ center_lon: z.number(),
96
+ towards: z.string(),
97
+ distance: z.number().nonnegative(),
98
+ totalminute: z.number().nonnegative(),
99
+ responsecode: z.number().int(),
100
+ radiuskm: z.number().nonnegative(),
101
+ });
102
+ /**
103
+ * Schema for raw nearby stations API response from NearbyStations_v2
104
+ */
105
+ export const rawNearbyStationsResponseSchema = z.object({
106
+ data: z.array(rawNearbyStationItemSchema),
107
+ Message: z.string(),
108
+ Issuccess: z.boolean(),
109
+ exception: z.unknown().nullish(),
110
+ RowCount: z.number().int().nonnegative(),
111
+ responsecode: z.number().int(),
112
+ });
113
+ /**
114
+ * Schema for nearby stations request parameters
115
+ */
116
+ export const nearbyStationsParamsSchema = z.object({
117
+ latitude: z
118
+ .number()
119
+ .min(-90, "Latitude must be between -90 and 90")
120
+ .max(90, "Latitude must be between -90 and 90"),
121
+ longitude: z
122
+ .number()
123
+ .min(-180, "Longitude must be between -180 and 180")
124
+ .max(180, "Longitude must be between -180 and 180"),
125
+ radiuskm: z.number().positive("Radius must be positive"), // API expects "radiuskm"
126
+ stationflag: z.number().int().positive().optional(),
127
+ flexiflag: z.number().int().positive().optional(),
128
+ });
129
+ //# sourceMappingURL=stops.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stops.js","sourceRoot":"","sources":["../../src/schemas/stops.ts"],"names":[],"mappings":"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"}