@voyant-travel/relationships 0.119.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.
Files changed (96) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +36 -0
  3. package/dist/action-ledger-capabilities.d.ts +20 -0
  4. package/dist/action-ledger-capabilities.d.ts.map +1 -0
  5. package/dist/action-ledger-capabilities.js +16 -0
  6. package/dist/events.d.ts +23 -0
  7. package/dist/events.d.ts.map +1 -0
  8. package/dist/events.js +9 -0
  9. package/dist/index.d.ts +32 -0
  10. package/dist/index.d.ts.map +1 -0
  11. package/dist/index.js +49 -0
  12. package/dist/route-runtime.d.ts +21 -0
  13. package/dist/route-runtime.d.ts.map +1 -0
  14. package/dist/route-runtime.js +28 -0
  15. package/dist/routes/accounts.d.ts +1460 -0
  16. package/dist/routes/accounts.d.ts.map +1 -0
  17. package/dist/routes/accounts.js +274 -0
  18. package/dist/routes/activities.d.ts +299 -0
  19. package/dist/routes/activities.d.ts.map +1 -0
  20. package/dist/routes/activities.js +64 -0
  21. package/dist/routes/custom-fields.d.ts +256 -0
  22. package/dist/routes/custom-fields.d.ts.map +1 -0
  23. package/dist/routes/custom-fields.js +47 -0
  24. package/dist/routes/customer-signals.d.ts +281 -0
  25. package/dist/routes/customer-signals.d.ts.map +1 -0
  26. package/dist/routes/customer-signals.js +45 -0
  27. package/dist/routes/index.d.ts +2945 -0
  28. package/dist/routes/index.d.ts.map +1 -0
  29. package/dist/routes/index.js +14 -0
  30. package/dist/routes/person-documents.d.ts +519 -0
  31. package/dist/routes/person-documents.d.ts.map +1 -0
  32. package/dist/routes/person-documents.js +240 -0
  33. package/dist/routes/person-relationships.d.ts +189 -0
  34. package/dist/routes/person-relationships.d.ts.map +1 -0
  35. package/dist/routes/person-relationships.js +36 -0
  36. package/dist/schema-accounts.d.ts +2099 -0
  37. package/dist/schema-accounts.d.ts.map +1 -0
  38. package/dist/schema-accounts.js +312 -0
  39. package/dist/schema-activities.d.ts +821 -0
  40. package/dist/schema-activities.d.ts.map +1 -0
  41. package/dist/schema-activities.js +92 -0
  42. package/dist/schema-relations.d.ts +47 -0
  43. package/dist/schema-relations.d.ts.map +1 -0
  44. package/dist/schema-relations.js +70 -0
  45. package/dist/schema-shared.d.ts +10 -0
  46. package/dist/schema-shared.d.ts.map +1 -0
  47. package/dist/schema-shared.js +36 -0
  48. package/dist/schema-signals.d.ts +324 -0
  49. package/dist/schema-signals.d.ts.map +1 -0
  50. package/dist/schema-signals.js +80 -0
  51. package/dist/schema.d.ts +6 -0
  52. package/dist/schema.d.ts.map +1 -0
  53. package/dist/schema.js +5 -0
  54. package/dist/service/accounts-merge.d.ts +63 -0
  55. package/dist/service/accounts-merge.d.ts.map +1 -0
  56. package/dist/service/accounts-merge.js +382 -0
  57. package/dist/service/accounts-organizations.d.ts +97 -0
  58. package/dist/service/accounts-organizations.d.ts.map +1 -0
  59. package/dist/service/accounts-organizations.js +70 -0
  60. package/dist/service/accounts-people.d.ts +1315 -0
  61. package/dist/service/accounts-people.d.ts.map +1 -0
  62. package/dist/service/accounts-people.js +409 -0
  63. package/dist/service/accounts-resolve.d.ts +76 -0
  64. package/dist/service/accounts-resolve.d.ts.map +1 -0
  65. package/dist/service/accounts-resolve.js +103 -0
  66. package/dist/service/accounts-shared.d.ts +68 -0
  67. package/dist/service/accounts-shared.d.ts.map +1 -0
  68. package/dist/service/accounts-shared.js +149 -0
  69. package/dist/service/accounts.d.ts +1465 -0
  70. package/dist/service/accounts.d.ts.map +1 -0
  71. package/dist/service/accounts.js +13 -0
  72. package/dist/service/activities.d.ts +486 -0
  73. package/dist/service/activities.d.ts.map +1 -0
  74. package/dist/service/activities.js +114 -0
  75. package/dist/service/custom-fields.d.ts +118 -0
  76. package/dist/service/custom-fields.d.ts.map +1 -0
  77. package/dist/service/custom-fields.js +88 -0
  78. package/dist/service/customer-signals.d.ts +733 -0
  79. package/dist/service/customer-signals.d.ts.map +1 -0
  80. package/dist/service/customer-signals.js +112 -0
  81. package/dist/service/helpers.d.ts +22 -0
  82. package/dist/service/helpers.d.ts.map +1 -0
  83. package/dist/service/helpers.js +39 -0
  84. package/dist/service/index.d.ts +4434 -0
  85. package/dist/service/index.d.ts.map +1 -0
  86. package/dist/service/index.js +17 -0
  87. package/dist/service/person-documents.d.ts +1201 -0
  88. package/dist/service/person-documents.d.ts.map +1 -0
  89. package/dist/service/person-documents.js +240 -0
  90. package/dist/service/person-relationships.d.ts +502 -0
  91. package/dist/service/person-relationships.d.ts.map +1 -0
  92. package/dist/service/person-relationships.js +121 -0
  93. package/dist/validation.d.ts +3 -0
  94. package/dist/validation.d.ts.map +1 -0
  95. package/dist/validation.js +1 -0
  96. package/package.json +80 -0
@@ -0,0 +1,2945 @@
1
+ import type { PostgresJsDatabase } from "drizzle-orm/postgres-js";
2
+ type Env = {
3
+ Variables: {
4
+ db: PostgresJsDatabase;
5
+ userId?: string;
6
+ };
7
+ };
8
+ export declare const relationshipsRoutes: import("hono/hono-base").HonoBase<Env, import("hono/types").BlankSchema | import("hono/types").MergeSchemaPath<{
9
+ "/organizations": {
10
+ $get: {
11
+ input: {};
12
+ output: {
13
+ data: {
14
+ id: string;
15
+ name: string;
16
+ legalName: string | null;
17
+ website: string | null;
18
+ taxId: string | null;
19
+ industry: string | null;
20
+ relation: "client" | "partner" | "supplier" | "other" | null;
21
+ ownerId: string | null;
22
+ defaultCurrency: string | null;
23
+ preferredLanguage: string | null;
24
+ paymentTerms: number | null;
25
+ status: "active" | "inactive" | "archived";
26
+ source: string | null;
27
+ sourceRef: string | null;
28
+ tags: string[];
29
+ notes: string | null;
30
+ createdAt: string;
31
+ updatedAt: string;
32
+ archivedAt: string | null;
33
+ }[];
34
+ total: number;
35
+ limit: number;
36
+ offset: number;
37
+ };
38
+ outputFormat: "json";
39
+ status: import("hono/utils/http-status").ContentfulStatusCode;
40
+ };
41
+ };
42
+ } & {
43
+ "/organizations": {
44
+ $post: {
45
+ input: {};
46
+ output: {
47
+ data: {
48
+ id: string;
49
+ name: string;
50
+ status: "active" | "inactive" | "archived";
51
+ createdAt: string;
52
+ ownerId: string | null;
53
+ relation: "client" | "partner" | "supplier" | "other" | null;
54
+ taxId: string | null;
55
+ industry: string | null;
56
+ updatedAt: string;
57
+ legalName: string | null;
58
+ website: string | null;
59
+ defaultCurrency: string | null;
60
+ preferredLanguage: string | null;
61
+ paymentTerms: number | null;
62
+ source: string | null;
63
+ sourceRef: string | null;
64
+ tags: string[];
65
+ notes: string | null;
66
+ archivedAt: string | null;
67
+ } | undefined;
68
+ };
69
+ outputFormat: "json";
70
+ status: 201;
71
+ };
72
+ };
73
+ } & {
74
+ "/organizations/:id": {
75
+ $get: {
76
+ input: {
77
+ param: {
78
+ id: string;
79
+ };
80
+ };
81
+ output: {
82
+ error: string;
83
+ };
84
+ outputFormat: "json";
85
+ status: 404;
86
+ } | {
87
+ input: {
88
+ param: {
89
+ id: string;
90
+ };
91
+ };
92
+ output: {
93
+ data: {
94
+ id: string;
95
+ name: string;
96
+ legalName: string | null;
97
+ website: string | null;
98
+ taxId: string | null;
99
+ industry: string | null;
100
+ relation: "client" | "partner" | "supplier" | "other" | null;
101
+ ownerId: string | null;
102
+ defaultCurrency: string | null;
103
+ preferredLanguage: string | null;
104
+ paymentTerms: number | null;
105
+ status: "active" | "inactive" | "archived";
106
+ source: string | null;
107
+ sourceRef: string | null;
108
+ tags: string[];
109
+ notes: string | null;
110
+ createdAt: string;
111
+ updatedAt: string;
112
+ archivedAt: string | null;
113
+ };
114
+ };
115
+ outputFormat: "json";
116
+ status: import("hono/utils/http-status").ContentfulStatusCode;
117
+ };
118
+ };
119
+ } & {
120
+ "/organizations/:id": {
121
+ $patch: {
122
+ input: {
123
+ param: {
124
+ id: string;
125
+ };
126
+ };
127
+ output: {
128
+ error: string;
129
+ };
130
+ outputFormat: "json";
131
+ status: 404;
132
+ } | {
133
+ input: {
134
+ param: {
135
+ id: string;
136
+ };
137
+ };
138
+ output: {
139
+ data: {
140
+ id: string;
141
+ name: string;
142
+ legalName: string | null;
143
+ website: string | null;
144
+ taxId: string | null;
145
+ industry: string | null;
146
+ relation: "client" | "partner" | "supplier" | "other" | null;
147
+ ownerId: string | null;
148
+ defaultCurrency: string | null;
149
+ preferredLanguage: string | null;
150
+ paymentTerms: number | null;
151
+ status: "active" | "inactive" | "archived";
152
+ source: string | null;
153
+ sourceRef: string | null;
154
+ tags: string[];
155
+ notes: string | null;
156
+ createdAt: string;
157
+ updatedAt: string;
158
+ archivedAt: string | null;
159
+ };
160
+ };
161
+ outputFormat: "json";
162
+ status: import("hono/utils/http-status").ContentfulStatusCode;
163
+ };
164
+ };
165
+ } & {
166
+ "/organizations/:id/merge": {
167
+ $post: {
168
+ input: {
169
+ param: {
170
+ id: string;
171
+ };
172
+ };
173
+ output: {
174
+ data: {
175
+ id: string;
176
+ name: string;
177
+ legalName: string | null;
178
+ website: string | null;
179
+ taxId: string | null;
180
+ industry: string | null;
181
+ relation: "client" | "partner" | "supplier" | "other" | null;
182
+ ownerId: string | null;
183
+ defaultCurrency: string | null;
184
+ preferredLanguage: string | null;
185
+ paymentTerms: number | null;
186
+ status: "active" | "inactive" | "archived";
187
+ source: string | null;
188
+ sourceRef: string | null;
189
+ tags: string[];
190
+ notes: string | null;
191
+ createdAt: string;
192
+ updatedAt: string;
193
+ archivedAt: string | null;
194
+ };
195
+ };
196
+ outputFormat: "json";
197
+ status: import("hono/utils/http-status").ContentfulStatusCode;
198
+ } | {
199
+ input: {
200
+ param: {
201
+ id: string;
202
+ };
203
+ };
204
+ output: {
205
+ error: string;
206
+ };
207
+ outputFormat: "json";
208
+ status: 400 | 404;
209
+ };
210
+ };
211
+ } & {
212
+ "/organizations/:id": {
213
+ $delete: {
214
+ input: {
215
+ param: {
216
+ id: string;
217
+ };
218
+ };
219
+ output: {
220
+ error: string;
221
+ };
222
+ outputFormat: "json";
223
+ status: 404;
224
+ } | {
225
+ input: {
226
+ param: {
227
+ id: string;
228
+ };
229
+ };
230
+ output: {
231
+ success: true;
232
+ };
233
+ outputFormat: "json";
234
+ status: import("hono/utils/http-status").ContentfulStatusCode;
235
+ };
236
+ };
237
+ } & {
238
+ "/organizations/:id/contact-methods": {
239
+ $get: {
240
+ input: {
241
+ param: {
242
+ id: string;
243
+ };
244
+ };
245
+ output: {
246
+ data: {
247
+ id: string;
248
+ entityType: string;
249
+ entityId: string;
250
+ kind: "other" | "website" | "email" | "phone" | "mobile" | "whatsapp" | "sms" | "fax" | "social";
251
+ label: string | null;
252
+ value: string;
253
+ normalizedValue: string | null;
254
+ isPrimary: boolean;
255
+ notes: string | null;
256
+ metadata: {
257
+ [x: string]: import("hono/utils/types").JSONValue;
258
+ } | null;
259
+ createdAt: string;
260
+ updatedAt: string;
261
+ }[];
262
+ };
263
+ outputFormat: "json";
264
+ status: import("hono/utils/http-status").ContentfulStatusCode;
265
+ };
266
+ };
267
+ } & {
268
+ "/organizations/:id/contact-methods": {
269
+ $post: {
270
+ input: {
271
+ param: {
272
+ id: string;
273
+ };
274
+ };
275
+ output: {
276
+ data: {
277
+ id: string;
278
+ createdAt: string;
279
+ value: string;
280
+ updatedAt: string;
281
+ notes: string | null;
282
+ kind: "other" | "website" | "email" | "phone" | "mobile" | "whatsapp" | "sms" | "fax" | "social";
283
+ entityType: string;
284
+ entityId: string;
285
+ label: string | null;
286
+ normalizedValue: string | null;
287
+ isPrimary: boolean;
288
+ metadata: {
289
+ [x: string]: import("hono/utils/types").JSONValue;
290
+ } | null;
291
+ } | null;
292
+ };
293
+ outputFormat: "json";
294
+ status: 201;
295
+ };
296
+ };
297
+ } & {
298
+ "/organizations/:id/addresses": {
299
+ $get: {
300
+ input: {
301
+ param: {
302
+ id: string;
303
+ };
304
+ };
305
+ output: {
306
+ data: {
307
+ id: string;
308
+ entityType: string;
309
+ entityId: string;
310
+ label: "primary" | "other" | "billing" | "shipping" | "mailing" | "meeting" | "service" | "legal";
311
+ fullText: string | null;
312
+ line1: string | null;
313
+ line2: string | null;
314
+ city: string | null;
315
+ region: string | null;
316
+ postalCode: string | null;
317
+ country: string | null;
318
+ latitude: number | null;
319
+ longitude: number | null;
320
+ timezone: string | null;
321
+ isPrimary: boolean;
322
+ notes: string | null;
323
+ metadata: {
324
+ [x: string]: import("hono/utils/types").JSONValue;
325
+ } | null;
326
+ createdAt: string;
327
+ updatedAt: string;
328
+ }[];
329
+ };
330
+ outputFormat: "json";
331
+ status: import("hono/utils/http-status").ContentfulStatusCode;
332
+ };
333
+ };
334
+ } & {
335
+ "/organizations/:id/addresses": {
336
+ $post: {
337
+ input: {
338
+ param: {
339
+ id: string;
340
+ };
341
+ };
342
+ output: {
343
+ data: {
344
+ id: string;
345
+ createdAt: string;
346
+ updatedAt: string;
347
+ notes: string | null;
348
+ entityType: string;
349
+ entityId: string;
350
+ label: "primary" | "other" | "billing" | "shipping" | "mailing" | "meeting" | "service" | "legal";
351
+ isPrimary: boolean;
352
+ metadata: {
353
+ [x: string]: import("hono/utils/types").JSONValue;
354
+ } | null;
355
+ fullText: string | null;
356
+ line1: string | null;
357
+ line2: string | null;
358
+ city: string | null;
359
+ region: string | null;
360
+ postalCode: string | null;
361
+ country: string | null;
362
+ latitude: number | null;
363
+ longitude: number | null;
364
+ timezone: string | null;
365
+ } | null;
366
+ };
367
+ outputFormat: "json";
368
+ status: 201;
369
+ };
370
+ };
371
+ } & {
372
+ "/organizations/:id/notes": {
373
+ $get: {
374
+ input: {
375
+ param: {
376
+ id: string;
377
+ };
378
+ };
379
+ output: {
380
+ data: {
381
+ id: string;
382
+ organizationId: string;
383
+ authorId: string;
384
+ content: string;
385
+ createdAt: string;
386
+ }[];
387
+ };
388
+ outputFormat: "json";
389
+ status: import("hono/utils/http-status").ContentfulStatusCode;
390
+ };
391
+ };
392
+ } & {
393
+ "/organizations/:id/notes": {
394
+ $post: {
395
+ input: {
396
+ param: {
397
+ id: string;
398
+ };
399
+ };
400
+ output: {
401
+ error: string;
402
+ };
403
+ outputFormat: "json";
404
+ status: 404;
405
+ } | {
406
+ input: {
407
+ param: {
408
+ id: string;
409
+ };
410
+ };
411
+ output: {
412
+ data: {
413
+ id: string;
414
+ organizationId: string;
415
+ createdAt: string;
416
+ content: string;
417
+ authorId: string;
418
+ };
419
+ };
420
+ outputFormat: "json";
421
+ status: 201;
422
+ };
423
+ };
424
+ } & {
425
+ "/organization-notes/:id": {
426
+ $patch: {
427
+ input: {
428
+ param: {
429
+ id: string;
430
+ };
431
+ };
432
+ output: {
433
+ error: string;
434
+ };
435
+ outputFormat: "json";
436
+ status: 404;
437
+ } | {
438
+ input: {
439
+ param: {
440
+ id: string;
441
+ };
442
+ };
443
+ output: {
444
+ data: {
445
+ id: string;
446
+ organizationId: string;
447
+ authorId: string;
448
+ content: string;
449
+ createdAt: string;
450
+ };
451
+ };
452
+ outputFormat: "json";
453
+ status: import("hono/utils/http-status").ContentfulStatusCode;
454
+ };
455
+ };
456
+ } & {
457
+ "/organization-notes/:id": {
458
+ $delete: {
459
+ input: {
460
+ param: {
461
+ id: string;
462
+ };
463
+ };
464
+ output: {
465
+ error: string;
466
+ };
467
+ outputFormat: "json";
468
+ status: 404;
469
+ } | {
470
+ input: {
471
+ param: {
472
+ id: string;
473
+ };
474
+ };
475
+ output: {
476
+ success: true;
477
+ };
478
+ outputFormat: "json";
479
+ status: import("hono/utils/http-status").ContentfulStatusCode;
480
+ };
481
+ };
482
+ } & {
483
+ "/people": {
484
+ $get: {
485
+ input: {};
486
+ output: {
487
+ data: {
488
+ id: string;
489
+ organizationId: string | null;
490
+ firstName: string;
491
+ middleName: string | null;
492
+ lastName: string;
493
+ gender: string | null;
494
+ jobTitle: string | null;
495
+ relation: "client" | "partner" | "supplier" | "other" | null;
496
+ preferredLanguage: string | null;
497
+ preferredCurrency: string | null;
498
+ ownerId: string | null;
499
+ status: "active" | "inactive" | "archived";
500
+ source: string | null;
501
+ sourceRef: string | null;
502
+ tags: string[];
503
+ dateOfBirth: string | null;
504
+ notes: string | null;
505
+ accessibilityEncrypted: {
506
+ enc: string;
507
+ } | null;
508
+ dietaryEncrypted: {
509
+ enc: string;
510
+ } | null;
511
+ loyaltyEncrypted: {
512
+ enc: string;
513
+ } | null;
514
+ insuranceEncrypted: {
515
+ enc: string;
516
+ } | null;
517
+ createdAt: string;
518
+ updatedAt: string;
519
+ archivedAt: string | null;
520
+ email: string | null;
521
+ phone: string | null;
522
+ website: string | null;
523
+ }[];
524
+ total: number;
525
+ limit: number;
526
+ offset: number;
527
+ };
528
+ outputFormat: "json";
529
+ status: import("hono/utils/http-status").ContentfulStatusCode;
530
+ };
531
+ };
532
+ } & {
533
+ "/people": {
534
+ $post: {
535
+ input: {};
536
+ output: {
537
+ data: {
538
+ id: string;
539
+ organizationId: string | null;
540
+ firstName: string;
541
+ middleName: string | null;
542
+ lastName: string;
543
+ gender: string | null;
544
+ jobTitle: string | null;
545
+ relation: "client" | "partner" | "supplier" | "other" | null;
546
+ preferredLanguage: string | null;
547
+ preferredCurrency: string | null;
548
+ ownerId: string | null;
549
+ status: "active" | "inactive" | "archived";
550
+ source: string | null;
551
+ sourceRef: string | null;
552
+ tags: string[];
553
+ dateOfBirth: string | null;
554
+ notes: string | null;
555
+ accessibilityEncrypted: {
556
+ enc: string;
557
+ } | null;
558
+ dietaryEncrypted: {
559
+ enc: string;
560
+ } | null;
561
+ loyaltyEncrypted: {
562
+ enc: string;
563
+ } | null;
564
+ insuranceEncrypted: {
565
+ enc: string;
566
+ } | null;
567
+ createdAt: string;
568
+ updatedAt: string;
569
+ archivedAt: string | null;
570
+ email: string | null;
571
+ phone: string | null;
572
+ website: string | null;
573
+ } | null;
574
+ };
575
+ outputFormat: "json";
576
+ status: 201;
577
+ };
578
+ };
579
+ } & {
580
+ "/people/:id": {
581
+ $get: {
582
+ input: {
583
+ param: {
584
+ id: string;
585
+ };
586
+ };
587
+ output: {
588
+ error: string;
589
+ };
590
+ outputFormat: "json";
591
+ status: 404;
592
+ } | {
593
+ input: {
594
+ param: {
595
+ id: string;
596
+ };
597
+ };
598
+ output: {
599
+ data: {
600
+ id: string;
601
+ organizationId: string | null;
602
+ firstName: string;
603
+ middleName: string | null;
604
+ lastName: string;
605
+ gender: string | null;
606
+ jobTitle: string | null;
607
+ relation: "client" | "partner" | "supplier" | "other" | null;
608
+ preferredLanguage: string | null;
609
+ preferredCurrency: string | null;
610
+ ownerId: string | null;
611
+ status: "active" | "inactive" | "archived";
612
+ source: string | null;
613
+ sourceRef: string | null;
614
+ tags: string[];
615
+ dateOfBirth: string | null;
616
+ notes: string | null;
617
+ accessibilityEncrypted: {
618
+ enc: string;
619
+ } | null;
620
+ dietaryEncrypted: {
621
+ enc: string;
622
+ } | null;
623
+ loyaltyEncrypted: {
624
+ enc: string;
625
+ } | null;
626
+ insuranceEncrypted: {
627
+ enc: string;
628
+ } | null;
629
+ createdAt: string;
630
+ updatedAt: string;
631
+ archivedAt: string | null;
632
+ email: string | null;
633
+ phone: string | null;
634
+ website: string | null;
635
+ };
636
+ };
637
+ outputFormat: "json";
638
+ status: import("hono/utils/http-status").ContentfulStatusCode;
639
+ };
640
+ };
641
+ } & {
642
+ "/people/:id": {
643
+ $patch: {
644
+ input: {
645
+ param: {
646
+ id: string;
647
+ };
648
+ };
649
+ output: {
650
+ error: string;
651
+ };
652
+ outputFormat: "json";
653
+ status: 404;
654
+ } | {
655
+ input: {
656
+ param: {
657
+ id: string;
658
+ };
659
+ };
660
+ output: {
661
+ data: {
662
+ id: string;
663
+ organizationId: string | null;
664
+ firstName: string;
665
+ middleName: string | null;
666
+ lastName: string;
667
+ gender: string | null;
668
+ jobTitle: string | null;
669
+ relation: "client" | "partner" | "supplier" | "other" | null;
670
+ preferredLanguage: string | null;
671
+ preferredCurrency: string | null;
672
+ ownerId: string | null;
673
+ status: "active" | "inactive" | "archived";
674
+ source: string | null;
675
+ sourceRef: string | null;
676
+ tags: string[];
677
+ dateOfBirth: string | null;
678
+ notes: string | null;
679
+ accessibilityEncrypted: {
680
+ enc: string;
681
+ } | null;
682
+ dietaryEncrypted: {
683
+ enc: string;
684
+ } | null;
685
+ loyaltyEncrypted: {
686
+ enc: string;
687
+ } | null;
688
+ insuranceEncrypted: {
689
+ enc: string;
690
+ } | null;
691
+ createdAt: string;
692
+ updatedAt: string;
693
+ archivedAt: string | null;
694
+ email: string | null;
695
+ phone: string | null;
696
+ website: string | null;
697
+ };
698
+ };
699
+ outputFormat: "json";
700
+ status: import("hono/utils/http-status").ContentfulStatusCode;
701
+ };
702
+ };
703
+ } & {
704
+ "/people/:id/merge": {
705
+ $post: {
706
+ input: {
707
+ param: {
708
+ id: string;
709
+ };
710
+ };
711
+ output: {
712
+ error: string;
713
+ };
714
+ outputFormat: "json";
715
+ status: 400 | 404;
716
+ } | {
717
+ input: {
718
+ param: {
719
+ id: string;
720
+ };
721
+ };
722
+ output: {
723
+ data: {
724
+ id: string;
725
+ organizationId: string | null;
726
+ firstName: string;
727
+ middleName: string | null;
728
+ lastName: string;
729
+ gender: string | null;
730
+ jobTitle: string | null;
731
+ relation: "client" | "partner" | "supplier" | "other" | null;
732
+ preferredLanguage: string | null;
733
+ preferredCurrency: string | null;
734
+ ownerId: string | null;
735
+ status: "active" | "inactive" | "archived";
736
+ source: string | null;
737
+ sourceRef: string | null;
738
+ tags: string[];
739
+ dateOfBirth: string | null;
740
+ notes: string | null;
741
+ accessibilityEncrypted: {
742
+ enc: string;
743
+ } | null;
744
+ dietaryEncrypted: {
745
+ enc: string;
746
+ } | null;
747
+ loyaltyEncrypted: {
748
+ enc: string;
749
+ } | null;
750
+ insuranceEncrypted: {
751
+ enc: string;
752
+ } | null;
753
+ createdAt: string;
754
+ updatedAt: string;
755
+ archivedAt: string | null;
756
+ };
757
+ };
758
+ outputFormat: "json";
759
+ status: import("hono/utils/http-status").ContentfulStatusCode;
760
+ };
761
+ };
762
+ } & {
763
+ "/people/:id": {
764
+ $delete: {
765
+ input: {
766
+ param: {
767
+ id: string;
768
+ };
769
+ };
770
+ output: {
771
+ error: string;
772
+ };
773
+ outputFormat: "json";
774
+ status: 404;
775
+ } | {
776
+ input: {
777
+ param: {
778
+ id: string;
779
+ };
780
+ };
781
+ output: {
782
+ success: true;
783
+ };
784
+ outputFormat: "json";
785
+ status: import("hono/utils/http-status").ContentfulStatusCode;
786
+ };
787
+ };
788
+ } & {
789
+ "/people/:id/contact-methods": {
790
+ $get: {
791
+ input: {
792
+ param: {
793
+ id: string;
794
+ };
795
+ };
796
+ output: {
797
+ data: {
798
+ id: string;
799
+ entityType: string;
800
+ entityId: string;
801
+ kind: "other" | "website" | "email" | "phone" | "mobile" | "whatsapp" | "sms" | "fax" | "social";
802
+ label: string | null;
803
+ value: string;
804
+ normalizedValue: string | null;
805
+ isPrimary: boolean;
806
+ notes: string | null;
807
+ metadata: {
808
+ [x: string]: import("hono/utils/types").JSONValue;
809
+ } | null;
810
+ createdAt: string;
811
+ updatedAt: string;
812
+ }[];
813
+ };
814
+ outputFormat: "json";
815
+ status: import("hono/utils/http-status").ContentfulStatusCode;
816
+ };
817
+ };
818
+ } & {
819
+ "/people/:id/contact-methods": {
820
+ $post: {
821
+ input: {
822
+ param: {
823
+ id: string;
824
+ };
825
+ };
826
+ output: {
827
+ data: {
828
+ id: string;
829
+ createdAt: string;
830
+ value: string;
831
+ updatedAt: string;
832
+ notes: string | null;
833
+ kind: "other" | "website" | "email" | "phone" | "mobile" | "whatsapp" | "sms" | "fax" | "social";
834
+ entityType: string;
835
+ entityId: string;
836
+ label: string | null;
837
+ normalizedValue: string | null;
838
+ isPrimary: boolean;
839
+ metadata: {
840
+ [x: string]: import("hono/utils/types").JSONValue;
841
+ } | null;
842
+ } | null;
843
+ };
844
+ outputFormat: "json";
845
+ status: 201;
846
+ };
847
+ };
848
+ } & {
849
+ "/people/:id/addresses": {
850
+ $get: {
851
+ input: {
852
+ param: {
853
+ id: string;
854
+ };
855
+ };
856
+ output: {
857
+ data: {
858
+ id: string;
859
+ entityType: string;
860
+ entityId: string;
861
+ label: "primary" | "other" | "billing" | "shipping" | "mailing" | "meeting" | "service" | "legal";
862
+ fullText: string | null;
863
+ line1: string | null;
864
+ line2: string | null;
865
+ city: string | null;
866
+ region: string | null;
867
+ postalCode: string | null;
868
+ country: string | null;
869
+ latitude: number | null;
870
+ longitude: number | null;
871
+ timezone: string | null;
872
+ isPrimary: boolean;
873
+ notes: string | null;
874
+ metadata: {
875
+ [x: string]: import("hono/utils/types").JSONValue;
876
+ } | null;
877
+ createdAt: string;
878
+ updatedAt: string;
879
+ }[];
880
+ };
881
+ outputFormat: "json";
882
+ status: import("hono/utils/http-status").ContentfulStatusCode;
883
+ };
884
+ };
885
+ } & {
886
+ "/people/:id/addresses": {
887
+ $post: {
888
+ input: {
889
+ param: {
890
+ id: string;
891
+ };
892
+ };
893
+ output: {
894
+ data: {
895
+ id: string;
896
+ createdAt: string;
897
+ updatedAt: string;
898
+ notes: string | null;
899
+ entityType: string;
900
+ entityId: string;
901
+ label: "primary" | "other" | "billing" | "shipping" | "mailing" | "meeting" | "service" | "legal";
902
+ isPrimary: boolean;
903
+ metadata: {
904
+ [x: string]: import("hono/utils/types").JSONValue;
905
+ } | null;
906
+ fullText: string | null;
907
+ line1: string | null;
908
+ line2: string | null;
909
+ city: string | null;
910
+ region: string | null;
911
+ postalCode: string | null;
912
+ country: string | null;
913
+ latitude: number | null;
914
+ longitude: number | null;
915
+ timezone: string | null;
916
+ } | null;
917
+ };
918
+ outputFormat: "json";
919
+ status: 201;
920
+ };
921
+ };
922
+ } & {
923
+ "/people/:id/notes": {
924
+ $get: {
925
+ input: {
926
+ param: {
927
+ id: string;
928
+ };
929
+ };
930
+ output: {
931
+ data: {
932
+ id: string;
933
+ personId: string;
934
+ authorId: string;
935
+ content: string;
936
+ createdAt: string;
937
+ }[];
938
+ };
939
+ outputFormat: "json";
940
+ status: import("hono/utils/http-status").ContentfulStatusCode;
941
+ };
942
+ };
943
+ } & {
944
+ "/people/:id/notes": {
945
+ $post: {
946
+ input: {
947
+ param: {
948
+ id: string;
949
+ };
950
+ };
951
+ output: {
952
+ error: string;
953
+ };
954
+ outputFormat: "json";
955
+ status: 404;
956
+ } | {
957
+ input: {
958
+ param: {
959
+ id: string;
960
+ };
961
+ };
962
+ output: {
963
+ data: {
964
+ id: string;
965
+ createdAt: string;
966
+ content: string;
967
+ personId: string;
968
+ authorId: string;
969
+ };
970
+ };
971
+ outputFormat: "json";
972
+ status: 201;
973
+ };
974
+ };
975
+ } & {
976
+ "/person-notes/:id": {
977
+ $patch: {
978
+ input: {
979
+ param: {
980
+ id: string;
981
+ };
982
+ };
983
+ output: {
984
+ error: string;
985
+ };
986
+ outputFormat: "json";
987
+ status: 404;
988
+ } | {
989
+ input: {
990
+ param: {
991
+ id: string;
992
+ };
993
+ };
994
+ output: {
995
+ data: {
996
+ id: string;
997
+ personId: string;
998
+ authorId: string;
999
+ content: string;
1000
+ createdAt: string;
1001
+ };
1002
+ };
1003
+ outputFormat: "json";
1004
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1005
+ };
1006
+ };
1007
+ } & {
1008
+ "/person-notes/:id": {
1009
+ $delete: {
1010
+ input: {
1011
+ param: {
1012
+ id: string;
1013
+ };
1014
+ };
1015
+ output: {
1016
+ error: string;
1017
+ };
1018
+ outputFormat: "json";
1019
+ status: 404;
1020
+ } | {
1021
+ input: {
1022
+ param: {
1023
+ id: string;
1024
+ };
1025
+ };
1026
+ output: {
1027
+ success: true;
1028
+ };
1029
+ outputFormat: "json";
1030
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1031
+ };
1032
+ };
1033
+ } & {
1034
+ "/people/:id/payment-methods": {
1035
+ $get: {
1036
+ input: {
1037
+ param: {
1038
+ id: string;
1039
+ };
1040
+ };
1041
+ output: {
1042
+ data: {
1043
+ id: string;
1044
+ personId: string;
1045
+ brand: string;
1046
+ last4: string | null;
1047
+ holderName: string | null;
1048
+ expMonth: number | null;
1049
+ expYear: number | null;
1050
+ processorToken: string;
1051
+ isDefault: boolean;
1052
+ createdAt: string;
1053
+ }[];
1054
+ };
1055
+ outputFormat: "json";
1056
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1057
+ };
1058
+ };
1059
+ } & {
1060
+ "/people/:id/payment-methods": {
1061
+ $post: {
1062
+ input: {
1063
+ param: {
1064
+ id: string;
1065
+ };
1066
+ };
1067
+ output: {
1068
+ error: string;
1069
+ };
1070
+ outputFormat: "json";
1071
+ status: 404;
1072
+ } | {
1073
+ input: {
1074
+ param: {
1075
+ id: string;
1076
+ };
1077
+ };
1078
+ output: {
1079
+ data: {
1080
+ id: string;
1081
+ brand: string;
1082
+ createdAt: string;
1083
+ last4: string | null;
1084
+ holderName: string | null;
1085
+ expMonth: number | null;
1086
+ expYear: number | null;
1087
+ processorToken: string;
1088
+ isDefault: boolean;
1089
+ personId: string;
1090
+ };
1091
+ };
1092
+ outputFormat: "json";
1093
+ status: 201;
1094
+ };
1095
+ };
1096
+ } & {
1097
+ "/person-payment-methods/:id": {
1098
+ $patch: {
1099
+ input: {
1100
+ param: {
1101
+ id: string;
1102
+ };
1103
+ };
1104
+ output: {
1105
+ error: string;
1106
+ };
1107
+ outputFormat: "json";
1108
+ status: 404;
1109
+ } | {
1110
+ input: {
1111
+ param: {
1112
+ id: string;
1113
+ };
1114
+ };
1115
+ output: {
1116
+ data: {
1117
+ id: string;
1118
+ personId: string;
1119
+ brand: string;
1120
+ last4: string | null;
1121
+ holderName: string | null;
1122
+ expMonth: number | null;
1123
+ expYear: number | null;
1124
+ processorToken: string;
1125
+ isDefault: boolean;
1126
+ createdAt: string;
1127
+ };
1128
+ };
1129
+ outputFormat: "json";
1130
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1131
+ };
1132
+ };
1133
+ } & {
1134
+ "/person-payment-methods/:id": {
1135
+ $delete: {
1136
+ input: {
1137
+ param: {
1138
+ id: string;
1139
+ };
1140
+ };
1141
+ output: {
1142
+ error: string;
1143
+ };
1144
+ outputFormat: "json";
1145
+ status: 404;
1146
+ } | {
1147
+ input: {
1148
+ param: {
1149
+ id: string;
1150
+ };
1151
+ };
1152
+ output: {
1153
+ success: true;
1154
+ };
1155
+ outputFormat: "json";
1156
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1157
+ };
1158
+ };
1159
+ } & {
1160
+ "/people/:id/communications": {
1161
+ $get: {
1162
+ input: {
1163
+ param: {
1164
+ id: string;
1165
+ };
1166
+ };
1167
+ output: {
1168
+ data: {
1169
+ id: string;
1170
+ personId: string;
1171
+ organizationId: string | null;
1172
+ channel: "other" | "email" | "phone" | "whatsapp" | "sms" | "meeting";
1173
+ direction: "inbound" | "outbound";
1174
+ subject: string | null;
1175
+ content: string | null;
1176
+ sentAt: string | null;
1177
+ createdAt: string;
1178
+ }[];
1179
+ };
1180
+ outputFormat: "json";
1181
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1182
+ };
1183
+ };
1184
+ } & {
1185
+ "/people/:id/communications": {
1186
+ $post: {
1187
+ input: {
1188
+ param: {
1189
+ id: string;
1190
+ };
1191
+ };
1192
+ output: {
1193
+ error: string;
1194
+ };
1195
+ outputFormat: "json";
1196
+ status: 404;
1197
+ } | {
1198
+ input: {
1199
+ param: {
1200
+ id: string;
1201
+ };
1202
+ };
1203
+ output: {
1204
+ data: {
1205
+ id: string;
1206
+ organizationId: string | null;
1207
+ createdAt: string;
1208
+ content: string | null;
1209
+ channel: "other" | "email" | "phone" | "whatsapp" | "sms" | "meeting";
1210
+ direction: "inbound" | "outbound";
1211
+ subject: string | null;
1212
+ sentAt: string | null;
1213
+ personId: string;
1214
+ };
1215
+ };
1216
+ outputFormat: "json";
1217
+ status: 201;
1218
+ };
1219
+ };
1220
+ } & {
1221
+ "/segments": {
1222
+ $get: {
1223
+ input: {};
1224
+ output: {
1225
+ data: {
1226
+ id: string;
1227
+ name: string;
1228
+ description: string | null;
1229
+ conditions: {
1230
+ [x: string]: import("hono/utils/types").JSONValue;
1231
+ } | null;
1232
+ createdAt: string;
1233
+ updatedAt: string;
1234
+ }[];
1235
+ };
1236
+ outputFormat: "json";
1237
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1238
+ };
1239
+ };
1240
+ } & {
1241
+ "/segments": {
1242
+ $post: {
1243
+ input: {};
1244
+ output: {
1245
+ data: {
1246
+ id: string;
1247
+ name: string;
1248
+ createdAt: string;
1249
+ updatedAt: string;
1250
+ description: string | null;
1251
+ conditions: {
1252
+ [x: string]: import("hono/utils/types").JSONValue;
1253
+ } | null;
1254
+ } | undefined;
1255
+ };
1256
+ outputFormat: "json";
1257
+ status: 201;
1258
+ };
1259
+ };
1260
+ } & {
1261
+ "/segments/:segmentId": {
1262
+ $delete: {
1263
+ input: {
1264
+ param: {
1265
+ segmentId: string;
1266
+ };
1267
+ };
1268
+ output: {
1269
+ error: string;
1270
+ };
1271
+ outputFormat: "json";
1272
+ status: 404;
1273
+ } | {
1274
+ input: {
1275
+ param: {
1276
+ segmentId: string;
1277
+ };
1278
+ };
1279
+ output: {
1280
+ success: true;
1281
+ };
1282
+ outputFormat: "json";
1283
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1284
+ };
1285
+ };
1286
+ } & {
1287
+ "/people/export": {
1288
+ $post: {
1289
+ input: {};
1290
+ output: {};
1291
+ outputFormat: string;
1292
+ status: import("hono/utils/http-status").StatusCode;
1293
+ };
1294
+ };
1295
+ } & {
1296
+ "/people/import": {
1297
+ $post: {
1298
+ input: {};
1299
+ output: {
1300
+ error: "CSV must have a header row and at least one data row" | undefined;
1301
+ };
1302
+ outputFormat: "json";
1303
+ status: 400;
1304
+ } | {
1305
+ input: {};
1306
+ output: {
1307
+ imported: number;
1308
+ errors: {
1309
+ row: number;
1310
+ error: string;
1311
+ }[];
1312
+ };
1313
+ outputFormat: "json";
1314
+ status: 200;
1315
+ };
1316
+ };
1317
+ } & {
1318
+ "/contact-methods/:id": {
1319
+ $patch: {
1320
+ input: {
1321
+ param: {
1322
+ id: string;
1323
+ };
1324
+ };
1325
+ output: {
1326
+ error: string;
1327
+ };
1328
+ outputFormat: "json";
1329
+ status: 404;
1330
+ } | {
1331
+ input: {
1332
+ param: {
1333
+ id: string;
1334
+ };
1335
+ };
1336
+ output: {
1337
+ data: {
1338
+ id: string;
1339
+ entityType: string;
1340
+ entityId: string;
1341
+ kind: "other" | "website" | "email" | "phone" | "mobile" | "whatsapp" | "sms" | "fax" | "social";
1342
+ label: string | null;
1343
+ value: string;
1344
+ normalizedValue: string | null;
1345
+ isPrimary: boolean;
1346
+ notes: string | null;
1347
+ metadata: {
1348
+ [x: string]: import("hono/utils/types").JSONValue;
1349
+ } | null;
1350
+ createdAt: string;
1351
+ updatedAt: string;
1352
+ };
1353
+ };
1354
+ outputFormat: "json";
1355
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1356
+ };
1357
+ };
1358
+ } & {
1359
+ "/contact-methods/:id": {
1360
+ $delete: {
1361
+ input: {
1362
+ param: {
1363
+ id: string;
1364
+ };
1365
+ };
1366
+ output: {
1367
+ error: string;
1368
+ };
1369
+ outputFormat: "json";
1370
+ status: 404;
1371
+ } | {
1372
+ input: {
1373
+ param: {
1374
+ id: string;
1375
+ };
1376
+ };
1377
+ output: {
1378
+ success: true;
1379
+ };
1380
+ outputFormat: "json";
1381
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1382
+ };
1383
+ };
1384
+ } & {
1385
+ "/addresses/:id": {
1386
+ $patch: {
1387
+ input: {
1388
+ param: {
1389
+ id: string;
1390
+ };
1391
+ };
1392
+ output: {
1393
+ error: string;
1394
+ };
1395
+ outputFormat: "json";
1396
+ status: 404;
1397
+ } | {
1398
+ input: {
1399
+ param: {
1400
+ id: string;
1401
+ };
1402
+ };
1403
+ output: {
1404
+ data: {
1405
+ id: string;
1406
+ entityType: string;
1407
+ entityId: string;
1408
+ label: "primary" | "other" | "billing" | "shipping" | "mailing" | "meeting" | "service" | "legal";
1409
+ fullText: string | null;
1410
+ line1: string | null;
1411
+ line2: string | null;
1412
+ city: string | null;
1413
+ region: string | null;
1414
+ postalCode: string | null;
1415
+ country: string | null;
1416
+ latitude: number | null;
1417
+ longitude: number | null;
1418
+ timezone: string | null;
1419
+ isPrimary: boolean;
1420
+ notes: string | null;
1421
+ metadata: {
1422
+ [x: string]: import("hono/utils/types").JSONValue;
1423
+ } | null;
1424
+ createdAt: string;
1425
+ updatedAt: string;
1426
+ };
1427
+ };
1428
+ outputFormat: "json";
1429
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1430
+ };
1431
+ };
1432
+ } & {
1433
+ "/addresses/:id": {
1434
+ $delete: {
1435
+ input: {
1436
+ param: {
1437
+ id: string;
1438
+ };
1439
+ };
1440
+ output: {
1441
+ error: string;
1442
+ };
1443
+ outputFormat: "json";
1444
+ status: 404;
1445
+ } | {
1446
+ input: {
1447
+ param: {
1448
+ id: string;
1449
+ };
1450
+ };
1451
+ output: {
1452
+ success: true;
1453
+ };
1454
+ outputFormat: "json";
1455
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1456
+ };
1457
+ };
1458
+ }, "/"> | import("hono/types").MergeSchemaPath<{
1459
+ "/people/:id/documents": {
1460
+ $get: {
1461
+ input: {
1462
+ param: {
1463
+ id: string;
1464
+ };
1465
+ };
1466
+ output: {
1467
+ data: {
1468
+ id: string;
1469
+ personId: string;
1470
+ type: "other" | "visa" | "passport" | "id_card" | "driver_license";
1471
+ numberEncrypted: {
1472
+ enc: string;
1473
+ } | null;
1474
+ issuingAuthority: string | null;
1475
+ issuingCountry: string | null;
1476
+ issueDate: string | null;
1477
+ expiryDate: string | null;
1478
+ attachmentId: string | null;
1479
+ isPrimary: boolean;
1480
+ notes: string | null;
1481
+ metadata: {
1482
+ [x: string]: import("hono/utils/types").JSONValue;
1483
+ } | null;
1484
+ createdAt: string;
1485
+ updatedAt: string;
1486
+ }[];
1487
+ };
1488
+ outputFormat: "json";
1489
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1490
+ };
1491
+ };
1492
+ } & {
1493
+ "/people/:id/documents": {
1494
+ $post: {
1495
+ input: {
1496
+ param: {
1497
+ id: string;
1498
+ };
1499
+ };
1500
+ output: {
1501
+ error: string;
1502
+ };
1503
+ outputFormat: "json";
1504
+ status: 404;
1505
+ } | {
1506
+ input: {
1507
+ param: {
1508
+ id: string;
1509
+ };
1510
+ };
1511
+ output: {
1512
+ data: {
1513
+ id: string;
1514
+ createdAt: string;
1515
+ type: "other" | "visa" | "passport" | "id_card" | "driver_license";
1516
+ updatedAt: string;
1517
+ notes: string | null;
1518
+ isPrimary: boolean;
1519
+ metadata: {
1520
+ [x: string]: import("hono/utils/types").JSONValue;
1521
+ } | null;
1522
+ personId: string;
1523
+ numberEncrypted: {
1524
+ enc: string;
1525
+ } | null;
1526
+ issuingAuthority: string | null;
1527
+ issuingCountry: string | null;
1528
+ issueDate: string | null;
1529
+ expiryDate: string | null;
1530
+ attachmentId: string | null;
1531
+ };
1532
+ };
1533
+ outputFormat: "json";
1534
+ status: 201;
1535
+ };
1536
+ };
1537
+ } & {
1538
+ "/person-documents/:id": {
1539
+ $get: {
1540
+ input: {
1541
+ param: {
1542
+ id: string;
1543
+ };
1544
+ };
1545
+ output: {
1546
+ error: string;
1547
+ };
1548
+ outputFormat: "json";
1549
+ status: 404;
1550
+ } | {
1551
+ input: {
1552
+ param: {
1553
+ id: string;
1554
+ };
1555
+ };
1556
+ output: {
1557
+ data: {
1558
+ id: string;
1559
+ personId: string;
1560
+ type: "other" | "visa" | "passport" | "id_card" | "driver_license";
1561
+ numberEncrypted: {
1562
+ enc: string;
1563
+ } | null;
1564
+ issuingAuthority: string | null;
1565
+ issuingCountry: string | null;
1566
+ issueDate: string | null;
1567
+ expiryDate: string | null;
1568
+ attachmentId: string | null;
1569
+ isPrimary: boolean;
1570
+ notes: string | null;
1571
+ metadata: {
1572
+ [x: string]: import("hono/utils/types").JSONValue;
1573
+ } | null;
1574
+ createdAt: string;
1575
+ updatedAt: string;
1576
+ };
1577
+ };
1578
+ outputFormat: "json";
1579
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1580
+ };
1581
+ };
1582
+ } & {
1583
+ "/person-documents/:id": {
1584
+ $patch: {
1585
+ input: {
1586
+ param: {
1587
+ id: string;
1588
+ };
1589
+ };
1590
+ output: {
1591
+ error: string;
1592
+ };
1593
+ outputFormat: "json";
1594
+ status: 404;
1595
+ } | {
1596
+ input: {
1597
+ param: {
1598
+ id: string;
1599
+ };
1600
+ };
1601
+ output: {
1602
+ data: {
1603
+ id: string;
1604
+ personId: string;
1605
+ type: "other" | "visa" | "passport" | "id_card" | "driver_license";
1606
+ numberEncrypted: {
1607
+ enc: string;
1608
+ } | null;
1609
+ issuingAuthority: string | null;
1610
+ issuingCountry: string | null;
1611
+ issueDate: string | null;
1612
+ expiryDate: string | null;
1613
+ attachmentId: string | null;
1614
+ isPrimary: boolean;
1615
+ notes: string | null;
1616
+ metadata: {
1617
+ [x: string]: import("hono/utils/types").JSONValue;
1618
+ } | null;
1619
+ createdAt: string;
1620
+ updatedAt: string;
1621
+ };
1622
+ };
1623
+ outputFormat: "json";
1624
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1625
+ };
1626
+ };
1627
+ } & {
1628
+ "/person-documents/:id": {
1629
+ $delete: {
1630
+ input: {
1631
+ param: {
1632
+ id: string;
1633
+ };
1634
+ };
1635
+ output: {
1636
+ error: string;
1637
+ };
1638
+ outputFormat: "json";
1639
+ status: 404;
1640
+ } | {
1641
+ input: {
1642
+ param: {
1643
+ id: string;
1644
+ };
1645
+ };
1646
+ output: {
1647
+ success: true;
1648
+ };
1649
+ outputFormat: "json";
1650
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1651
+ };
1652
+ };
1653
+ } & {
1654
+ "/person-documents/:id/set-primary": {
1655
+ $post: {
1656
+ input: {
1657
+ param: {
1658
+ id: string;
1659
+ };
1660
+ };
1661
+ output: {
1662
+ error: string;
1663
+ };
1664
+ outputFormat: "json";
1665
+ status: 404;
1666
+ } | {
1667
+ input: {
1668
+ param: {
1669
+ id: string;
1670
+ };
1671
+ };
1672
+ output: {
1673
+ data: {
1674
+ id: string;
1675
+ personId: string;
1676
+ type: "other" | "visa" | "passport" | "id_card" | "driver_license";
1677
+ numberEncrypted: {
1678
+ enc: string;
1679
+ } | null;
1680
+ issuingAuthority: string | null;
1681
+ issuingCountry: string | null;
1682
+ issueDate: string | null;
1683
+ expiryDate: string | null;
1684
+ attachmentId: string | null;
1685
+ isPrimary: boolean;
1686
+ notes: string | null;
1687
+ metadata: {
1688
+ [x: string]: import("hono/utils/types").JSONValue;
1689
+ } | null;
1690
+ createdAt: string;
1691
+ updatedAt: string;
1692
+ };
1693
+ };
1694
+ outputFormat: "json";
1695
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1696
+ };
1697
+ };
1698
+ } & {
1699
+ "/people/:id/travel-snapshot": {
1700
+ $get: {
1701
+ input: {
1702
+ param: {
1703
+ id: string;
1704
+ };
1705
+ };
1706
+ output: {
1707
+ error: string;
1708
+ };
1709
+ outputFormat: "json";
1710
+ status: 503;
1711
+ } | {
1712
+ input: {
1713
+ param: {
1714
+ id: string;
1715
+ };
1716
+ };
1717
+ output: {
1718
+ error: string;
1719
+ };
1720
+ outputFormat: "json";
1721
+ status: 404;
1722
+ } | {
1723
+ input: {
1724
+ param: {
1725
+ id: string;
1726
+ };
1727
+ };
1728
+ output: {
1729
+ data: {
1730
+ dateOfBirth: string | null;
1731
+ dietaryRequirements: string | null;
1732
+ accessibilityNeeds: string | null;
1733
+ documentType: import("../index.js").PersonDocumentType | null;
1734
+ documentNumber: string | null;
1735
+ documentExpiry: string | null;
1736
+ documentIssuingCountry: string | null;
1737
+ documentIssuingAuthority: string | null;
1738
+ documentPersonDocumentId: string | null;
1739
+ };
1740
+ };
1741
+ outputFormat: "json";
1742
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1743
+ };
1744
+ };
1745
+ } & {
1746
+ "/people/:id/profile-pii": {
1747
+ $patch: {
1748
+ input: {
1749
+ param: {
1750
+ id: string;
1751
+ };
1752
+ };
1753
+ output: {
1754
+ error: string;
1755
+ };
1756
+ outputFormat: "json";
1757
+ status: 503;
1758
+ } | {
1759
+ input: {
1760
+ param: {
1761
+ id: string;
1762
+ };
1763
+ };
1764
+ output: {
1765
+ error: string;
1766
+ };
1767
+ outputFormat: "json";
1768
+ status: 400;
1769
+ } | {
1770
+ input: {
1771
+ param: {
1772
+ id: string;
1773
+ };
1774
+ };
1775
+ output: {
1776
+ error: string;
1777
+ };
1778
+ outputFormat: "json";
1779
+ status: 404;
1780
+ } | {
1781
+ input: {
1782
+ param: {
1783
+ id: string;
1784
+ };
1785
+ };
1786
+ output: {
1787
+ success: true;
1788
+ };
1789
+ outputFormat: "json";
1790
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1791
+ };
1792
+ };
1793
+ } & {
1794
+ "/people/:id/documents/from-plaintext": {
1795
+ $post: {
1796
+ input: {
1797
+ param: {
1798
+ id: string;
1799
+ };
1800
+ };
1801
+ output: {
1802
+ error: string;
1803
+ };
1804
+ outputFormat: "json";
1805
+ status: 503;
1806
+ } | {
1807
+ input: {
1808
+ param: {
1809
+ id: string;
1810
+ };
1811
+ };
1812
+ output: {
1813
+ error: string;
1814
+ };
1815
+ outputFormat: "json";
1816
+ status: 404;
1817
+ } | {
1818
+ input: {
1819
+ param: {
1820
+ id: string;
1821
+ };
1822
+ };
1823
+ output: {
1824
+ data: {
1825
+ id: string;
1826
+ createdAt: string;
1827
+ type: "other" | "visa" | "passport" | "id_card" | "driver_license";
1828
+ updatedAt: string;
1829
+ notes: string | null;
1830
+ isPrimary: boolean;
1831
+ metadata: {
1832
+ [x: string]: import("hono/utils/types").JSONValue;
1833
+ } | null;
1834
+ personId: string;
1835
+ numberEncrypted: {
1836
+ enc: string;
1837
+ } | null;
1838
+ issuingAuthority: string | null;
1839
+ issuingCountry: string | null;
1840
+ issueDate: string | null;
1841
+ expiryDate: string | null;
1842
+ attachmentId: string | null;
1843
+ };
1844
+ };
1845
+ outputFormat: "json";
1846
+ status: 201;
1847
+ };
1848
+ };
1849
+ } & {
1850
+ "/person-documents/:id/from-plaintext": {
1851
+ $patch: {
1852
+ input: {
1853
+ param: {
1854
+ id: string;
1855
+ };
1856
+ };
1857
+ output: {
1858
+ error: string;
1859
+ };
1860
+ outputFormat: "json";
1861
+ status: 503;
1862
+ } | {
1863
+ input: {
1864
+ param: {
1865
+ id: string;
1866
+ };
1867
+ };
1868
+ output: {
1869
+ error: string;
1870
+ };
1871
+ outputFormat: "json";
1872
+ status: 404;
1873
+ } | {
1874
+ input: {
1875
+ param: {
1876
+ id: string;
1877
+ };
1878
+ };
1879
+ output: {
1880
+ data: {
1881
+ id: string;
1882
+ personId: string;
1883
+ type: "other" | "visa" | "passport" | "id_card" | "driver_license";
1884
+ numberEncrypted: {
1885
+ enc: string;
1886
+ } | null;
1887
+ issuingAuthority: string | null;
1888
+ issuingCountry: string | null;
1889
+ issueDate: string | null;
1890
+ expiryDate: string | null;
1891
+ attachmentId: string | null;
1892
+ isPrimary: boolean;
1893
+ notes: string | null;
1894
+ metadata: {
1895
+ [x: string]: import("hono/utils/types").JSONValue;
1896
+ } | null;
1897
+ createdAt: string;
1898
+ updatedAt: string;
1899
+ };
1900
+ };
1901
+ outputFormat: "json";
1902
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1903
+ };
1904
+ };
1905
+ } & {
1906
+ "/person-documents/:id/reveal": {
1907
+ $get: {
1908
+ input: {
1909
+ param: {
1910
+ id: string;
1911
+ };
1912
+ };
1913
+ output: {
1914
+ error: string;
1915
+ };
1916
+ outputFormat: "json";
1917
+ status: 503;
1918
+ } | {
1919
+ input: {
1920
+ param: {
1921
+ id: string;
1922
+ };
1923
+ };
1924
+ output: {
1925
+ error: string;
1926
+ reason: import("@voyant-travel/action-ledger").ActionLedgerCapabilityAccessReason;
1927
+ };
1928
+ outputFormat: "json";
1929
+ status: 403;
1930
+ } | {
1931
+ input: {
1932
+ param: {
1933
+ id: string;
1934
+ };
1935
+ };
1936
+ output: {
1937
+ error: string;
1938
+ };
1939
+ outputFormat: "json";
1940
+ status: 404;
1941
+ } | {
1942
+ input: {
1943
+ param: {
1944
+ id: string;
1945
+ };
1946
+ };
1947
+ output: {
1948
+ data: {
1949
+ documentId: string;
1950
+ number: string | null;
1951
+ };
1952
+ };
1953
+ outputFormat: "json";
1954
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1955
+ };
1956
+ };
1957
+ }, "/"> | import("hono/types").MergeSchemaPath<{
1958
+ "/people/:id/relationships": {
1959
+ $get: {
1960
+ input: {
1961
+ param: {
1962
+ id: string;
1963
+ };
1964
+ };
1965
+ output: {
1966
+ data: {
1967
+ id: string;
1968
+ fromPersonId: string;
1969
+ toPersonId: string;
1970
+ kind: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion";
1971
+ inverseKind: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion" | null;
1972
+ startDate: string | null;
1973
+ endDate: string | null;
1974
+ isPrimary: boolean;
1975
+ notes: string | null;
1976
+ metadata: {
1977
+ [x: string]: import("hono/utils/types").JSONValue;
1978
+ } | null;
1979
+ createdAt: string;
1980
+ updatedAt: string;
1981
+ }[];
1982
+ };
1983
+ outputFormat: "json";
1984
+ status: import("hono/utils/http-status").ContentfulStatusCode;
1985
+ };
1986
+ };
1987
+ } & {
1988
+ "/people/:id/relationships": {
1989
+ $post: {
1990
+ input: {
1991
+ param: {
1992
+ id: string;
1993
+ };
1994
+ };
1995
+ output: {
1996
+ error: string;
1997
+ };
1998
+ outputFormat: "json";
1999
+ status: 400;
2000
+ } | {
2001
+ input: {
2002
+ param: {
2003
+ id: string;
2004
+ };
2005
+ };
2006
+ output: {
2007
+ data: {
2008
+ id: string;
2009
+ createdAt: string;
2010
+ updatedAt: string;
2011
+ notes: string | null;
2012
+ kind: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion";
2013
+ isPrimary: boolean;
2014
+ metadata: {
2015
+ [x: string]: import("hono/utils/types").JSONValue;
2016
+ } | null;
2017
+ toPersonId: string;
2018
+ inverseKind: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion" | null;
2019
+ startDate: string | null;
2020
+ endDate: string | null;
2021
+ fromPersonId: string;
2022
+ };
2023
+ };
2024
+ outputFormat: "json";
2025
+ status: 201;
2026
+ };
2027
+ };
2028
+ } & {
2029
+ "/person-relationships/:id": {
2030
+ $get: {
2031
+ input: {
2032
+ param: {
2033
+ id: string;
2034
+ };
2035
+ };
2036
+ output: {
2037
+ error: string;
2038
+ };
2039
+ outputFormat: "json";
2040
+ status: 404;
2041
+ } | {
2042
+ input: {
2043
+ param: {
2044
+ id: string;
2045
+ };
2046
+ };
2047
+ output: {
2048
+ data: {
2049
+ id: string;
2050
+ fromPersonId: string;
2051
+ toPersonId: string;
2052
+ kind: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion";
2053
+ inverseKind: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion" | null;
2054
+ startDate: string | null;
2055
+ endDate: string | null;
2056
+ isPrimary: boolean;
2057
+ notes: string | null;
2058
+ metadata: {
2059
+ [x: string]: import("hono/utils/types").JSONValue;
2060
+ } | null;
2061
+ createdAt: string;
2062
+ updatedAt: string;
2063
+ };
2064
+ };
2065
+ outputFormat: "json";
2066
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2067
+ };
2068
+ };
2069
+ } & {
2070
+ "/person-relationships/:id": {
2071
+ $patch: {
2072
+ input: {
2073
+ param: {
2074
+ id: string;
2075
+ };
2076
+ };
2077
+ output: {
2078
+ error: string;
2079
+ };
2080
+ outputFormat: "json";
2081
+ status: 404;
2082
+ } | {
2083
+ input: {
2084
+ param: {
2085
+ id: string;
2086
+ };
2087
+ };
2088
+ output: {
2089
+ data: {
2090
+ id: string;
2091
+ fromPersonId: string;
2092
+ toPersonId: string;
2093
+ kind: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion";
2094
+ inverseKind: "partner" | "other" | "spouse" | "parent" | "child" | "sibling" | "guardian" | "ward" | "emergency_contact" | "friend" | "travel_companion" | null;
2095
+ startDate: string | null;
2096
+ endDate: string | null;
2097
+ isPrimary: boolean;
2098
+ notes: string | null;
2099
+ metadata: {
2100
+ [x: string]: import("hono/utils/types").JSONValue;
2101
+ } | null;
2102
+ createdAt: string;
2103
+ updatedAt: string;
2104
+ };
2105
+ };
2106
+ outputFormat: "json";
2107
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2108
+ };
2109
+ };
2110
+ } & {
2111
+ "/person-relationships/:id": {
2112
+ $delete: {
2113
+ input: {
2114
+ param: {
2115
+ id: string;
2116
+ };
2117
+ };
2118
+ output: {
2119
+ error: string;
2120
+ };
2121
+ outputFormat: "json";
2122
+ status: 404;
2123
+ } | {
2124
+ input: {
2125
+ param: {
2126
+ id: string;
2127
+ };
2128
+ };
2129
+ output: {
2130
+ success: true;
2131
+ };
2132
+ outputFormat: "json";
2133
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2134
+ };
2135
+ };
2136
+ }, "/"> | import("hono/types").MergeSchemaPath<{
2137
+ "/customer-signals": {
2138
+ $get: {
2139
+ input: {};
2140
+ output: {
2141
+ data: {
2142
+ id: string;
2143
+ personId: string;
2144
+ productId: string | null;
2145
+ optionUnitId: string | null;
2146
+ kind: "wishlist" | "notify" | "inquiry" | "request_offer" | "referral";
2147
+ source: "website" | "phone" | "form" | "admin" | "abandoned_cart" | "booking";
2148
+ status: "expired" | "new" | "contacted" | "qualified" | "converted" | "lost";
2149
+ priority: string;
2150
+ notes: string | null;
2151
+ tags: string[];
2152
+ assignedToUserId: string | null;
2153
+ followUpAt: string | null;
2154
+ resolvedBookingId: string | null;
2155
+ sourceSubmissionId: string | null;
2156
+ metadata: {
2157
+ [x: string]: import("hono/utils/types").JSONValue;
2158
+ } | null;
2159
+ createdAt: string;
2160
+ updatedAt: string;
2161
+ }[];
2162
+ total: number;
2163
+ limit: number;
2164
+ offset: number;
2165
+ };
2166
+ outputFormat: "json";
2167
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2168
+ };
2169
+ };
2170
+ } & {
2171
+ "/customer-signals": {
2172
+ $post: {
2173
+ input: {};
2174
+ output: {
2175
+ error: string;
2176
+ };
2177
+ outputFormat: "json";
2178
+ status: 404;
2179
+ } | {
2180
+ input: {};
2181
+ output: {
2182
+ data: {
2183
+ id: string;
2184
+ status: "expired" | "new" | "contacted" | "qualified" | "converted" | "lost";
2185
+ createdAt: string;
2186
+ updatedAt: string;
2187
+ source: "website" | "phone" | "form" | "admin" | "abandoned_cart" | "booking";
2188
+ tags: string[];
2189
+ notes: string | null;
2190
+ kind: "wishlist" | "notify" | "inquiry" | "request_offer" | "referral";
2191
+ metadata: {
2192
+ [x: string]: import("hono/utils/types").JSONValue;
2193
+ } | null;
2194
+ personId: string;
2195
+ assignedToUserId: string | null;
2196
+ productId: string | null;
2197
+ optionUnitId: string | null;
2198
+ priority: string;
2199
+ followUpAt: string | null;
2200
+ resolvedBookingId: string | null;
2201
+ sourceSubmissionId: string | null;
2202
+ };
2203
+ };
2204
+ outputFormat: "json";
2205
+ status: 201;
2206
+ };
2207
+ };
2208
+ } & {
2209
+ "/customer-signals/:id": {
2210
+ $get: {
2211
+ input: {
2212
+ param: {
2213
+ id: string;
2214
+ };
2215
+ };
2216
+ output: {
2217
+ error: string;
2218
+ };
2219
+ outputFormat: "json";
2220
+ status: 404;
2221
+ } | {
2222
+ input: {
2223
+ param: {
2224
+ id: string;
2225
+ };
2226
+ };
2227
+ output: {
2228
+ data: {
2229
+ id: string;
2230
+ personId: string;
2231
+ productId: string | null;
2232
+ optionUnitId: string | null;
2233
+ kind: "wishlist" | "notify" | "inquiry" | "request_offer" | "referral";
2234
+ source: "website" | "phone" | "form" | "admin" | "abandoned_cart" | "booking";
2235
+ status: "expired" | "new" | "contacted" | "qualified" | "converted" | "lost";
2236
+ priority: string;
2237
+ notes: string | null;
2238
+ tags: string[];
2239
+ assignedToUserId: string | null;
2240
+ followUpAt: string | null;
2241
+ resolvedBookingId: string | null;
2242
+ sourceSubmissionId: string | null;
2243
+ metadata: {
2244
+ [x: string]: import("hono/utils/types").JSONValue;
2245
+ } | null;
2246
+ createdAt: string;
2247
+ updatedAt: string;
2248
+ };
2249
+ };
2250
+ outputFormat: "json";
2251
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2252
+ };
2253
+ };
2254
+ } & {
2255
+ "/customer-signals/:id": {
2256
+ $patch: {
2257
+ input: {
2258
+ param: {
2259
+ id: string;
2260
+ };
2261
+ };
2262
+ output: {
2263
+ error: string;
2264
+ };
2265
+ outputFormat: "json";
2266
+ status: 404;
2267
+ } | {
2268
+ input: {
2269
+ param: {
2270
+ id: string;
2271
+ };
2272
+ };
2273
+ output: {
2274
+ data: {
2275
+ id: string;
2276
+ personId: string;
2277
+ productId: string | null;
2278
+ optionUnitId: string | null;
2279
+ kind: "wishlist" | "notify" | "inquiry" | "request_offer" | "referral";
2280
+ source: "website" | "phone" | "form" | "admin" | "abandoned_cart" | "booking";
2281
+ status: "expired" | "new" | "contacted" | "qualified" | "converted" | "lost";
2282
+ priority: string;
2283
+ notes: string | null;
2284
+ tags: string[];
2285
+ assignedToUserId: string | null;
2286
+ followUpAt: string | null;
2287
+ resolvedBookingId: string | null;
2288
+ sourceSubmissionId: string | null;
2289
+ metadata: {
2290
+ [x: string]: import("hono/utils/types").JSONValue;
2291
+ } | null;
2292
+ createdAt: string;
2293
+ updatedAt: string;
2294
+ };
2295
+ };
2296
+ outputFormat: "json";
2297
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2298
+ };
2299
+ };
2300
+ } & {
2301
+ "/customer-signals/:id": {
2302
+ $delete: {
2303
+ input: {
2304
+ param: {
2305
+ id: string;
2306
+ };
2307
+ };
2308
+ output: {
2309
+ error: string;
2310
+ };
2311
+ outputFormat: "json";
2312
+ status: 404;
2313
+ } | {
2314
+ input: {
2315
+ param: {
2316
+ id: string;
2317
+ };
2318
+ };
2319
+ output: {
2320
+ success: true;
2321
+ };
2322
+ outputFormat: "json";
2323
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2324
+ };
2325
+ };
2326
+ } & {
2327
+ "/customer-signals/:id/resolve": {
2328
+ $post: {
2329
+ input: {
2330
+ param: {
2331
+ id: string;
2332
+ };
2333
+ };
2334
+ output: {
2335
+ error: string;
2336
+ };
2337
+ outputFormat: "json";
2338
+ status: 404;
2339
+ } | {
2340
+ input: {
2341
+ param: {
2342
+ id: string;
2343
+ };
2344
+ };
2345
+ output: {
2346
+ data: {
2347
+ id: string;
2348
+ personId: string;
2349
+ productId: string | null;
2350
+ optionUnitId: string | null;
2351
+ kind: "wishlist" | "notify" | "inquiry" | "request_offer" | "referral";
2352
+ source: "website" | "phone" | "form" | "admin" | "abandoned_cart" | "booking";
2353
+ status: "expired" | "new" | "contacted" | "qualified" | "converted" | "lost";
2354
+ priority: string;
2355
+ notes: string | null;
2356
+ tags: string[];
2357
+ assignedToUserId: string | null;
2358
+ followUpAt: string | null;
2359
+ resolvedBookingId: string | null;
2360
+ sourceSubmissionId: string | null;
2361
+ metadata: {
2362
+ [x: string]: import("hono/utils/types").JSONValue;
2363
+ } | null;
2364
+ createdAt: string;
2365
+ updatedAt: string;
2366
+ };
2367
+ };
2368
+ outputFormat: "json";
2369
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2370
+ };
2371
+ };
2372
+ } & {
2373
+ "/people/:id/signals": {
2374
+ $get: {
2375
+ input: {
2376
+ param: {
2377
+ id: string;
2378
+ };
2379
+ };
2380
+ output: {
2381
+ data: {
2382
+ id: string;
2383
+ personId: string;
2384
+ productId: string | null;
2385
+ optionUnitId: string | null;
2386
+ kind: "wishlist" | "notify" | "inquiry" | "request_offer" | "referral";
2387
+ source: "website" | "phone" | "form" | "admin" | "abandoned_cart" | "booking";
2388
+ status: "expired" | "new" | "contacted" | "qualified" | "converted" | "lost";
2389
+ priority: string;
2390
+ notes: string | null;
2391
+ tags: string[];
2392
+ assignedToUserId: string | null;
2393
+ followUpAt: string | null;
2394
+ resolvedBookingId: string | null;
2395
+ sourceSubmissionId: string | null;
2396
+ metadata: {
2397
+ [x: string]: import("hono/utils/types").JSONValue;
2398
+ } | null;
2399
+ createdAt: string;
2400
+ updatedAt: string;
2401
+ }[];
2402
+ };
2403
+ outputFormat: "json";
2404
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2405
+ };
2406
+ };
2407
+ }, "/"> | import("hono/types").MergeSchemaPath<{
2408
+ "/activities": {
2409
+ $get: {
2410
+ input: {};
2411
+ output: {
2412
+ data: {
2413
+ id: string;
2414
+ subject: string;
2415
+ type: "email" | "meeting" | "call" | "task" | "follow_up" | "note";
2416
+ ownerId: string | null;
2417
+ status: "cancelled" | "planned" | "done";
2418
+ dueAt: string | null;
2419
+ completedAt: string | null;
2420
+ location: string | null;
2421
+ description: string | null;
2422
+ createdAt: string;
2423
+ updatedAt: string;
2424
+ }[];
2425
+ total: number;
2426
+ limit: number;
2427
+ offset: number;
2428
+ };
2429
+ outputFormat: "json";
2430
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2431
+ };
2432
+ };
2433
+ } & {
2434
+ "/activities": {
2435
+ $post: {
2436
+ input: {};
2437
+ output: {
2438
+ data: {
2439
+ id: string;
2440
+ status: "cancelled" | "planned" | "done";
2441
+ createdAt: string;
2442
+ type: "email" | "meeting" | "call" | "task" | "follow_up" | "note";
2443
+ ownerId: string | null;
2444
+ updatedAt: string;
2445
+ subject: string;
2446
+ description: string | null;
2447
+ dueAt: string | null;
2448
+ completedAt: string | null;
2449
+ location: string | null;
2450
+ } | undefined;
2451
+ };
2452
+ outputFormat: "json";
2453
+ status: 201;
2454
+ };
2455
+ };
2456
+ } & {
2457
+ "/activities/:id": {
2458
+ $get: {
2459
+ input: {
2460
+ param: {
2461
+ id: string;
2462
+ };
2463
+ };
2464
+ output: {
2465
+ error: string;
2466
+ };
2467
+ outputFormat: "json";
2468
+ status: 404;
2469
+ } | {
2470
+ input: {
2471
+ param: {
2472
+ id: string;
2473
+ };
2474
+ };
2475
+ output: {
2476
+ data: {
2477
+ id: string;
2478
+ subject: string;
2479
+ type: "email" | "meeting" | "call" | "task" | "follow_up" | "note";
2480
+ ownerId: string | null;
2481
+ status: "cancelled" | "planned" | "done";
2482
+ dueAt: string | null;
2483
+ completedAt: string | null;
2484
+ location: string | null;
2485
+ description: string | null;
2486
+ createdAt: string;
2487
+ updatedAt: string;
2488
+ };
2489
+ };
2490
+ outputFormat: "json";
2491
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2492
+ };
2493
+ };
2494
+ } & {
2495
+ "/activities/:id": {
2496
+ $patch: {
2497
+ input: {
2498
+ param: {
2499
+ id: string;
2500
+ };
2501
+ };
2502
+ output: {
2503
+ error: string;
2504
+ };
2505
+ outputFormat: "json";
2506
+ status: 404;
2507
+ } | {
2508
+ input: {
2509
+ param: {
2510
+ id: string;
2511
+ };
2512
+ };
2513
+ output: {
2514
+ data: {
2515
+ id: string;
2516
+ subject: string;
2517
+ type: "email" | "meeting" | "call" | "task" | "follow_up" | "note";
2518
+ ownerId: string | null;
2519
+ status: "cancelled" | "planned" | "done";
2520
+ dueAt: string | null;
2521
+ completedAt: string | null;
2522
+ location: string | null;
2523
+ description: string | null;
2524
+ createdAt: string;
2525
+ updatedAt: string;
2526
+ };
2527
+ };
2528
+ outputFormat: "json";
2529
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2530
+ };
2531
+ };
2532
+ } & {
2533
+ "/activities/:id": {
2534
+ $delete: {
2535
+ input: {
2536
+ param: {
2537
+ id: string;
2538
+ };
2539
+ };
2540
+ output: {
2541
+ error: string;
2542
+ };
2543
+ outputFormat: "json";
2544
+ status: 404;
2545
+ } | {
2546
+ input: {
2547
+ param: {
2548
+ id: string;
2549
+ };
2550
+ };
2551
+ output: {
2552
+ success: true;
2553
+ };
2554
+ outputFormat: "json";
2555
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2556
+ };
2557
+ };
2558
+ } & {
2559
+ "/activities/:id/links": {
2560
+ $get: {
2561
+ input: {
2562
+ param: {
2563
+ id: string;
2564
+ };
2565
+ };
2566
+ output: {
2567
+ data: {
2568
+ id: string;
2569
+ activityId: string;
2570
+ entityType: "person" | "organization" | "quote" | "activity";
2571
+ entityId: string;
2572
+ role: "primary" | "related";
2573
+ createdAt: string;
2574
+ }[];
2575
+ };
2576
+ outputFormat: "json";
2577
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2578
+ };
2579
+ };
2580
+ } & {
2581
+ "/activities/:id/links": {
2582
+ $post: {
2583
+ input: {
2584
+ param: {
2585
+ id: string;
2586
+ };
2587
+ };
2588
+ output: {
2589
+ data: {
2590
+ id: string;
2591
+ createdAt: string;
2592
+ entityType: "person" | "organization" | "quote" | "activity";
2593
+ entityId: string;
2594
+ role: "primary" | "related";
2595
+ activityId: string;
2596
+ } | undefined;
2597
+ };
2598
+ outputFormat: "json";
2599
+ status: 201;
2600
+ };
2601
+ };
2602
+ } & {
2603
+ "/activity-links/:id": {
2604
+ $delete: {
2605
+ input: {
2606
+ param: {
2607
+ id: string;
2608
+ };
2609
+ };
2610
+ output: {
2611
+ error: string;
2612
+ };
2613
+ outputFormat: "json";
2614
+ status: 404;
2615
+ } | {
2616
+ input: {
2617
+ param: {
2618
+ id: string;
2619
+ };
2620
+ };
2621
+ output: {
2622
+ success: true;
2623
+ };
2624
+ outputFormat: "json";
2625
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2626
+ };
2627
+ };
2628
+ } & {
2629
+ "/activities/:id/participants": {
2630
+ $get: {
2631
+ input: {
2632
+ param: {
2633
+ id: string;
2634
+ };
2635
+ };
2636
+ output: {
2637
+ data: {
2638
+ id: string;
2639
+ activityId: string;
2640
+ personId: string;
2641
+ isPrimary: boolean;
2642
+ createdAt: string;
2643
+ }[];
2644
+ };
2645
+ outputFormat: "json";
2646
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2647
+ };
2648
+ };
2649
+ } & {
2650
+ "/activities/:id/participants": {
2651
+ $post: {
2652
+ input: {
2653
+ param: {
2654
+ id: string;
2655
+ };
2656
+ };
2657
+ output: {
2658
+ data: {
2659
+ id: string;
2660
+ createdAt: string;
2661
+ isPrimary: boolean;
2662
+ personId: string;
2663
+ activityId: string;
2664
+ } | undefined;
2665
+ };
2666
+ outputFormat: "json";
2667
+ status: 201;
2668
+ };
2669
+ };
2670
+ } & {
2671
+ "/activity-participants/:id": {
2672
+ $delete: {
2673
+ input: {
2674
+ param: {
2675
+ id: string;
2676
+ };
2677
+ };
2678
+ output: {
2679
+ error: string;
2680
+ };
2681
+ outputFormat: "json";
2682
+ status: 404;
2683
+ } | {
2684
+ input: {
2685
+ param: {
2686
+ id: string;
2687
+ };
2688
+ };
2689
+ output: {
2690
+ success: true;
2691
+ };
2692
+ outputFormat: "json";
2693
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2694
+ };
2695
+ };
2696
+ }, "/"> | import("hono/types").MergeSchemaPath<{
2697
+ "/custom-fields": {
2698
+ $get: {
2699
+ input: {};
2700
+ output: {
2701
+ data: {
2702
+ id: string;
2703
+ entityType: "person" | "organization" | "quote" | "activity";
2704
+ key: string;
2705
+ label: string;
2706
+ fieldType: "boolean" | "json" | "date" | "text" | "set" | "enum" | "phone" | "varchar" | "double" | "monetary" | "address";
2707
+ isRequired: boolean;
2708
+ isSearchable: boolean;
2709
+ options: {
2710
+ label: string;
2711
+ value: string;
2712
+ }[] | null;
2713
+ createdAt: string;
2714
+ updatedAt: string;
2715
+ }[];
2716
+ total: number;
2717
+ limit: number;
2718
+ offset: number;
2719
+ };
2720
+ outputFormat: "json";
2721
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2722
+ };
2723
+ };
2724
+ } & {
2725
+ "/custom-fields": {
2726
+ $post: {
2727
+ input: {};
2728
+ output: {
2729
+ data: {
2730
+ id: string;
2731
+ createdAt: string;
2732
+ updatedAt: string;
2733
+ entityType: "person" | "organization" | "quote" | "activity";
2734
+ label: string;
2735
+ fieldType: "boolean" | "json" | "date" | "text" | "set" | "enum" | "phone" | "varchar" | "double" | "monetary" | "address";
2736
+ key: string;
2737
+ isRequired: boolean;
2738
+ isSearchable: boolean;
2739
+ options: {
2740
+ label: string;
2741
+ value: string;
2742
+ }[] | null;
2743
+ } | undefined;
2744
+ };
2745
+ outputFormat: "json";
2746
+ status: 201;
2747
+ };
2748
+ };
2749
+ } & {
2750
+ "/custom-fields/:id": {
2751
+ $get: {
2752
+ input: {
2753
+ param: {
2754
+ id: string;
2755
+ };
2756
+ };
2757
+ output: {
2758
+ error: string;
2759
+ };
2760
+ outputFormat: "json";
2761
+ status: 404;
2762
+ } | {
2763
+ input: {
2764
+ param: {
2765
+ id: string;
2766
+ };
2767
+ };
2768
+ output: {
2769
+ data: {
2770
+ id: string;
2771
+ entityType: "person" | "organization" | "quote" | "activity";
2772
+ key: string;
2773
+ label: string;
2774
+ fieldType: "boolean" | "json" | "date" | "text" | "set" | "enum" | "phone" | "varchar" | "double" | "monetary" | "address";
2775
+ isRequired: boolean;
2776
+ isSearchable: boolean;
2777
+ options: {
2778
+ label: string;
2779
+ value: string;
2780
+ }[] | null;
2781
+ createdAt: string;
2782
+ updatedAt: string;
2783
+ };
2784
+ };
2785
+ outputFormat: "json";
2786
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2787
+ };
2788
+ };
2789
+ } & {
2790
+ "/custom-fields/:id": {
2791
+ $patch: {
2792
+ input: {
2793
+ param: {
2794
+ id: string;
2795
+ };
2796
+ };
2797
+ output: {
2798
+ error: string;
2799
+ };
2800
+ outputFormat: "json";
2801
+ status: 404;
2802
+ } | {
2803
+ input: {
2804
+ param: {
2805
+ id: string;
2806
+ };
2807
+ };
2808
+ output: {
2809
+ data: {
2810
+ id: string;
2811
+ entityType: "person" | "organization" | "quote" | "activity";
2812
+ key: string;
2813
+ label: string;
2814
+ fieldType: "boolean" | "json" | "date" | "text" | "set" | "enum" | "phone" | "varchar" | "double" | "monetary" | "address";
2815
+ isRequired: boolean;
2816
+ isSearchable: boolean;
2817
+ options: {
2818
+ label: string;
2819
+ value: string;
2820
+ }[] | null;
2821
+ createdAt: string;
2822
+ updatedAt: string;
2823
+ };
2824
+ };
2825
+ outputFormat: "json";
2826
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2827
+ };
2828
+ };
2829
+ } & {
2830
+ "/custom-fields/:id": {
2831
+ $delete: {
2832
+ input: {
2833
+ param: {
2834
+ id: string;
2835
+ };
2836
+ };
2837
+ output: {
2838
+ error: string;
2839
+ };
2840
+ outputFormat: "json";
2841
+ status: 404;
2842
+ } | {
2843
+ input: {
2844
+ param: {
2845
+ id: string;
2846
+ };
2847
+ };
2848
+ output: {
2849
+ success: true;
2850
+ };
2851
+ outputFormat: "json";
2852
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2853
+ };
2854
+ };
2855
+ } & {
2856
+ "/custom-field-values": {
2857
+ $get: {
2858
+ input: {};
2859
+ output: {
2860
+ data: {
2861
+ id: string;
2862
+ definitionId: string;
2863
+ entityType: "person" | "organization" | "quote" | "activity";
2864
+ entityId: string;
2865
+ textValue: string | null;
2866
+ numberValue: number | null;
2867
+ dateValue: string | null;
2868
+ booleanValue: boolean | null;
2869
+ monetaryValueCents: number | null;
2870
+ currencyCode: string | null;
2871
+ jsonValue: string[] | {
2872
+ [x: string]: import("hono/utils/types").JSONValue;
2873
+ } | null;
2874
+ createdAt: string;
2875
+ updatedAt: string;
2876
+ }[];
2877
+ total: number;
2878
+ limit: number;
2879
+ offset: number;
2880
+ };
2881
+ outputFormat: "json";
2882
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2883
+ };
2884
+ };
2885
+ } & {
2886
+ "/custom-fields/:id/value": {
2887
+ $put: {
2888
+ input: {
2889
+ param: {
2890
+ id: string;
2891
+ };
2892
+ };
2893
+ output: {
2894
+ data: {
2895
+ id: string;
2896
+ createdAt: string;
2897
+ updatedAt: string;
2898
+ entityType: "person" | "organization" | "quote" | "activity";
2899
+ entityId: string;
2900
+ definitionId: string;
2901
+ textValue: string | null;
2902
+ numberValue: number | null;
2903
+ dateValue: string | null;
2904
+ booleanValue: boolean | null;
2905
+ monetaryValueCents: number | null;
2906
+ currencyCode: string | null;
2907
+ jsonValue: string[] | {
2908
+ [x: string]: import("hono/utils/types").JSONValue;
2909
+ } | null;
2910
+ } | undefined;
2911
+ };
2912
+ outputFormat: "json";
2913
+ status: 200;
2914
+ };
2915
+ };
2916
+ } & {
2917
+ "/custom-field-values/:id": {
2918
+ $delete: {
2919
+ input: {
2920
+ param: {
2921
+ id: string;
2922
+ };
2923
+ };
2924
+ output: {
2925
+ error: string;
2926
+ };
2927
+ outputFormat: "json";
2928
+ status: 404;
2929
+ } | {
2930
+ input: {
2931
+ param: {
2932
+ id: string;
2933
+ };
2934
+ };
2935
+ output: {
2936
+ success: true;
2937
+ };
2938
+ outputFormat: "json";
2939
+ status: import("hono/utils/http-status").ContentfulStatusCode;
2940
+ };
2941
+ };
2942
+ }, "/">, "/", "/">;
2943
+ export type RelationshipsRoutes = typeof relationshipsRoutes;
2944
+ export {};
2945
+ //# sourceMappingURL=index.d.ts.map