@gtfs-jp/types 4.0.0-beta.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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,mBAAmB,GAC3B,UAAU,GACV,sBAAsB,GACtB,aAAa,GACb,UAAU,GACV,uBAAuB,CAAC;AAE5B,MAAM,MAAM,yBAAyB,GACjC,UAAU,GACV,sBAAsB,GACtB,aAAa,GACb,UAAU,GACV,uBAAuB,GACvB,UAAU,CAAC;AAEf,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,WAAW,CAAC,EAAE,yBAAyB,CAAC;IACxC,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC3B,MAAM,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,mBAAmB,CAAC;IACjC,MAAM,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;CAC/C,CAAC;AAkCF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAieqB,CAAC"}
package/dist/schema.js ADDED
@@ -0,0 +1,514 @@
1
+ const s = () => ({ kind: "string", requirement: "optional" });
2
+ const rs = () => ({ kind: "string", required: true, requirement: "required" });
3
+ const cs = () => ({ kind: "string", requirement: "conditional_required" });
4
+ const cfs = () => ({ kind: "string", requirement: "conditional_forbidden" });
5
+ const recs = () => ({ kind: "string", requirement: "recommended" });
6
+ const nus = () => ({ kind: "string", requirement: "not_used" });
7
+ const n = () => ({ kind: "number", requirement: "optional" });
8
+ const rn = () => ({ kind: "number", required: true, requirement: "required" });
9
+ const cn = () => ({ kind: "number", requirement: "conditional_required" });
10
+ const e = (values) => ({
11
+ values,
12
+ requirement: "optional",
13
+ });
14
+ const re = (values) => ({
15
+ values,
16
+ required: true,
17
+ requirement: "required",
18
+ });
19
+ const ce = (values) => ({
20
+ values,
21
+ requirement: "conditional_required",
22
+ });
23
+ const rece = (values) => ({
24
+ values,
25
+ requirement: "recommended",
26
+ });
27
+ const cfe = (values) => ({
28
+ values,
29
+ requirement: "conditional_forbidden",
30
+ });
31
+ // Based on GTFS JP v4 draft specification (2025-10-01 draft release).
32
+ export const GTFS_JP_V4_SCHEMA = [
33
+ {
34
+ fileName: "feed_info.txt",
35
+ tableName: "feed_info",
36
+ requirement: "required",
37
+ columns: {
38
+ feed_publisher_name: rs(),
39
+ feed_publisher_url: rs(),
40
+ feed_lang: rs(),
41
+ default_lang: s(),
42
+ feed_start_date: rs(),
43
+ feed_end_date: rs(),
44
+ feed_version: rs(),
45
+ feed_contact_email: s(),
46
+ feed_contact_url: s(),
47
+ },
48
+ },
49
+ {
50
+ fileName: "agency.txt",
51
+ tableName: "agency",
52
+ requirement: "required",
53
+ columns: {
54
+ agency_id: rs(),
55
+ agency_name: rs(),
56
+ agency_url: rs(),
57
+ agency_timezone: rs(),
58
+ agency_lang: rs(),
59
+ agency_phone: s(),
60
+ agency_fare_url: s(),
61
+ agency_email: s(),
62
+ },
63
+ },
64
+ {
65
+ fileName: "stops.txt",
66
+ tableName: "stops",
67
+ requirement: "required",
68
+ columns: {
69
+ stop_id: rs(),
70
+ stop_code: s(),
71
+ stop_name: cs(),
72
+ tts_stop_name: nus(),
73
+ stop_desc: s(),
74
+ stop_lat: cn(),
75
+ stop_lon: cn(),
76
+ zone_id: cs(),
77
+ stop_url: s(),
78
+ location_type: n(),
79
+ parent_station: cs(),
80
+ stop_timezone: s(),
81
+ wheelchair_boarding: e([0, 1, 2]),
82
+ level_id: s(),
83
+ platform_code: recs(),
84
+ },
85
+ },
86
+ {
87
+ fileName: "routes.txt",
88
+ tableName: "routes",
89
+ requirement: "required",
90
+ columns: {
91
+ route_id: rs(),
92
+ agency_id: rs(),
93
+ route_short_name: cs(),
94
+ route_long_name: cs(),
95
+ route_desc: s(),
96
+ route_type: rn(),
97
+ route_url: s(),
98
+ route_color: recs(),
99
+ route_text_color: recs(),
100
+ route_sort_order: n(),
101
+ continuous_pickup: cfe([0, 1, 2, 3]),
102
+ continuous_drop_off: cfe([0, 1, 2, 3]),
103
+ network_id: nus(),
104
+ jp_parent_route_id: s(),
105
+ },
106
+ },
107
+ {
108
+ fileName: "trips.txt",
109
+ tableName: "trips",
110
+ requirement: "required",
111
+ columns: {
112
+ route_id: rs(),
113
+ service_id: rs(),
114
+ trip_id: rs(),
115
+ trip_headsign: s(),
116
+ trip_short_name: s(),
117
+ direction_id: ce([0, 1]),
118
+ block_id: s(),
119
+ shape_id: cs(),
120
+ wheelchair_accessible: e([0, 1, 2, 3, 4]),
121
+ bikes_allowed: e([0, 1, 2]),
122
+ cars_allowed: e([0, 1, 2]),
123
+ jp_trip_desc: s(),
124
+ jp_trip_desc_symbol: s(),
125
+ jp_pattern_id: s(),
126
+ jp_office_id: s(),
127
+ },
128
+ },
129
+ {
130
+ fileName: "stop_times.txt",
131
+ tableName: "stop_times",
132
+ requirement: "required",
133
+ columns: {
134
+ trip_id: rs(),
135
+ arrival_time: cs(),
136
+ departure_time: cs(),
137
+ stop_id: cs(),
138
+ location_group_id: cfs(),
139
+ location_id: cfs(),
140
+ stop_sequence: rn(),
141
+ stop_headsign: s(),
142
+ pickup_type: cfe([0, 1, 2, 3]),
143
+ drop_off_type: cfe([0, 1, 2, 3]),
144
+ continuous_pickup: cfe([0, 1, 2, 3]),
145
+ continuous_drop_off: cfe([0, 1, 2, 3]),
146
+ shape_dist_traveled: n(),
147
+ timepoint: rece([0, 1]),
148
+ start_pickup_drop_off_window: cs(),
149
+ end_pickup_drop_off_window: cs(),
150
+ pickup_booking_rule_id: s(),
151
+ drop_off_booking_rule_id: s(),
152
+ },
153
+ },
154
+ {
155
+ fileName: "calendar.txt",
156
+ tableName: "calendar",
157
+ requirement: "required",
158
+ columns: {
159
+ service_id: rs(),
160
+ monday: re([0, 1]),
161
+ tuesday: re([0, 1]),
162
+ wednesday: re([0, 1]),
163
+ thursday: re([0, 1]),
164
+ friday: re([0, 1]),
165
+ saturday: re([0, 1]),
166
+ sunday: re([0, 1]),
167
+ start_date: rs(),
168
+ end_date: rs(),
169
+ },
170
+ },
171
+ {
172
+ fileName: "calendar_dates.txt",
173
+ tableName: "calendar_dates",
174
+ requirement: "conditional_required",
175
+ columns: {
176
+ service_id: rs(),
177
+ date: rs(),
178
+ exception_type: re([1, 2]),
179
+ },
180
+ },
181
+ {
182
+ fileName: "fare_attributes.txt",
183
+ tableName: "fare_attributes",
184
+ requirement: "required",
185
+ columns: {
186
+ fare_id: rs(),
187
+ price: rn(),
188
+ currency_type: rs(),
189
+ payment_method: re([0, 1]),
190
+ transfers: re([0, 1, 2]),
191
+ agency_id: rs(),
192
+ transfer_duration: n(),
193
+ ic_price: n(),
194
+ },
195
+ },
196
+ {
197
+ fileName: "fare_rules.txt",
198
+ tableName: "fare_rules",
199
+ requirement: "conditional_required",
200
+ columns: {
201
+ fare_id: rs(),
202
+ route_id: s(),
203
+ origin_id: s(),
204
+ destination_id: s(),
205
+ contains_id: s(),
206
+ },
207
+ },
208
+ {
209
+ fileName: "translations.txt",
210
+ tableName: "translations",
211
+ requirement: "required",
212
+ columns: {
213
+ table_name: rs(),
214
+ field_name: rs(),
215
+ language: rs(),
216
+ translation: rs(),
217
+ record_id: s(),
218
+ record_sub_id: s(),
219
+ field_value: s(),
220
+ },
221
+ },
222
+ {
223
+ fileName: "shapes.txt",
224
+ tableName: "shapes",
225
+ requirement: "recommended",
226
+ columns: {
227
+ shape_id: rs(),
228
+ shape_pt_lat: rn(),
229
+ shape_pt_lon: rn(),
230
+ shape_pt_sequence: rn(),
231
+ shape_dist_traveled: n(),
232
+ },
233
+ },
234
+ {
235
+ fileName: "attributions.txt",
236
+ tableName: "attributions",
237
+ requirement: "recommended",
238
+ columns: {
239
+ attribution_id: s(),
240
+ agency_id: s(),
241
+ route_id: s(),
242
+ trip_id: s(),
243
+ organization_name: rs(),
244
+ is_producer: ce([0, 1]),
245
+ is_operator: ce([0, 1]),
246
+ is_authority: ce([0, 1]),
247
+ attribution_url: s(),
248
+ attribution_email: s(),
249
+ attribution_phone: s(),
250
+ },
251
+ },
252
+ {
253
+ fileName: "transfers.txt",
254
+ tableName: "transfers",
255
+ requirement: "recommended",
256
+ columns: {
257
+ from_stop_id: cs(),
258
+ to_stop_id: cs(),
259
+ from_route_id: s(),
260
+ to_route_id: s(),
261
+ from_trip_id: cs(),
262
+ to_trip_id: cs(),
263
+ transfer_type: re([0, 1, 2, 3, 4, 5]),
264
+ min_transfer_time: cn(),
265
+ },
266
+ },
267
+ {
268
+ fileName: "frequencies.txt",
269
+ tableName: "frequencies",
270
+ requirement: "optional",
271
+ columns: {
272
+ trip_id: rs(),
273
+ start_time: rs(),
274
+ end_time: rs(),
275
+ headway_secs: rn(),
276
+ exact_times: e([0, 1]),
277
+ },
278
+ },
279
+ {
280
+ fileName: "pathways.txt",
281
+ tableName: "pathways",
282
+ requirement: "optional",
283
+ columns: {
284
+ pathway_id: rs(),
285
+ from_stop_id: rs(),
286
+ to_stop_id: rs(),
287
+ pathway_mode: re([1, 2, 3, 4, 5, 6, 7]),
288
+ is_bidirectional: re([0, 1]),
289
+ length: n(),
290
+ traversal_time: n(),
291
+ stair_count: n(),
292
+ max_slope: n(),
293
+ min_width: n(),
294
+ signposted_as: s(),
295
+ reversed_signposted_as: s(),
296
+ },
297
+ },
298
+ {
299
+ fileName: "levels.txt",
300
+ tableName: "levels",
301
+ requirement: "optional",
302
+ columns: {
303
+ level_id: rs(),
304
+ level_index: rn(),
305
+ level_name: s(),
306
+ },
307
+ },
308
+ {
309
+ fileName: "location_groups.txt",
310
+ tableName: "location_groups",
311
+ requirement: "optional",
312
+ columns: {
313
+ location_group_id: rs(),
314
+ location_group_name: s(),
315
+ },
316
+ },
317
+ {
318
+ fileName: "location_group_stops.txt",
319
+ tableName: "location_group_stops",
320
+ requirement: "optional",
321
+ columns: {
322
+ location_group_id: rs(),
323
+ stop_id: rs(),
324
+ },
325
+ },
326
+ {
327
+ fileName: "locations.geojson",
328
+ tableName: "locations_geojson",
329
+ requirement: "optional",
330
+ format: "geojson",
331
+ columns: {},
332
+ },
333
+ {
334
+ fileName: "booking_rules.txt",
335
+ tableName: "booking_rules",
336
+ requirement: "optional",
337
+ columns: {
338
+ booking_rule_id: rs(),
339
+ booking_type: re([0, 1, 2]),
340
+ prior_notice_duration_min: n(),
341
+ prior_notice_duration_max: n(),
342
+ prior_notice_last_day: n(),
343
+ prior_notice_last_time: s(),
344
+ prior_notice_start_day: n(),
345
+ prior_notice_start_time: s(),
346
+ prior_notice_service_id: s(),
347
+ message: s(),
348
+ pickup_message: s(),
349
+ drop_off_message: s(),
350
+ phone_number: s(),
351
+ info_url: s(),
352
+ booking_url: s(),
353
+ },
354
+ },
355
+ {
356
+ fileName: "timeframes.txt",
357
+ tableName: "timeframes",
358
+ requirement: "optional",
359
+ columns: {
360
+ timeframe_group_id: rs(),
361
+ start_time: cs(),
362
+ end_time: cs(),
363
+ service_id: rs(),
364
+ },
365
+ },
366
+ {
367
+ fileName: "rider_categories.txt",
368
+ tableName: "rider_categories",
369
+ requirement: "optional",
370
+ columns: {
371
+ rider_category_id: rs(),
372
+ rider_category_name: rs(),
373
+ is_default_fare_category: re([0, 1]),
374
+ eligibility_url: s(),
375
+ },
376
+ },
377
+ {
378
+ fileName: "fare_media.txt",
379
+ tableName: "fare_media",
380
+ requirement: "optional",
381
+ columns: {
382
+ fare_media_id: rs(),
383
+ fare_media_name: s(),
384
+ fare_media_type: re([0, 1, 2, 3, 4]),
385
+ },
386
+ },
387
+ {
388
+ fileName: "fare_products.txt",
389
+ tableName: "fare_products",
390
+ requirement: "optional",
391
+ columns: {
392
+ fare_product_id: rs(),
393
+ fare_product_name: s(),
394
+ rider_category_id: s(),
395
+ fare_media_id: s(),
396
+ amount: rn(),
397
+ currency: rs(),
398
+ },
399
+ },
400
+ {
401
+ fileName: "fare_leg_rules.txt",
402
+ tableName: "fare_leg_rules",
403
+ requirement: "optional",
404
+ columns: {
405
+ leg_group_id: s(),
406
+ network_id: s(),
407
+ from_area_id: s(),
408
+ to_area_id: s(),
409
+ from_timeframe_group_id: s(),
410
+ to_timeframe_group_id: s(),
411
+ fare_product_id: rs(),
412
+ rule_priority: n(),
413
+ },
414
+ },
415
+ {
416
+ fileName: "fare_leg_join_rules.txt",
417
+ tableName: "fare_leg_join_rules",
418
+ requirement: "optional",
419
+ columns: {
420
+ from_network_id: rs(),
421
+ to_network_id: rs(),
422
+ from_stop_id: cs(),
423
+ to_stop_id: cs(),
424
+ },
425
+ },
426
+ {
427
+ fileName: "fare_transfer_rules.txt",
428
+ tableName: "fare_transfer_rules",
429
+ requirement: "optional",
430
+ columns: {
431
+ from_leg_group_id: s(),
432
+ to_leg_group_id: s(),
433
+ transfer_count: n(),
434
+ duration_limit: n(),
435
+ duration_limit_type: ce([0, 1, 2, 3]),
436
+ fare_transfer_type: re([0, 1, 2]),
437
+ fare_product_id: s(),
438
+ },
439
+ },
440
+ {
441
+ fileName: "areas.txt",
442
+ tableName: "areas",
443
+ requirement: "optional",
444
+ columns: {
445
+ area_id: rs(),
446
+ area_name: s(),
447
+ },
448
+ },
449
+ {
450
+ fileName: "stop_areas.txt",
451
+ tableName: "stop_areas",
452
+ requirement: "optional",
453
+ columns: {
454
+ area_id: rs(),
455
+ stop_id: rs(),
456
+ },
457
+ },
458
+ {
459
+ fileName: "networks.txt",
460
+ tableName: "networks",
461
+ requirement: "conditional_forbidden",
462
+ columns: {
463
+ network_id: rs(),
464
+ network_name: s(),
465
+ },
466
+ },
467
+ {
468
+ fileName: "route_networks.txt",
469
+ tableName: "route_networks",
470
+ requirement: "conditional_forbidden",
471
+ columns: {
472
+ network_id: rs(),
473
+ route_id: rs(),
474
+ },
475
+ },
476
+ // Legacy GTFS-JP v3 extensions kept for backward compatibility.
477
+ {
478
+ fileName: "agency_jp.txt",
479
+ tableName: "agency_jp",
480
+ requirement: "optional",
481
+ columns: {
482
+ agency_id: rs(),
483
+ agency_official_name: s(),
484
+ agency_zip_number: s(),
485
+ agency_address: s(),
486
+ agency_president_pos: s(),
487
+ agency_president_name: s(),
488
+ },
489
+ },
490
+ {
491
+ fileName: "office_jp.txt",
492
+ tableName: "office_jp",
493
+ requirement: "optional",
494
+ columns: {
495
+ office_id: rs(),
496
+ office_name: rs(),
497
+ office_url: s(),
498
+ office_phone: s(),
499
+ },
500
+ },
501
+ {
502
+ fileName: "pattern_jp.txt",
503
+ tableName: "pattern_jp",
504
+ requirement: "optional",
505
+ columns: {
506
+ jp_pattern_id: rs(),
507
+ route_update_date: s(),
508
+ origin_stop: s(),
509
+ via_stop: s(),
510
+ destination_stop: s(),
511
+ },
512
+ },
513
+ ];
514
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ import type { GTFS_JP_V4_SCHEMA, GtfsJpV4ColumnSchema, GtfsJpV4Requirement } from "./schema.js";
2
+ export type GtfsScalar = string | number | null | undefined;
3
+ export type GtfsRow = Record<string, GtfsScalar>;
4
+ export type GtfsId = string;
5
+ export type GtfsText = string;
6
+ export type GtfsDate = string;
7
+ export type GtfsTime = string;
8
+ export type GtfsUrl = string;
9
+ export type GtfsEmail = string;
10
+ export type GtfsPhoneNumber = string;
11
+ export type GtfsTimezone = string;
12
+ export type GtfsLanguageCode = string;
13
+ export type GtfsCurrencyCode = string;
14
+ export type GtfsColor = string;
15
+ export type BinaryFlag = 0 | 1;
16
+ export type GtfsJpV4SchemaEntry = (typeof GTFS_JP_V4_SCHEMA)[number];
17
+ export type GtfsJpV4TableName = GtfsJpV4SchemaEntry["tableName"];
18
+ export type GtfsJpV4FileName = GtfsJpV4SchemaEntry["fileName"];
19
+ export type GtfsJpV4Format = Extract<GtfsJpV4SchemaEntry, {
20
+ format: unknown;
21
+ }>["format"];
22
+ export type GtfsJpV4TableRequirement = GtfsJpV4Requirement;
23
+ export type GtfsJpV4SchemaEntryByName<TName extends GtfsJpV4TableName> = Extract<GtfsJpV4SchemaEntry, {
24
+ tableName: TName;
25
+ }>;
26
+ export type GtfsJpV4ColumnsByTableName<TName extends GtfsJpV4TableName> = GtfsJpV4SchemaEntryByName<TName>["columns"];
27
+ type ValueFromColumn<C extends GtfsJpV4ColumnSchema> = C["values"] extends readonly (infer TValue)[] ? TValue : C["kind"] extends "number" ? number : string;
28
+ type ColumnNames<TColumns extends Record<string, GtfsJpV4ColumnSchema>> = Extract<keyof TColumns, string>;
29
+ type RequiredColumnNames<TColumns extends Record<string, GtfsJpV4ColumnSchema>> = {
30
+ [K in ColumnNames<TColumns>]: TColumns[K]["required"] extends true ? K : never;
31
+ }[ColumnNames<TColumns>];
32
+ type OptionalColumnNames<TColumns extends Record<string, GtfsJpV4ColumnSchema>> = Exclude<ColumnNames<TColumns>, RequiredColumnNames<TColumns>>;
33
+ export type RowFromColumns<TColumns extends Record<string, GtfsJpV4ColumnSchema>> = GtfsRow & {
34
+ [K in RequiredColumnNames<TColumns>]: ValueFromColumn<TColumns[K]>;
35
+ } & {
36
+ [K in OptionalColumnNames<TColumns>]?: ValueFromColumn<TColumns[K]>;
37
+ };
38
+ export type GtfsJpV4TableRow<TName extends GtfsJpV4TableName> = RowFromColumns<GtfsJpV4ColumnsByTableName<TName>>;
39
+ export type GtfsJpV4TypedRows = {
40
+ [TName in GtfsJpV4TableName]: GtfsJpV4TableRow<TName>;
41
+ };
42
+ export {};
43
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
package/package.json ADDED
@@ -0,0 +1,42 @@
1
+ {
2
+ "name": "@gtfs-jp/types",
3
+ "version": "4.0.0-beta.2",
4
+ "description": "GTFS-JP v4 table schema and type definitions for TypeScript",
5
+ "type": "module",
6
+ "license": "MIT",
7
+ "author": "Kai-Z-JP",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "https://github.com/Kai-Z-JP/gtfs-jp-ts.git",
11
+ "directory": "packages/types"
12
+ },
13
+ "homepage": "https://github.com/Kai-Z-JP/gtfs-jp-ts/tree/main/packages/types",
14
+ "keywords": [
15
+ "gtfs",
16
+ "gtfs-jp",
17
+ "typescript",
18
+ "types",
19
+ "schema",
20
+ "transit",
21
+ "japan"
22
+ ],
23
+ "sideEffects": false,
24
+ "exports": {
25
+ ".": {
26
+ "types": "./dist/index.d.ts",
27
+ "import": "./dist/index.js"
28
+ }
29
+ },
30
+ "types": "./dist/index.d.ts",
31
+ "files": [
32
+ "dist"
33
+ ],
34
+ "publishConfig": {
35
+ "access": "public"
36
+ },
37
+ "scripts": {
38
+ "build": "tsc -p tsconfig.json",
39
+ "typecheck": "tsc -p tsconfig.json --noEmit",
40
+ "test": "vitest run"
41
+ }
42
+ }