@voyantjs/products 0.52.2 → 0.52.3

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 (62) hide show
  1. package/dist/action-ledger-drift.d.ts +29 -0
  2. package/dist/action-ledger-drift.d.ts.map +1 -0
  3. package/dist/action-ledger-drift.js +335 -0
  4. package/dist/action-ledger.d.ts +104 -0
  5. package/dist/action-ledger.d.ts.map +1 -0
  6. package/dist/action-ledger.js +100 -0
  7. package/dist/booking-extension.d.ts +3 -3
  8. package/dist/events.d.ts +1 -1
  9. package/dist/events.d.ts.map +1 -1
  10. package/dist/route-env.d.ts +22 -0
  11. package/dist/route-env.d.ts.map +1 -0
  12. package/dist/route-env.js +1 -0
  13. package/dist/routes-associations.d.ts +164 -0
  14. package/dist/routes-associations.d.ts.map +1 -0
  15. package/dist/routes-associations.js +100 -0
  16. package/dist/routes-catalog.d.ts +436 -0
  17. package/dist/routes-catalog.d.ts.map +1 -0
  18. package/dist/routes-catalog.js +104 -0
  19. package/dist/routes-configuration.d.ts +773 -0
  20. package/dist/routes-configuration.d.ts.map +1 -0
  21. package/dist/routes-configuration.js +364 -0
  22. package/dist/routes-core.d.ts +302 -0
  23. package/dist/routes-core.d.ts.map +1 -0
  24. package/dist/routes-core.js +79 -0
  25. package/dist/routes-itinerary.d.ts +614 -0
  26. package/dist/routes-itinerary.d.ts.map +1 -0
  27. package/dist/routes-itinerary.js +309 -0
  28. package/dist/routes-maintenance.d.ts +32 -0
  29. package/dist/routes-maintenance.d.ts.map +1 -0
  30. package/dist/routes-maintenance.js +14 -0
  31. package/dist/routes-media.d.ts +634 -0
  32. package/dist/routes-media.d.ts.map +1 -0
  33. package/dist/routes-media.js +245 -0
  34. package/dist/routes-merchandising.d.ts +1108 -0
  35. package/dist/routes-merchandising.d.ts.map +1 -0
  36. package/dist/routes-merchandising.js +376 -0
  37. package/dist/routes-options.d.ts +363 -0
  38. package/dist/routes-options.d.ts.map +1 -0
  39. package/dist/routes-options.js +173 -0
  40. package/dist/routes-public.d.ts +4 -4
  41. package/dist/routes-translations.d.ts +477 -0
  42. package/dist/routes-translations.d.ts.map +1 -0
  43. package/dist/routes-translations.js +258 -0
  44. package/dist/routes.d.ts +417 -355
  45. package/dist/routes.d.ts.map +1 -1
  46. package/dist/routes.js +21 -1133
  47. package/dist/schema-core.d.ts +3 -3
  48. package/dist/schema-itinerary.d.ts +1 -1
  49. package/dist/schema-settings.d.ts +4 -4
  50. package/dist/service-catalog.d.ts +2 -2
  51. package/dist/service-public.d.ts +4 -4
  52. package/dist/service.d.ts +225 -97
  53. package/dist/service.d.ts.map +1 -1
  54. package/dist/service.js +91 -0
  55. package/dist/tasks/brochures.d.ts +1 -1
  56. package/dist/validation-catalog.d.ts +10 -10
  57. package/dist/validation-config.d.ts +17 -17
  58. package/dist/validation-content.d.ts +26 -26
  59. package/dist/validation-core.d.ts +21 -21
  60. package/dist/validation-public.d.ts +25 -25
  61. package/dist/validation-shared.d.ts +11 -11
  62. package/package.json +13 -7
package/dist/routes.d.ts CHANGED
@@ -1,112 +1,6 @@
1
- import type { PostgresJsDatabase } from "drizzle-orm/postgres-js";
2
- type Env = {
3
- Variables: {
4
- db: PostgresJsDatabase;
5
- userId?: string;
6
- eventBus?: import("@voyantjs/core").EventBus;
7
- };
8
- };
9
- export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
10
- "/aggregates": {
11
- $get: {
12
- input: {};
13
- output: {
14
- data: {
15
- total: number;
16
- countsByStatus: {
17
- status: "active" | "draft" | "archived";
18
- count: number;
19
- }[];
20
- active: number;
21
- publicActive: number;
22
- monthlyCreatedCounts: {
23
- yearMonth: string;
24
- count: number;
25
- }[];
26
- };
27
- };
28
- outputFormat: "json";
29
- status: import("hono/utils/http-status").ContentfulStatusCode;
30
- };
31
- };
32
- } & {
33
- "/": {
34
- $get: {
35
- input: {};
36
- output: {
37
- data: {
38
- id: string;
39
- name: string;
40
- status: "active" | "draft" | "archived";
41
- description: string | null;
42
- bookingMode: "date" | "other" | "date_time" | "open" | "stay" | "transfer" | "itinerary";
43
- capacityMode: "free_sale" | "limited" | "on_request";
44
- timezone: string | null;
45
- visibility: "public" | "private" | "hidden";
46
- activated: boolean;
47
- reservationTimeoutMinutes: number | null;
48
- sellCurrency: string;
49
- sellAmountCents: number | null;
50
- costAmountCents: number | null;
51
- marginPercent: number | null;
52
- facilityId: string | null;
53
- supplierId: string | null;
54
- startDate: string | null;
55
- endDate: string | null;
56
- pax: number | null;
57
- productTypeId: string | null;
58
- taxClassId: string | null;
59
- customerPaymentPolicy: import("hono/utils/types").JSONValue;
60
- tags: string[] | null;
61
- createdAt: string;
62
- updatedAt: string;
63
- }[];
64
- total: number;
65
- limit: number;
66
- offset: number;
67
- };
68
- outputFormat: "json";
69
- status: import("hono/utils/http-status").ContentfulStatusCode;
70
- };
71
- };
72
- } & {
73
- "/": {
74
- $post: {
75
- input: {};
76
- output: {
77
- data: {
78
- name: string;
79
- id: string;
80
- createdAt: string;
81
- updatedAt: string;
82
- status: "active" | "draft" | "archived";
83
- startDate: string | null;
84
- endDate: string | null;
85
- timezone: string | null;
86
- description: string | null;
87
- visibility: "public" | "private" | "hidden";
88
- bookingMode: "date" | "other" | "date_time" | "open" | "stay" | "transfer" | "itinerary";
89
- capacityMode: "free_sale" | "limited" | "on_request";
90
- activated: boolean;
91
- productTypeId: string | null;
92
- facilityId: string | null;
93
- supplierId: string | null;
94
- pax: number | null;
95
- reservationTimeoutMinutes: number | null;
96
- sellAmountCents: number | null;
97
- sellCurrency: string;
98
- costAmountCents: number | null;
99
- marginPercent: number | null;
100
- tags: string[] | null;
101
- taxClassId: string | null;
102
- customerPaymentPolicy: import("hono/utils/types").JSONValue;
103
- };
104
- };
105
- outputFormat: "json";
106
- status: 201;
107
- };
108
- };
109
- } & {
1
+ import type { Env } from "./route-env.js";
2
+ export type { Env } from "./route-env.js";
3
+ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, import("hono/types").BlankSchema | import("hono/types").MergeSchemaPath<{
110
4
  "/activation-settings": {
111
5
  $get: {
112
6
  input: {};
@@ -273,7 +167,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
273
167
  id: string;
274
168
  productId: string;
275
169
  fulfillmentMode: "none" | "per_booking" | "per_participant" | "per_item";
276
- defaultDeliveryFormat: "email" | "none" | "voucher" | "ticket" | "pdf" | "qr_code" | "barcode" | "mobile";
170
+ defaultDeliveryFormat: "none" | "voucher" | "ticket" | "pdf" | "qr_code" | "barcode" | "email" | "mobile";
277
171
  ticketPerUnit: boolean;
278
172
  barcodeFormat: string | null;
279
173
  voucherMessage: string | null;
@@ -313,7 +207,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
313
207
  id: string;
314
208
  productId: string;
315
209
  fulfillmentMode: "none" | "per_booking" | "per_participant" | "per_item";
316
- defaultDeliveryFormat: "email" | "none" | "voucher" | "ticket" | "pdf" | "qr_code" | "barcode" | "mobile";
210
+ defaultDeliveryFormat: "none" | "voucher" | "ticket" | "pdf" | "qr_code" | "barcode" | "email" | "mobile";
317
211
  ticketPerUnit: boolean;
318
212
  barcodeFormat: string | null;
319
213
  voucherMessage: string | null;
@@ -352,7 +246,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
352
246
  updatedAt: string;
353
247
  productId: string;
354
248
  fulfillmentMode: "none" | "per_booking" | "per_participant" | "per_item";
355
- defaultDeliveryFormat: "email" | "none" | "voucher" | "ticket" | "pdf" | "qr_code" | "barcode" | "mobile";
249
+ defaultDeliveryFormat: "none" | "voucher" | "ticket" | "pdf" | "qr_code" | "barcode" | "email" | "mobile";
356
250
  ticketPerUnit: boolean;
357
251
  barcodeFormat: string | null;
358
252
  voucherMessage: string | null;
@@ -387,7 +281,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
387
281
  id: string;
388
282
  productId: string;
389
283
  fulfillmentMode: "none" | "per_booking" | "per_participant" | "per_item";
390
- defaultDeliveryFormat: "email" | "none" | "voucher" | "ticket" | "pdf" | "qr_code" | "barcode" | "mobile";
284
+ defaultDeliveryFormat: "none" | "voucher" | "ticket" | "pdf" | "qr_code" | "barcode" | "email" | "mobile";
391
285
  ticketPerUnit: boolean;
392
286
  barcodeFormat: string | null;
393
287
  voucherMessage: string | null;
@@ -588,7 +482,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
588
482
  data: {
589
483
  id: string;
590
484
  productId: string;
591
- capability: "accommodation" | "on_request" | "private" | "instant_confirmation" | "pickup_available" | "dropoff_available" | "guided" | "shared" | "digital_ticket" | "voucher_required" | "external_inventory" | "multi_day" | "transport";
485
+ capability: "on_request" | "private" | "instant_confirmation" | "pickup_available" | "dropoff_available" | "guided" | "shared" | "digital_ticket" | "voucher_required" | "external_inventory" | "multi_day" | "accommodation" | "transport";
592
486
  enabled: boolean;
593
487
  notes: string | null;
594
488
  createdAt: string;
@@ -625,7 +519,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
625
519
  data: {
626
520
  id: string;
627
521
  productId: string;
628
- capability: "accommodation" | "on_request" | "private" | "instant_confirmation" | "pickup_available" | "dropoff_available" | "guided" | "shared" | "digital_ticket" | "voucher_required" | "external_inventory" | "multi_day" | "transport";
522
+ capability: "on_request" | "private" | "instant_confirmation" | "pickup_available" | "dropoff_available" | "guided" | "shared" | "digital_ticket" | "voucher_required" | "external_inventory" | "multi_day" | "accommodation" | "transport";
629
523
  enabled: boolean;
630
524
  notes: string | null;
631
525
  createdAt: string;
@@ -657,13 +551,13 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
657
551
  };
658
552
  output: {
659
553
  data: {
660
- enabled: boolean;
661
554
  id: string;
662
555
  createdAt: string;
663
556
  updatedAt: string;
664
- notes: string | null;
665
557
  productId: string;
666
- capability: "accommodation" | "on_request" | "private" | "instant_confirmation" | "pickup_available" | "dropoff_available" | "guided" | "shared" | "digital_ticket" | "voucher_required" | "external_inventory" | "multi_day" | "transport";
558
+ notes: string | null;
559
+ capability: "on_request" | "private" | "instant_confirmation" | "pickup_available" | "dropoff_available" | "guided" | "shared" | "digital_ticket" | "voucher_required" | "external_inventory" | "multi_day" | "accommodation" | "transport";
560
+ enabled: boolean;
667
561
  };
668
562
  };
669
563
  outputFormat: "json";
@@ -693,7 +587,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
693
587
  data: {
694
588
  id: string;
695
589
  productId: string;
696
- capability: "accommodation" | "on_request" | "private" | "instant_confirmation" | "pickup_available" | "dropoff_available" | "guided" | "shared" | "digital_ticket" | "voucher_required" | "external_inventory" | "multi_day" | "transport";
590
+ capability: "on_request" | "private" | "instant_confirmation" | "pickup_available" | "dropoff_available" | "guided" | "shared" | "digital_ticket" | "voucher_required" | "external_inventory" | "multi_day" | "accommodation" | "transport";
697
591
  enabled: boolean;
698
592
  notes: string | null;
699
593
  createdAt: string;
@@ -738,7 +632,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
738
632
  data: {
739
633
  id: string;
740
634
  productId: string;
741
- format: "email" | "none" | "voucher" | "ticket" | "pdf" | "qr_code" | "barcode" | "mobile";
635
+ format: "none" | "voucher" | "ticket" | "pdf" | "qr_code" | "barcode" | "email" | "mobile";
742
636
  isDefault: boolean;
743
637
  createdAt: string;
744
638
  updatedAt: string;
@@ -774,7 +668,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
774
668
  data: {
775
669
  id: string;
776
670
  productId: string;
777
- format: "email" | "none" | "voucher" | "ticket" | "pdf" | "qr_code" | "barcode" | "mobile";
671
+ format: "none" | "voucher" | "ticket" | "pdf" | "qr_code" | "barcode" | "email" | "mobile";
778
672
  isDefault: boolean;
779
673
  createdAt: string;
780
674
  updatedAt: string;
@@ -805,10 +699,10 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
805
699
  };
806
700
  output: {
807
701
  data: {
702
+ format: "none" | "voucher" | "ticket" | "pdf" | "qr_code" | "barcode" | "email" | "mobile";
808
703
  id: string;
809
704
  createdAt: string;
810
705
  updatedAt: string;
811
- format: "email" | "none" | "voucher" | "ticket" | "pdf" | "qr_code" | "barcode" | "mobile";
812
706
  productId: string;
813
707
  isDefault: boolean;
814
708
  };
@@ -840,7 +734,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
840
734
  data: {
841
735
  id: string;
842
736
  productId: string;
843
- format: "email" | "none" | "voucher" | "ticket" | "pdf" | "qr_code" | "barcode" | "mobile";
737
+ format: "none" | "voucher" | "ticket" | "pdf" | "qr_code" | "barcode" | "email" | "mobile";
844
738
  isDefault: boolean;
845
739
  createdAt: string;
846
740
  updatedAt: string;
@@ -876,7 +770,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
876
770
  status: 200;
877
771
  };
878
772
  };
879
- } & {
773
+ }, "/"> | import("hono/types").MergeSchemaPath<{
880
774
  "/features": {
881
775
  $get: {
882
776
  input: {};
@@ -956,12 +850,12 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
956
850
  output: {
957
851
  data: {
958
852
  id: string;
853
+ description: string | null;
959
854
  createdAt: string;
960
855
  updatedAt: string;
961
- description: string | null;
962
856
  productId: string;
963
- title: string;
964
857
  sortOrder: number;
858
+ title: string;
965
859
  featureType: "other" | "inclusion" | "exclusion" | "highlight" | "important_information";
966
860
  };
967
861
  };
@@ -1188,7 +1082,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
1188
1082
  data: {
1189
1083
  id: string;
1190
1084
  productId: string;
1191
- locationType: "start" | "other" | "end" | "meeting_point" | "pickup" | "dropoff" | "point_of_interest";
1085
+ locationType: "end" | "other" | "start" | "meeting_point" | "pickup" | "dropoff" | "point_of_interest";
1192
1086
  title: string;
1193
1087
  address: string | null;
1194
1088
  city: string | null;
@@ -1233,7 +1127,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
1233
1127
  data: {
1234
1128
  id: string;
1235
1129
  productId: string;
1236
- locationType: "start" | "other" | "end" | "meeting_point" | "pickup" | "dropoff" | "point_of_interest";
1130
+ locationType: "end" | "other" | "start" | "meeting_point" | "pickup" | "dropoff" | "point_of_interest";
1237
1131
  title: string;
1238
1132
  address: string | null;
1239
1133
  city: string | null;
@@ -1277,14 +1171,14 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
1277
1171
  createdAt: string;
1278
1172
  updatedAt: string;
1279
1173
  productId: string;
1174
+ sortOrder: number;
1280
1175
  title: string;
1176
+ countryCode: string | null;
1177
+ locationType: "end" | "other" | "start" | "meeting_point" | "pickup" | "dropoff" | "point_of_interest";
1178
+ address: string | null;
1179
+ city: string | null;
1281
1180
  latitude: number | null;
1282
1181
  longitude: number | null;
1283
- city: string | null;
1284
- address: string | null;
1285
- sortOrder: number;
1286
- countryCode: string | null;
1287
- locationType: "start" | "other" | "end" | "meeting_point" | "pickup" | "dropoff" | "point_of_interest";
1288
1182
  googlePlaceId: string | null;
1289
1183
  applePlaceId: string | null;
1290
1184
  tripadvisorLocationId: string | null;
@@ -1317,7 +1211,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
1317
1211
  data: {
1318
1212
  id: string;
1319
1213
  productId: string;
1320
- locationType: "start" | "other" | "end" | "meeting_point" | "pickup" | "dropoff" | "point_of_interest";
1214
+ locationType: "end" | "other" | "start" | "meeting_point" | "pickup" | "dropoff" | "point_of_interest";
1321
1215
  title: string;
1322
1216
  address: string | null;
1323
1217
  city: string | null;
@@ -1456,16 +1350,16 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
1456
1350
  input: {};
1457
1351
  output: {
1458
1352
  data: {
1459
- metadata: {
1460
- [x: string]: import("hono/utils/types").JSONValue;
1461
- } | null;
1462
1353
  id: string;
1463
1354
  createdAt: string;
1355
+ active: boolean;
1464
1356
  updatedAt: string;
1465
- slug: string;
1466
1357
  code: string | null;
1467
- active: boolean;
1468
1358
  sortOrder: number;
1359
+ slug: string;
1360
+ metadata: {
1361
+ [x: string]: import("hono/utils/types").JSONValue;
1362
+ } | null;
1469
1363
  parentId: string | null;
1470
1364
  destinationType: string;
1471
1365
  } | null;
@@ -1586,9 +1480,9 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
1586
1480
  data: {
1587
1481
  name: string;
1588
1482
  id: string;
1483
+ description: string | null;
1589
1484
  createdAt: string;
1590
1485
  updatedAt: string;
1591
- description: string | null;
1592
1486
  languageTag: string;
1593
1487
  seoTitle: string | null;
1594
1488
  seoDescription: string | null;
@@ -1708,9 +1602,9 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
1708
1602
  data: {
1709
1603
  name: string;
1710
1604
  id: string;
1605
+ description: string | null;
1711
1606
  createdAt: string;
1712
1607
  updatedAt: string;
1713
- description: string | null;
1714
1608
  languageTag: string;
1715
1609
  seoTitle: string | null;
1716
1610
  seoDescription: string | null;
@@ -1981,7 +1875,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
1981
1875
  status: 200;
1982
1876
  };
1983
1877
  };
1984
- } & {
1878
+ }, "/"> | import("hono/types").MergeSchemaPath<{
1985
1879
  "/options": {
1986
1880
  $get: {
1987
1881
  input: {};
@@ -1992,7 +1886,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
1992
1886
  name: string;
1993
1887
  code: string | null;
1994
1888
  description: string | null;
1995
- status: "active" | "draft" | "archived";
1889
+ status: "draft" | "active" | "archived";
1996
1890
  isDefault: boolean;
1997
1891
  sortOrder: number;
1998
1892
  availableFrom: string | null;
@@ -2034,7 +1928,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
2034
1928
  name: string;
2035
1929
  code: string | null;
2036
1930
  description: string | null;
2037
- status: "active" | "draft" | "archived";
1931
+ status: "draft" | "active" | "archived";
2038
1932
  isDefault: boolean;
2039
1933
  sortOrder: number;
2040
1934
  availableFrom: string | null;
@@ -2070,12 +1964,12 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
2070
1964
  data: {
2071
1965
  name: string;
2072
1966
  id: string;
1967
+ description: string | null;
1968
+ status: "draft" | "active" | "archived";
2073
1969
  createdAt: string;
2074
1970
  updatedAt: string;
2075
- status: "active" | "draft" | "archived";
2076
- description: string | null;
2077
- code: string | null;
2078
1971
  productId: string;
1972
+ code: string | null;
2079
1973
  isDefault: boolean;
2080
1974
  sortOrder: number;
2081
1975
  availableFrom: string | null;
@@ -2112,7 +2006,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
2112
2006
  name: string;
2113
2007
  code: string | null;
2114
2008
  description: string | null;
2115
- status: "active" | "draft" | "archived";
2009
+ status: "draft" | "active" | "archived";
2116
2010
  isDefault: boolean;
2117
2011
  sortOrder: number;
2118
2012
  availableFrom: string | null;
@@ -2162,7 +2056,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
2162
2056
  name: string;
2163
2057
  code: string | null;
2164
2058
  description: string | null;
2165
- unitType: "service" | "other" | "group" | "person" | "room" | "vehicle";
2059
+ unitType: "person" | "group" | "room" | "vehicle" | "service" | "other";
2166
2060
  minQuantity: number | null;
2167
2061
  maxQuantity: number | null;
2168
2062
  minAge: number | null;
@@ -2209,7 +2103,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
2209
2103
  name: string;
2210
2104
  code: string | null;
2211
2105
  description: string | null;
2212
- unitType: "service" | "other" | "group" | "person" | "room" | "vehicle";
2106
+ unitType: "person" | "group" | "room" | "vehicle" | "service" | "other";
2213
2107
  minQuantity: number | null;
2214
2108
  maxQuantity: number | null;
2215
2109
  minAge: number | null;
@@ -2250,17 +2144,17 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
2250
2144
  data: {
2251
2145
  name: string;
2252
2146
  id: string;
2147
+ description: string | null;
2253
2148
  createdAt: string;
2254
2149
  updatedAt: string;
2255
- description: string | null;
2256
2150
  code: string | null;
2257
- optionId: string;
2258
- maxAge: number | null;
2259
- minAge: number | null;
2260
2151
  sortOrder: number;
2261
- unitType: "service" | "other" | "group" | "person" | "room" | "vehicle";
2152
+ optionId: string;
2153
+ unitType: "person" | "group" | "room" | "vehicle" | "service" | "other";
2262
2154
  minQuantity: number | null;
2263
2155
  maxQuantity: number | null;
2156
+ minAge: number | null;
2157
+ maxAge: number | null;
2264
2158
  occupancyMin: number | null;
2265
2159
  occupancyMax: number | null;
2266
2160
  isRequired: boolean;
@@ -2297,7 +2191,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
2297
2191
  name: string;
2298
2192
  code: string | null;
2299
2193
  description: string | null;
2300
- unitType: "service" | "other" | "group" | "person" | "room" | "vehicle";
2194
+ unitType: "person" | "group" | "room" | "vehicle" | "service" | "other";
2301
2195
  minQuantity: number | null;
2302
2196
  maxQuantity: number | null;
2303
2197
  minAge: number | null;
@@ -2341,7 +2235,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
2341
2235
  status: 200;
2342
2236
  };
2343
2237
  };
2344
- } & {
2238
+ }, "/"> | import("hono/types").MergeSchemaPath<{
2345
2239
  "/translations": {
2346
2240
  $get: {
2347
2241
  input: {};
@@ -2428,13 +2322,13 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
2428
2322
  data: {
2429
2323
  name: string;
2430
2324
  id: string;
2325
+ description: string | null;
2431
2326
  createdAt: string;
2432
2327
  updatedAt: string;
2433
- slug: string | null;
2434
- description: string | null;
2435
2328
  productId: string;
2436
- shortDescription: string | null;
2437
2329
  languageTag: string;
2330
+ slug: string | null;
2331
+ shortDescription: string | null;
2438
2332
  seoTitle: string | null;
2439
2333
  seoDescription: string | null;
2440
2334
  };
@@ -2588,12 +2482,12 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
2588
2482
  data: {
2589
2483
  name: string;
2590
2484
  id: string;
2485
+ description: string | null;
2591
2486
  createdAt: string;
2592
2487
  updatedAt: string;
2593
- description: string | null;
2594
2488
  optionId: string;
2595
- shortDescription: string | null;
2596
2489
  languageTag: string;
2490
+ shortDescription: string | null;
2597
2491
  };
2598
2492
  };
2599
2493
  outputFormat: "json";
@@ -2742,12 +2636,12 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
2742
2636
  data: {
2743
2637
  name: string;
2744
2638
  id: string;
2639
+ description: string | null;
2745
2640
  createdAt: string;
2746
2641
  updatedAt: string;
2747
- description: string | null;
2748
- unitId: string;
2749
- shortDescription: string | null;
2750
2642
  languageTag: string;
2643
+ shortDescription: string | null;
2644
+ unitId: string;
2751
2645
  };
2752
2646
  };
2753
2647
  outputFormat: "json";
@@ -2815,7 +2709,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
2815
2709
  status: 200;
2816
2710
  };
2817
2711
  };
2818
- } & {
2712
+ }, "/"> | import("hono/types").MergeSchemaPath<{
2819
2713
  "/product-types": {
2820
2714
  $get: {
2821
2715
  input: {};
@@ -2885,17 +2779,17 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
2885
2779
  input: {};
2886
2780
  output: {
2887
2781
  data: {
2888
- metadata: {
2889
- [x: string]: import("hono/utils/types").JSONValue;
2890
- } | null;
2891
2782
  name: string;
2892
2783
  id: string;
2784
+ description: string | null;
2893
2785
  createdAt: string;
2786
+ active: boolean;
2894
2787
  updatedAt: string;
2895
- description: string | null;
2896
2788
  code: string;
2897
- active: boolean;
2898
2789
  sortOrder: number;
2790
+ metadata: {
2791
+ [x: string]: import("hono/utils/types").JSONValue;
2792
+ } | null;
2899
2793
  } | undefined;
2900
2794
  };
2901
2795
  outputFormat: "json";
@@ -3040,18 +2934,18 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
3040
2934
  input: {};
3041
2935
  output: {
3042
2936
  data: {
3043
- metadata: {
3044
- [x: string]: import("hono/utils/types").JSONValue;
3045
- } | null;
3046
2937
  name: string;
3047
2938
  id: string;
3048
- createdAt: string;
3049
- updatedAt: string;
3050
- slug: string;
3051
2939
  description: string | null;
2940
+ createdAt: string;
3052
2941
  active: boolean;
3053
2942
  customerPaymentPolicy: import("hono/utils/types").JSONValue;
2943
+ updatedAt: string;
3054
2944
  sortOrder: number;
2945
+ slug: string;
2946
+ metadata: {
2947
+ [x: string]: import("hono/utils/types").JSONValue;
2948
+ } | null;
3055
2949
  parentId: string | null;
3056
2950
  } | undefined;
3057
2951
  };
@@ -3248,7 +3142,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
3248
3142
  status: 200;
3249
3143
  };
3250
3144
  };
3251
- } & {
3145
+ }, "/"> | import("hono/types").MergeSchemaPath<{
3252
3146
  "/media/:mediaId": {
3253
3147
  $get: {
3254
3148
  input: {
@@ -3416,11 +3310,11 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
3416
3310
  id: string;
3417
3311
  createdAt: string;
3418
3312
  updatedAt: string;
3419
- url: string;
3420
3313
  productId: string;
3421
3314
  sortOrder: number;
3422
3315
  dayId: string | null;
3423
3316
  mediaType: "image" | "video" | "document";
3317
+ url: string;
3424
3318
  storageKey: string | null;
3425
3319
  mimeType: string | null;
3426
3320
  fileSize: number | null;
@@ -3537,11 +3431,11 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
3537
3431
  id: string;
3538
3432
  createdAt: string;
3539
3433
  updatedAt: string;
3540
- url: string;
3541
3434
  productId: string;
3542
3435
  sortOrder: number;
3543
3436
  dayId: string | null;
3544
3437
  mediaType: "image" | "video" | "document";
3438
+ url: string;
3545
3439
  storageKey: string | null;
3546
3440
  mimeType: string | null;
3547
3441
  fileSize: number | null;
@@ -3581,11 +3475,11 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
3581
3475
  id: string;
3582
3476
  createdAt: string;
3583
3477
  updatedAt: string;
3584
- url: string;
3585
3478
  productId: string;
3586
3479
  sortOrder: number;
3587
3480
  dayId: string | null;
3588
3481
  mediaType: "image" | "video" | "document";
3482
+ url: string;
3589
3483
  storageKey: string | null;
3590
3484
  mimeType: string | null;
3591
3485
  fileSize: number | null;
@@ -3677,11 +3571,11 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
3677
3571
  id: string;
3678
3572
  createdAt: string;
3679
3573
  updatedAt: string;
3680
- url: string;
3681
3574
  productId: string;
3682
3575
  sortOrder: number;
3683
3576
  dayId: string | null;
3684
3577
  mediaType: "image" | "video" | "document";
3578
+ url: string;
3685
3579
  storageKey: string | null;
3686
3580
  mimeType: string | null;
3687
3581
  fileSize: number | null;
@@ -3697,19 +3591,8 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
3697
3591
  };
3698
3592
  };
3699
3593
  } & {
3700
- "/:id": {
3594
+ "/:id/media": {
3701
3595
  $get: {
3702
- input: {
3703
- param: {
3704
- id: string;
3705
- };
3706
- };
3707
- output: {
3708
- error: string;
3709
- };
3710
- outputFormat: "json";
3711
- status: 404;
3712
- } | {
3713
3596
  input: {
3714
3597
  param: {
3715
3598
  id: string;
@@ -3718,39 +3601,34 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
3718
3601
  output: {
3719
3602
  data: {
3720
3603
  id: string;
3604
+ productId: string;
3605
+ dayId: string | null;
3606
+ mediaType: "image" | "video" | "document";
3721
3607
  name: string;
3722
- status: "active" | "draft" | "archived";
3723
- description: string | null;
3724
- bookingMode: "date" | "other" | "date_time" | "open" | "stay" | "transfer" | "itinerary";
3725
- capacityMode: "free_sale" | "limited" | "on_request";
3726
- timezone: string | null;
3727
- visibility: "public" | "private" | "hidden";
3728
- activated: boolean;
3729
- reservationTimeoutMinutes: number | null;
3730
- sellCurrency: string;
3731
- sellAmountCents: number | null;
3732
- costAmountCents: number | null;
3733
- marginPercent: number | null;
3734
- facilityId: string | null;
3735
- supplierId: string | null;
3736
- startDate: string | null;
3737
- endDate: string | null;
3738
- pax: number | null;
3739
- productTypeId: string | null;
3740
- taxClassId: string | null;
3741
- customerPaymentPolicy: import("hono/utils/types").JSONValue;
3742
- tags: string[] | null;
3608
+ url: string;
3609
+ storageKey: string | null;
3610
+ mimeType: string | null;
3611
+ fileSize: number | null;
3612
+ altText: string | null;
3613
+ sortOrder: number;
3614
+ isCover: boolean;
3615
+ isBrochure: boolean;
3616
+ isBrochureCurrent: boolean;
3617
+ brochureVersion: number | null;
3743
3618
  createdAt: string;
3744
3619
  updatedAt: string;
3745
- };
3620
+ }[];
3621
+ total: number;
3622
+ limit: number;
3623
+ offset: number;
3746
3624
  };
3747
3625
  outputFormat: "json";
3748
3626
  status: import("hono/utils/http-status").ContentfulStatusCode;
3749
3627
  };
3750
3628
  };
3751
3629
  } & {
3752
- "/:id": {
3753
- $patch: {
3630
+ "/:id/media": {
3631
+ $post: {
3754
3632
  input: {
3755
3633
  param: {
3756
3634
  id: string;
@@ -3769,43 +3647,92 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
3769
3647
  };
3770
3648
  output: {
3771
3649
  data: {
3772
- id: string;
3773
3650
  name: string;
3774
- status: "active" | "draft" | "archived";
3775
- description: string | null;
3776
- bookingMode: "date" | "other" | "date_time" | "open" | "stay" | "transfer" | "itinerary";
3777
- capacityMode: "free_sale" | "limited" | "on_request";
3778
- timezone: string | null;
3779
- visibility: "public" | "private" | "hidden";
3780
- activated: boolean;
3781
- reservationTimeoutMinutes: number | null;
3782
- sellCurrency: string;
3783
- sellAmountCents: number | null;
3784
- costAmountCents: number | null;
3785
- marginPercent: number | null;
3786
- facilityId: string | null;
3787
- supplierId: string | null;
3788
- startDate: string | null;
3789
- endDate: string | null;
3790
- pax: number | null;
3791
- productTypeId: string | null;
3792
- taxClassId: string | null;
3793
- customerPaymentPolicy: import("hono/utils/types").JSONValue;
3794
- tags: string[] | null;
3651
+ id: string;
3795
3652
  createdAt: string;
3796
3653
  updatedAt: string;
3654
+ productId: string;
3655
+ sortOrder: number;
3656
+ dayId: string | null;
3657
+ mediaType: "image" | "video" | "document";
3658
+ url: string;
3659
+ storageKey: string | null;
3660
+ mimeType: string | null;
3661
+ fileSize: number | null;
3662
+ altText: string | null;
3663
+ isCover: boolean;
3664
+ isBrochure: boolean;
3665
+ isBrochureCurrent: boolean;
3666
+ brochureVersion: number | null;
3797
3667
  };
3798
3668
  };
3799
3669
  outputFormat: "json";
3670
+ status: 201;
3671
+ };
3672
+ };
3673
+ } & {
3674
+ "/:id/media/reorder": {
3675
+ $post: {
3676
+ input: {
3677
+ param: {
3678
+ id: string;
3679
+ };
3680
+ };
3681
+ output: {
3682
+ data: {
3683
+ id: string;
3684
+ }[];
3685
+ };
3686
+ outputFormat: "json";
3800
3687
  status: import("hono/utils/http-status").ContentfulStatusCode;
3801
3688
  };
3802
3689
  };
3803
3690
  } & {
3804
- "/:id": {
3805
- $delete: {
3691
+ "/:id/days/:dayId/media": {
3692
+ $get: {
3693
+ input: {
3694
+ param: {
3695
+ id: string;
3696
+ } & {
3697
+ dayId: string;
3698
+ };
3699
+ };
3700
+ output: {
3701
+ data: {
3702
+ id: string;
3703
+ productId: string;
3704
+ dayId: string | null;
3705
+ mediaType: "image" | "video" | "document";
3706
+ name: string;
3707
+ url: string;
3708
+ storageKey: string | null;
3709
+ mimeType: string | null;
3710
+ fileSize: number | null;
3711
+ altText: string | null;
3712
+ sortOrder: number;
3713
+ isCover: boolean;
3714
+ isBrochure: boolean;
3715
+ isBrochureCurrent: boolean;
3716
+ brochureVersion: number | null;
3717
+ createdAt: string;
3718
+ updatedAt: string;
3719
+ }[];
3720
+ total: number;
3721
+ limit: number;
3722
+ offset: number;
3723
+ };
3724
+ outputFormat: "json";
3725
+ status: import("hono/utils/http-status").ContentfulStatusCode;
3726
+ };
3727
+ };
3728
+ } & {
3729
+ "/:id/days/:dayId/media": {
3730
+ $post: {
3806
3731
  input: {
3807
3732
  param: {
3808
3733
  id: string;
3734
+ } & {
3735
+ dayId: string;
3809
3736
  };
3810
3737
  };
3811
3738
  output: {
@@ -3817,16 +3744,36 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
3817
3744
  input: {
3818
3745
  param: {
3819
3746
  id: string;
3747
+ } & {
3748
+ dayId: string;
3820
3749
  };
3821
3750
  };
3822
3751
  output: {
3823
- success: true;
3752
+ data: {
3753
+ name: string;
3754
+ id: string;
3755
+ createdAt: string;
3756
+ updatedAt: string;
3757
+ productId: string;
3758
+ sortOrder: number;
3759
+ dayId: string | null;
3760
+ mediaType: "image" | "video" | "document";
3761
+ url: string;
3762
+ storageKey: string | null;
3763
+ mimeType: string | null;
3764
+ fileSize: number | null;
3765
+ altText: string | null;
3766
+ isCover: boolean;
3767
+ isBrochure: boolean;
3768
+ isBrochureCurrent: boolean;
3769
+ brochureVersion: number | null;
3770
+ };
3824
3771
  };
3825
3772
  outputFormat: "json";
3826
- status: 200;
3773
+ status: 201;
3827
3774
  };
3828
3775
  };
3829
- } & {
3776
+ }, "/"> | import("hono/types").MergeSchemaPath<{
3830
3777
  "/:id/itineraries": {
3831
3778
  $get: {
3832
3779
  input: {
@@ -4029,13 +3976,13 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
4029
3976
  output: {
4030
3977
  data: {
4031
3978
  id: string;
3979
+ description: string | null;
4032
3980
  createdAt: string;
4033
3981
  updatedAt: string;
4034
- description: string | null;
4035
- title: string | null;
4036
- location: string | null;
4037
3982
  itineraryId: string;
4038
3983
  dayNumber: number;
3984
+ title: string | null;
3985
+ location: string | null;
4039
3986
  };
4040
3987
  };
4041
3988
  outputFormat: "json";
@@ -4088,13 +4035,13 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
4088
4035
  output: {
4089
4036
  data: {
4090
4037
  id: string;
4038
+ description: string | null;
4091
4039
  createdAt: string;
4092
4040
  updatedAt: string;
4093
- description: string | null;
4094
- title: string | null;
4095
- location: string | null;
4096
4041
  itineraryId: string;
4097
4042
  dayNumber: number;
4043
+ title: string | null;
4044
+ location: string | null;
4098
4045
  };
4099
4046
  };
4100
4047
  outputFormat: "json";
@@ -4185,7 +4132,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
4185
4132
  id: string;
4186
4133
  dayId: string;
4187
4134
  supplierServiceId: string | null;
4188
- serviceType: "other" | "accommodation" | "transfer" | "experience" | "guide" | "meal";
4135
+ serviceType: "other" | "transfer" | "accommodation" | "experience" | "guide" | "meal";
4189
4136
  name: string;
4190
4137
  description: string | null;
4191
4138
  countryCode: string | null;
@@ -4228,17 +4175,17 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
4228
4175
  data: {
4229
4176
  name: string;
4230
4177
  id: string;
4231
- createdAt: string;
4232
- notes: string | null;
4233
4178
  description: string | null;
4234
- supplierServiceId: string | null;
4179
+ createdAt: string;
4235
4180
  costAmountCents: number;
4236
- quantity: number;
4237
4181
  sortOrder: number | null;
4238
4182
  dayId: string;
4239
- serviceType: "other" | "accommodation" | "transfer" | "experience" | "guide" | "meal";
4183
+ supplierServiceId: string | null;
4184
+ serviceType: "other" | "transfer" | "accommodation" | "experience" | "guide" | "meal";
4240
4185
  countryCode: string | null;
4241
4186
  costCurrency: string;
4187
+ quantity: number;
4188
+ notes: string | null;
4242
4189
  };
4243
4190
  };
4244
4191
  outputFormat: "json";
@@ -4277,7 +4224,7 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
4277
4224
  id: string;
4278
4225
  dayId: string;
4279
4226
  supplierServiceId: string | null;
4280
- serviceType: "other" | "accommodation" | "transfer" | "experience" | "guide" | "meal";
4227
+ serviceType: "other" | "transfer" | "accommodation" | "experience" | "guide" | "meal";
4281
4228
  name: string;
4282
4229
  description: string | null;
4283
4230
  countryCode: string | null;
@@ -4373,10 +4320,10 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
4373
4320
  data: {
4374
4321
  id: string;
4375
4322
  createdAt: string;
4376
- notes: string | null;
4377
4323
  productId: string;
4378
- snapshot: import("hono/utils/types").JSONValue;
4324
+ notes: string | null;
4379
4325
  versionNumber: number;
4326
+ snapshot: import("hono/utils/types").JSONValue;
4380
4327
  authorId: string;
4381
4328
  };
4382
4329
  };
@@ -4429,15 +4376,15 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
4429
4376
  id: string;
4430
4377
  createdAt: string;
4431
4378
  productId: string;
4432
- content: string;
4433
4379
  authorId: string;
4380
+ content: string;
4434
4381
  };
4435
4382
  };
4436
4383
  outputFormat: "json";
4437
4384
  status: 201;
4438
4385
  };
4439
4386
  };
4440
- } & {
4387
+ }, "/"> | import("hono/types").MergeSchemaPath<{
4441
4388
  "/:id/categories": {
4442
4389
  $get: {
4443
4390
  input: {
@@ -4598,31 +4545,87 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
4598
4545
  status: 200;
4599
4546
  };
4600
4547
  };
4601
- } & {
4602
- "/:id/media": {
4603
- $get: {
4548
+ }, "/"> | import("hono/types").MergeSchemaPath<{
4549
+ "/:id/recalculate": {
4550
+ $post: {
4604
4551
  input: {
4605
4552
  param: {
4606
4553
  id: string;
4607
4554
  };
4608
4555
  };
4556
+ output: {
4557
+ error: string;
4558
+ };
4559
+ outputFormat: "json";
4560
+ status: 404;
4561
+ } | {
4562
+ input: {
4563
+ param: {
4564
+ id: string;
4565
+ };
4566
+ };
4567
+ output: {
4568
+ data: {
4569
+ costAmountCents: number;
4570
+ marginPercent: number;
4571
+ };
4572
+ };
4573
+ outputFormat: "json";
4574
+ status: import("hono/utils/http-status").ContentfulStatusCode;
4575
+ };
4576
+ };
4577
+ }, "/"> | import("hono/types").MergeSchemaPath<{
4578
+ "/aggregates": {
4579
+ $get: {
4580
+ input: {};
4581
+ output: {
4582
+ data: {
4583
+ total: number;
4584
+ countsByStatus: {
4585
+ status: "draft" | "active" | "archived";
4586
+ count: number;
4587
+ }[];
4588
+ active: number;
4589
+ publicActive: number;
4590
+ monthlyCreatedCounts: {
4591
+ yearMonth: string;
4592
+ count: number;
4593
+ }[];
4594
+ };
4595
+ };
4596
+ outputFormat: "json";
4597
+ status: import("hono/utils/http-status").ContentfulStatusCode;
4598
+ };
4599
+ };
4600
+ } & {
4601
+ "/": {
4602
+ $get: {
4603
+ input: {};
4609
4604
  output: {
4610
4605
  data: {
4611
4606
  id: string;
4612
- productId: string;
4613
- dayId: string | null;
4614
- mediaType: "image" | "video" | "document";
4615
4607
  name: string;
4616
- url: string;
4617
- storageKey: string | null;
4618
- mimeType: string | null;
4619
- fileSize: number | null;
4620
- altText: string | null;
4621
- sortOrder: number;
4622
- isCover: boolean;
4623
- isBrochure: boolean;
4624
- isBrochureCurrent: boolean;
4625
- brochureVersion: number | null;
4608
+ status: "draft" | "active" | "archived";
4609
+ description: string | null;
4610
+ bookingMode: "date" | "other" | "date_time" | "open" | "stay" | "transfer" | "itinerary";
4611
+ capacityMode: "free_sale" | "limited" | "on_request";
4612
+ timezone: string | null;
4613
+ visibility: "public" | "private" | "hidden";
4614
+ activated: boolean;
4615
+ reservationTimeoutMinutes: number | null;
4616
+ sellCurrency: string;
4617
+ sellAmountCents: number | null;
4618
+ costAmountCents: number | null;
4619
+ marginPercent: number | null;
4620
+ facilityId: string | null;
4621
+ supplierId: string | null;
4622
+ startDate: string | null;
4623
+ endDate: string | null;
4624
+ pax: number | null;
4625
+ productTypeId: string | null;
4626
+ taxClassId: string | null;
4627
+ customerPaymentPolicy: import("hono/utils/types").JSONValue;
4628
+ tags: string[] | null;
4626
4629
  createdAt: string;
4627
4630
  updatedAt: string;
4628
4631
  }[];
@@ -4635,8 +4638,45 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
4635
4638
  };
4636
4639
  };
4637
4640
  } & {
4638
- "/:id/media": {
4641
+ "/": {
4639
4642
  $post: {
4643
+ input: {};
4644
+ output: {
4645
+ data: {
4646
+ name: string;
4647
+ id: string;
4648
+ description: string | null;
4649
+ status: "draft" | "active" | "archived";
4650
+ createdAt: string;
4651
+ bookingMode: "date" | "other" | "date_time" | "open" | "stay" | "transfer" | "itinerary";
4652
+ capacityMode: "free_sale" | "limited" | "on_request";
4653
+ timezone: string | null;
4654
+ visibility: "public" | "private" | "hidden";
4655
+ activated: boolean;
4656
+ reservationTimeoutMinutes: number | null;
4657
+ sellCurrency: string;
4658
+ sellAmountCents: number | null;
4659
+ costAmountCents: number | null;
4660
+ marginPercent: number | null;
4661
+ facilityId: string | null;
4662
+ supplierId: string | null;
4663
+ startDate: string | null;
4664
+ endDate: string | null;
4665
+ pax: number | null;
4666
+ productTypeId: string | null;
4667
+ taxClassId: string | null;
4668
+ customerPaymentPolicy: import("hono/utils/types").JSONValue;
4669
+ tags: string[] | null;
4670
+ updatedAt: string;
4671
+ };
4672
+ };
4673
+ outputFormat: "json";
4674
+ status: 201;
4675
+ };
4676
+ };
4677
+ } & {
4678
+ "/:id": {
4679
+ $get: {
4640
4680
  input: {
4641
4681
  param: {
4642
4682
  id: string;
@@ -4655,92 +4695,112 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
4655
4695
  };
4656
4696
  output: {
4657
4697
  data: {
4658
- name: string;
4659
4698
  id: string;
4699
+ name: string;
4700
+ status: "draft" | "active" | "archived";
4701
+ description: string | null;
4702
+ bookingMode: "date" | "other" | "date_time" | "open" | "stay" | "transfer" | "itinerary";
4703
+ capacityMode: "free_sale" | "limited" | "on_request";
4704
+ timezone: string | null;
4705
+ visibility: "public" | "private" | "hidden";
4706
+ activated: boolean;
4707
+ reservationTimeoutMinutes: number | null;
4708
+ sellCurrency: string;
4709
+ sellAmountCents: number | null;
4710
+ costAmountCents: number | null;
4711
+ marginPercent: number | null;
4712
+ facilityId: string | null;
4713
+ supplierId: string | null;
4714
+ startDate: string | null;
4715
+ endDate: string | null;
4716
+ pax: number | null;
4717
+ productTypeId: string | null;
4718
+ taxClassId: string | null;
4719
+ customerPaymentPolicy: import("hono/utils/types").JSONValue;
4720
+ tags: string[] | null;
4660
4721
  createdAt: string;
4661
4722
  updatedAt: string;
4662
- url: string;
4663
- productId: string;
4664
- sortOrder: number;
4665
- dayId: string | null;
4666
- mediaType: "image" | "video" | "document";
4667
- storageKey: string | null;
4668
- mimeType: string | null;
4669
- fileSize: number | null;
4670
- altText: string | null;
4671
- isCover: boolean;
4672
- isBrochure: boolean;
4673
- isBrochureCurrent: boolean;
4674
- brochureVersion: number | null;
4675
4723
  };
4676
4724
  };
4677
4725
  outputFormat: "json";
4678
- status: 201;
4726
+ status: import("hono/utils/http-status").ContentfulStatusCode;
4679
4727
  };
4680
4728
  };
4681
4729
  } & {
4682
- "/:id/media/reorder": {
4683
- $post: {
4730
+ "/:id/action-ledger": {
4731
+ $get: {
4684
4732
  input: {
4685
4733
  param: {
4686
4734
  id: string;
4687
4735
  };
4688
4736
  };
4689
4737
  output: {
4690
- data: {
4691
- id: string;
4692
- }[];
4738
+ error: string;
4693
4739
  };
4694
4740
  outputFormat: "json";
4695
- status: import("hono/utils/http-status").ContentfulStatusCode;
4696
- };
4697
- };
4698
- } & {
4699
- "/:id/days/:dayId/media": {
4700
- $get: {
4741
+ status: 404;
4742
+ } | {
4701
4743
  input: {
4702
4744
  param: {
4703
4745
  id: string;
4704
- } & {
4705
- dayId: string;
4706
4746
  };
4707
4747
  };
4708
4748
  output: {
4709
4749
  data: {
4710
4750
  id: string;
4711
- productId: string;
4712
- dayId: string | null;
4713
- mediaType: "image" | "video" | "document";
4714
- name: string;
4715
- url: string;
4716
- storageKey: string | null;
4717
- mimeType: string | null;
4718
- fileSize: number | null;
4719
- altText: string | null;
4720
- sortOrder: number;
4721
- isCover: boolean;
4722
- isBrochure: boolean;
4723
- isBrochureCurrent: boolean;
4724
- brochureVersion: number | null;
4751
+ actionName: string;
4752
+ actionVersion: string;
4753
+ actionKind: "execute" | "reverse" | "update" | "delete" | "read" | "create" | "approve" | "reject" | "compensate" | "duplicate";
4754
+ status: "requested" | "awaiting_approval" | "approved" | "denied" | "succeeded" | "failed" | "reversed" | "compensated" | "expired" | "cancelled" | "superseded";
4755
+ evaluatedRisk: "low" | "medium" | "high" | "critical";
4756
+ actorType: string | null;
4757
+ principalType: "user" | "api_key" | "agent" | "workflow" | "system";
4758
+ principalId: string;
4759
+ principalSubtype: string | null;
4760
+ sessionId: string | null;
4761
+ apiTokenId: string | null;
4762
+ internalRequest: boolean;
4763
+ delegatedByPrincipalType: "user" | "api_key" | "agent" | "workflow" | "system" | null;
4764
+ delegatedByPrincipalId: string | null;
4765
+ delegationId: string | null;
4766
+ callerType: string | null;
4767
+ organizationId: string | null;
4768
+ routeOrToolName: string | null;
4769
+ workflowRunId: string | null;
4770
+ workflowStepId: string | null;
4771
+ correlationId: string | null;
4772
+ causationActionId: string | null;
4773
+ idempotencyScope: string | null;
4774
+ idempotencyKey: string | null;
4775
+ idempotencyFingerprint: string | null;
4776
+ targetType: string;
4777
+ targetId: string;
4778
+ capabilityId: string | null;
4779
+ capabilityVersion: string | null;
4780
+ authorizationSource: string | null;
4781
+ approvalId: string | null;
4782
+ amendsActionId: string | null;
4783
+ occurredAt: string;
4725
4784
  createdAt: string;
4726
- updatedAt: string;
4785
+ mutationSummary: string | null;
4727
4786
  }[];
4728
- total: number;
4729
- limit: number;
4730
- offset: number;
4787
+ pageInfo: {
4788
+ nextCursor: {
4789
+ occurredAt: string;
4790
+ id: string;
4791
+ } | null;
4792
+ };
4731
4793
  };
4732
4794
  outputFormat: "json";
4733
4795
  status: import("hono/utils/http-status").ContentfulStatusCode;
4734
4796
  };
4735
4797
  };
4736
4798
  } & {
4737
- "/:id/days/:dayId/media": {
4738
- $post: {
4799
+ "/:id": {
4800
+ $patch: {
4739
4801
  input: {
4740
4802
  param: {
4741
4803
  id: string;
4742
- } & {
4743
- dayId: string;
4744
4804
  };
4745
4805
  };
4746
4806
  output: {
@@ -4752,38 +4812,44 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
4752
4812
  input: {
4753
4813
  param: {
4754
4814
  id: string;
4755
- } & {
4756
- dayId: string;
4757
4815
  };
4758
4816
  };
4759
4817
  output: {
4760
4818
  data: {
4761
- name: string;
4762
4819
  id: string;
4820
+ name: string;
4821
+ status: "draft" | "active" | "archived";
4822
+ description: string | null;
4823
+ bookingMode: "date" | "other" | "date_time" | "open" | "stay" | "transfer" | "itinerary";
4824
+ capacityMode: "free_sale" | "limited" | "on_request";
4825
+ timezone: string | null;
4826
+ visibility: "public" | "private" | "hidden";
4827
+ activated: boolean;
4828
+ reservationTimeoutMinutes: number | null;
4829
+ sellCurrency: string;
4830
+ sellAmountCents: number | null;
4831
+ costAmountCents: number | null;
4832
+ marginPercent: number | null;
4833
+ facilityId: string | null;
4834
+ supplierId: string | null;
4835
+ startDate: string | null;
4836
+ endDate: string | null;
4837
+ pax: number | null;
4838
+ productTypeId: string | null;
4839
+ taxClassId: string | null;
4840
+ customerPaymentPolicy: import("hono/utils/types").JSONValue;
4841
+ tags: string[] | null;
4763
4842
  createdAt: string;
4764
4843
  updatedAt: string;
4765
- url: string;
4766
- productId: string;
4767
- sortOrder: number;
4768
- dayId: string | null;
4769
- mediaType: "image" | "video" | "document";
4770
- storageKey: string | null;
4771
- mimeType: string | null;
4772
- fileSize: number | null;
4773
- altText: string | null;
4774
- isCover: boolean;
4775
- isBrochure: boolean;
4776
- isBrochureCurrent: boolean;
4777
- brochureVersion: number | null;
4778
4844
  };
4779
4845
  };
4780
4846
  outputFormat: "json";
4781
- status: 201;
4847
+ status: import("hono/utils/http-status").ContentfulStatusCode;
4782
4848
  };
4783
4849
  };
4784
4850
  } & {
4785
- "/:id/recalculate": {
4786
- $post: {
4851
+ "/:id": {
4852
+ $delete: {
4787
4853
  input: {
4788
4854
  param: {
4789
4855
  id: string;
@@ -4801,16 +4867,12 @@ export declare const productRoutes: import("hono/hono-base").HonoBase<Env, {
4801
4867
  };
4802
4868
  };
4803
4869
  output: {
4804
- data: {
4805
- costAmountCents: number;
4806
- marginPercent: number;
4807
- };
4870
+ success: true;
4808
4871
  };
4809
4872
  outputFormat: "json";
4810
- status: import("hono/utils/http-status").ContentfulStatusCode;
4873
+ status: 200;
4811
4874
  };
4812
4875
  };
4813
- }, "/", "/:id/recalculate">;
4876
+ }, "/">, "/", "/">;
4814
4877
  export type ProductRoutes = typeof productRoutes;
4815
- export {};
4816
4878
  //# sourceMappingURL=routes.d.ts.map