@voyantjs/crm 0.26.0 → 0.26.1

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 (40) hide show
  1. package/dist/index.d.ts +18 -3
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +25 -6
  4. package/dist/route-runtime.d.ts +21 -0
  5. package/dist/route-runtime.d.ts.map +1 -0
  6. package/dist/route-runtime.js +28 -0
  7. package/dist/routes/accounts.d.ts +50 -2
  8. package/dist/routes/accounts.d.ts.map +1 -1
  9. package/dist/routes/index.d.ts +496 -2
  10. package/dist/routes/index.d.ts.map +1 -1
  11. package/dist/routes/index.js +2 -0
  12. package/dist/routes/person-documents.d.ts +458 -0
  13. package/dist/routes/person-documents.d.ts.map +1 -0
  14. package/dist/routes/person-documents.js +160 -0
  15. package/dist/schema-accounts.d.ts +367 -0
  16. package/dist/schema-accounts.d.ts.map +1 -1
  17. package/dist/schema-accounts.js +68 -2
  18. package/dist/schema-activities.js +2 -2
  19. package/dist/schema-relations.js +3 -3
  20. package/dist/schema-sales.js +2 -2
  21. package/dist/schema.d.ts +6 -6
  22. package/dist/schema.d.ts.map +1 -1
  23. package/dist/schema.js +6 -6
  24. package/dist/service/accounts-people.d.ts +49 -1
  25. package/dist/service/accounts-people.d.ts.map +1 -1
  26. package/dist/service/accounts-shared.d.ts +12 -0
  27. package/dist/service/accounts-shared.d.ts.map +1 -1
  28. package/dist/service/accounts-shared.js +4 -0
  29. package/dist/service/accounts.d.ts +49 -1
  30. package/dist/service/accounts.d.ts.map +1 -1
  31. package/dist/service/index.d.ts +1172 -1
  32. package/dist/service/index.d.ts.map +1 -1
  33. package/dist/service/index.js +3 -0
  34. package/dist/service/person-documents.d.ts +1188 -0
  35. package/dist/service/person-documents.d.ts.map +1 -0
  36. package/dist/service/person-documents.js +216 -0
  37. package/dist/validation.d.ts +168 -0
  38. package/dist/validation.d.ts.map +1 -1
  39. package/dist/validation.js +68 -0
  40. package/package.json +6 -5
package/dist/index.d.ts CHANGED
@@ -1,14 +1,29 @@
1
1
  import type { LinkableDefinition, Module } from "@voyantjs/core";
2
2
  import type { HonoModule } from "@voyantjs/hono/module";
3
+ import { type CrmRouteRuntimeOptions } from "./route-runtime.js";
3
4
  import { crmService } from "./service/index.js";
4
5
  export type { CrmRoutes } from "./routes/index.js";
5
6
  export declare const personLinkable: LinkableDefinition;
6
7
  export declare const organizationLinkable: LinkableDefinition;
7
8
  export declare const crmModule: Module;
9
+ export interface CrmHonoModuleOptions extends CrmRouteRuntimeOptions {
10
+ }
11
+ /**
12
+ * Configurable factory for the CRM Hono module. Use this when the
13
+ * deployment needs a non-default KMS resolver (e.g. Voyant Cloud
14
+ * Vault) — the runtime is registered in the request-scoped container
15
+ * so admin PII routes can decrypt person documents on demand. The
16
+ * default `crmHonoModule` export covers env-driven setups.
17
+ */
18
+ export declare function createCrmHonoModule(options?: CrmHonoModuleOptions): HonoModule;
8
19
  export declare const crmHonoModule: HonoModule;
9
20
  export { crmBookingExtension } from "./booking-extension.js";
10
- export type { Activity, ActivityLink, ActivityParticipant, CommunicationLogEntry, CustomFieldDefinition, CustomFieldValue, NewActivity, NewActivityLink, NewActivityParticipant, NewCommunicationLogEntry, NewCustomFieldDefinition, NewCustomFieldValue, NewOpportunity, NewOpportunityParticipant, NewOpportunityProduct, NewOrganization, NewOrganizationNote, NewPerson, NewPersonNote, NewPipeline, NewQuote, NewQuoteLine, NewSegment, NewSegmentMember, NewStage, Opportunity, OpportunityParticipant, OpportunityProduct, Organization, OrganizationNote, Person, PersonNote, Pipeline, Quote, QuoteLine, Segment, SegmentMember, Stage, } from "./schema.js";
11
- export { activities, activityLinks, activityParticipants, communicationLog, customFieldDefinitions, customFieldValues, opportunities, opportunityParticipants, opportunityProducts, organizationNotes, organizations, people, personNotes, pipelines, quoteLines, quotes, segmentMembers, segments, stages, } from "./schema.js";
12
- export { activityListQuerySchema, communicationChannelSchema, communicationDirectionSchema, communicationListQuerySchema, customFieldDefinitionListQuerySchema, customFieldValueListQuerySchema, insertActivityLinkSchema, insertActivityParticipantSchema, insertActivitySchema, insertCommunicationLogSchema, insertCustomFieldDefinitionSchema, insertOpportunityParticipantSchema, insertOpportunityProductSchema, insertOpportunitySchema, insertOrganizationNoteSchema, insertOrganizationSchema, insertPersonNoteSchema, insertPersonSchema, insertPipelineSchema, insertQuoteLineSchema, insertQuoteSchema, insertSegmentSchema, insertStageSchema, opportunityListQuerySchema, organizationListQuerySchema, personListQuerySchema, pipelineListQuerySchema, quoteListQuerySchema, relationTypeSchema, stageListQuerySchema, updateActivitySchema, updateCustomFieldDefinitionSchema, updateOpportunityProductSchema, updateOpportunitySchema, updateOrganizationSchema, updatePersonSchema, updatePipelineSchema, updateQuoteLineSchema, updateQuoteSchema, updateStageSchema, upsertCustomFieldValueSchema, } from "./validation.js";
21
+ export type { CrmRouteRuntime, CrmRouteRuntimeOptions, ResolveCrmKmsProvider, } from "./route-runtime.js";
22
+ export { buildCrmRouteRuntime, CRM_ROUTE_RUNTIME_CONTAINER_KEY, } from "./route-runtime.js";
23
+ export type { Activity, ActivityLink, ActivityParticipant, CommunicationLogEntry, CustomFieldDefinition, CustomFieldValue, NewActivity, NewActivityLink, NewActivityParticipant, NewCommunicationLogEntry, NewCustomFieldDefinition, NewCustomFieldValue, NewOpportunity, NewOpportunityParticipant, NewOpportunityProduct, NewOrganization, NewOrganizationNote, NewPerson, NewPersonDocument, NewPersonNote, NewPipeline, NewQuote, NewQuoteLine, NewSegment, NewSegmentMember, NewStage, Opportunity, OpportunityParticipant, OpportunityProduct, Organization, OrganizationNote, Person, PersonDocument, PersonNote, Pipeline, Quote, QuoteLine, Segment, SegmentMember, Stage, } from "./schema.js";
24
+ export { activities, activityLinks, activityParticipants, communicationLog, customFieldDefinitions, customFieldValues, opportunities, opportunityParticipants, opportunityProducts, organizationNotes, organizations, people, personDocuments, personDocumentTypeEnum, personNotes, pipelines, quoteLines, quotes, segmentMembers, segments, stages, } from "./schema.js";
25
+ export type { CreatePersonDocumentInput, PersonDocumentListQuery, PersonDocumentType, PersonTravelSnapshot, UpdatePersonDocumentInput, } from "./service/person-documents.js";
26
+ export { personDocumentNumberPlaintextSchema, personDocumentsService, personPiiBlobPlaintextSchema, } from "./service/person-documents.js";
27
+ export { activityListQuerySchema, communicationChannelSchema, communicationDirectionSchema, communicationListQuerySchema, customFieldDefinitionListQuerySchema, customFieldValueListQuerySchema, insertActivityLinkSchema, insertActivityParticipantSchema, insertActivitySchema, insertCommunicationLogSchema, insertCustomFieldDefinitionSchema, insertOpportunityParticipantSchema, insertOpportunityProductSchema, insertOpportunitySchema, insertOrganizationNoteSchema, insertOrganizationSchema, insertPersonDocumentFromPlaintextSchema, insertPersonDocumentSchema, insertPersonNoteSchema, insertPersonSchema, insertPipelineSchema, insertQuoteLineSchema, insertQuoteSchema, insertSegmentSchema, insertStageSchema, opportunityListQuerySchema, organizationListQuerySchema, personDocumentListQuerySchema, personDocumentTypeSchema, personListQuerySchema, pipelineListQuerySchema, quoteListQuerySchema, relationTypeSchema, stageListQuerySchema, updateActivitySchema, updateCustomFieldDefinitionSchema, updateOpportunityProductSchema, updateOpportunitySchema, updateOrganizationSchema, updatePersonDocumentFromPlaintextSchema, updatePersonDocumentSchema, updatePersonProfilePiiSchema, updatePersonSchema, updatePipelineSchema, updateQuoteLineSchema, updateQuoteSchema, updateStageSchema, upsertCustomFieldValueSchema, } from "./validation.js";
13
28
  export { crmService };
14
29
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAGvD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAE/C,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAElD,eAAO,MAAM,cAAc,EAAE,kBAK5B,CAAA;AAED,eAAO,MAAM,oBAAoB,EAAE,kBAKlC,CAAA;AAED,eAAO,MAAM,SAAS,EAAE,MAMvB,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,UAG3B,CAAA;AAED,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAC5D,YAAY,EACV,QAAQ,EACR,YAAY,EACZ,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,sBAAsB,EACtB,wBAAwB,EACxB,wBAAwB,EACxB,mBAAmB,EACnB,cAAc,EACd,yBAAyB,EACzB,qBAAqB,EACrB,eAAe,EACf,mBAAmB,EACnB,SAAS,EACT,aAAa,EACb,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACX,sBAAsB,EACtB,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,EAChB,MAAM,EACN,UAAU,EACV,QAAQ,EACR,KAAK,EACL,SAAS,EACT,OAAO,EACP,aAAa,EACb,KAAK,GACN,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,UAAU,EACV,aAAa,EACb,oBAAoB,EACpB,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,aAAa,EACb,uBAAuB,EACvB,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,EACb,MAAM,EACN,WAAW,EACX,SAAS,EACT,UAAU,EACV,MAAM,EACN,cAAc,EACd,QAAQ,EACR,MAAM,GACP,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,4BAA4B,EAC5B,4BAA4B,EAC5B,oCAAoC,EACpC,+BAA+B,EAC/B,wBAAwB,EACxB,+BAA+B,EAC/B,oBAAoB,EACpB,4BAA4B,EAC5B,iCAAiC,EACjC,kCAAkC,EAClC,8BAA8B,EAC9B,uBAAuB,EACvB,4BAA4B,EAC5B,wBAAwB,EACxB,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,0BAA0B,EAC1B,2BAA2B,EAC3B,qBAAqB,EACrB,uBAAuB,EACvB,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,iCAAiC,EACjC,8BAA8B,EAC9B,uBAAuB,EACvB,wBAAwB,EACxB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,4BAA4B,GAC7B,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,UAAU,EAAE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { buildCrmRouteRuntime, CRM_ROUTE_RUNTIME_CONTAINER_KEY, } from "./route-runtime.js";
1
2
  import { crmRoutes } from "./routes/index.js";
2
3
  import { crmService } from "./service/index.js";
3
4
  export const personLinkable = {
@@ -19,11 +20,29 @@ export const crmModule = {
19
20
  organization: organizationLinkable,
20
21
  },
21
22
  };
22
- export const crmHonoModule = {
23
- module: crmModule,
24
- routes: crmRoutes,
25
- };
23
+ /**
24
+ * Configurable factory for the CRM Hono module. Use this when the
25
+ * deployment needs a non-default KMS resolver (e.g. Voyant Cloud
26
+ * Vault) — the runtime is registered in the request-scoped container
27
+ * so admin PII routes can decrypt person documents on demand. The
28
+ * default `crmHonoModule` export covers env-driven setups.
29
+ */
30
+ export function createCrmHonoModule(options = {}) {
31
+ const module = {
32
+ ...crmModule,
33
+ bootstrap: ({ bindings, container }) => {
34
+ container.register(CRM_ROUTE_RUNTIME_CONTAINER_KEY, buildCrmRouteRuntime(bindings, options));
35
+ },
36
+ };
37
+ return {
38
+ module,
39
+ routes: crmRoutes,
40
+ };
41
+ }
42
+ export const crmHonoModule = createCrmHonoModule();
26
43
  export { crmBookingExtension } from "./booking-extension.js";
27
- export { activities, activityLinks, activityParticipants, communicationLog, customFieldDefinitions, customFieldValues, opportunities, opportunityParticipants, opportunityProducts, organizationNotes, organizations, people, personNotes, pipelines, quoteLines, quotes, segmentMembers, segments, stages, } from "./schema.js";
28
- export { activityListQuerySchema, communicationChannelSchema, communicationDirectionSchema, communicationListQuerySchema, customFieldDefinitionListQuerySchema, customFieldValueListQuerySchema, insertActivityLinkSchema, insertActivityParticipantSchema, insertActivitySchema, insertCommunicationLogSchema, insertCustomFieldDefinitionSchema, insertOpportunityParticipantSchema, insertOpportunityProductSchema, insertOpportunitySchema, insertOrganizationNoteSchema, insertOrganizationSchema, insertPersonNoteSchema, insertPersonSchema, insertPipelineSchema, insertQuoteLineSchema, insertQuoteSchema, insertSegmentSchema, insertStageSchema, opportunityListQuerySchema, organizationListQuerySchema, personListQuerySchema, pipelineListQuerySchema, quoteListQuerySchema, relationTypeSchema, stageListQuerySchema, updateActivitySchema, updateCustomFieldDefinitionSchema, updateOpportunityProductSchema, updateOpportunitySchema, updateOrganizationSchema, updatePersonSchema, updatePipelineSchema, updateQuoteLineSchema, updateQuoteSchema, updateStageSchema, upsertCustomFieldValueSchema, } from "./validation.js";
44
+ export { buildCrmRouteRuntime, CRM_ROUTE_RUNTIME_CONTAINER_KEY, } from "./route-runtime.js";
45
+ export { activities, activityLinks, activityParticipants, communicationLog, customFieldDefinitions, customFieldValues, opportunities, opportunityParticipants, opportunityProducts, organizationNotes, organizations, people, personDocuments, personDocumentTypeEnum, personNotes, pipelines, quoteLines, quotes, segmentMembers, segments, stages, } from "./schema.js";
46
+ export { personDocumentNumberPlaintextSchema, personDocumentsService, personPiiBlobPlaintextSchema, } from "./service/person-documents.js";
47
+ export { activityListQuerySchema, communicationChannelSchema, communicationDirectionSchema, communicationListQuerySchema, customFieldDefinitionListQuerySchema, customFieldValueListQuerySchema, insertActivityLinkSchema, insertActivityParticipantSchema, insertActivitySchema, insertCommunicationLogSchema, insertCustomFieldDefinitionSchema, insertOpportunityParticipantSchema, insertOpportunityProductSchema, insertOpportunitySchema, insertOrganizationNoteSchema, insertOrganizationSchema, insertPersonDocumentFromPlaintextSchema, insertPersonDocumentSchema, insertPersonNoteSchema, insertPersonSchema, insertPipelineSchema, insertQuoteLineSchema, insertQuoteSchema, insertSegmentSchema, insertStageSchema, opportunityListQuerySchema, organizationListQuerySchema, personDocumentListQuerySchema, personDocumentTypeSchema, personListQuerySchema, pipelineListQuerySchema, quoteListQuerySchema, relationTypeSchema, stageListQuerySchema, updateActivitySchema, updateCustomFieldDefinitionSchema, updateOpportunityProductSchema, updateOpportunitySchema, updateOrganizationSchema, updatePersonDocumentFromPlaintextSchema, updatePersonDocumentSchema, updatePersonProfilePiiSchema, updatePersonSchema, updatePipelineSchema, updateQuoteLineSchema, updateQuoteSchema, updateStageSchema, upsertCustomFieldValueSchema, } from "./validation.js";
29
48
  export { crmService };
@@ -0,0 +1,21 @@
1
+ import { type KmsProvider } from "@voyantjs/utils";
2
+ export declare const CRM_ROUTE_RUNTIME_CONTAINER_KEY = "runtime.crm.routes";
3
+ /**
4
+ * Hook for apps that source KMS keys from somewhere other than env
5
+ * vars / wrangler secrets. Mirrors the same hook in
6
+ * `@voyantjs/bookings`.
7
+ */
8
+ export type ResolveCrmKmsProvider = (env: Record<string, string | undefined>) => KmsProvider | Promise<KmsProvider>;
9
+ export interface CrmRouteRuntime {
10
+ /**
11
+ * Returns the configured KMS provider, or `null` when no provider
12
+ * is wired (e.g. dev environments without KMS keys). Routes that
13
+ * require KMS gracefully reject with a 503 in that case.
14
+ */
15
+ getKmsProvider(): Promise<KmsProvider | null>;
16
+ }
17
+ export interface CrmRouteRuntimeOptions {
18
+ resolveKmsProvider?: ResolveCrmKmsProvider;
19
+ }
20
+ export declare function buildCrmRouteRuntime(bindings: Record<string, unknown>, options?: CrmRouteRuntimeOptions): CrmRouteRuntime;
21
+ //# sourceMappingURL=route-runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route-runtime.d.ts","sourceRoot":"","sources":["../src/route-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAE5E,eAAO,MAAM,+BAA+B,uBAAuB,CAAA;AAEnE;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,GAAG,CAClC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,KACpC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;AAEvC,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,cAAc,IAAI,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;CAC9C;AAED,MAAM,WAAW,sBAAsB;IACrC,kBAAkB,CAAC,EAAE,qBAAqB,CAAA;CAC3C;AAmBD,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,OAAO,GAAE,sBAA2B,GACnC,eAAe,CAejB"}
@@ -0,0 +1,28 @@
1
+ import { createKmsProviderFromEnv } from "@voyantjs/utils";
2
+ export const CRM_ROUTE_RUNTIME_CONTAINER_KEY = "runtime.crm.routes";
3
+ function buildRuntimeEnv(bindings) {
4
+ const processEnv = globalThis.process?.env ?? {};
5
+ const flat = { ...processEnv };
6
+ for (const [key, value] of Object.entries(bindings ?? {})) {
7
+ if (typeof value === "string" || value === undefined) {
8
+ flat[key] = value;
9
+ }
10
+ }
11
+ return flat;
12
+ }
13
+ export function buildCrmRouteRuntime(bindings, options = {}) {
14
+ const runtimeEnv = buildRuntimeEnv(bindings);
15
+ return {
16
+ async getKmsProvider() {
17
+ try {
18
+ if (options.resolveKmsProvider) {
19
+ return await options.resolveKmsProvider(runtimeEnv);
20
+ }
21
+ return await createKmsProviderFromEnv(runtimeEnv);
22
+ }
23
+ catch {
24
+ return null;
25
+ }
26
+ },
27
+ };
28
+ }
@@ -303,6 +303,7 @@ export declare const accountRoutes: import("hono/hono-base").HonoBase<Env, {
303
303
  updatedAt: string;
304
304
  notes: string | null;
305
305
  timezone: string | null;
306
+ region: string | null;
306
307
  entityType: string;
307
308
  entityId: string;
308
309
  label: "service" | "primary" | "other" | "billing" | "shipping" | "mailing" | "meeting" | "legal";
@@ -311,7 +312,6 @@ export declare const accountRoutes: import("hono/hono-base").HonoBase<Env, {
311
312
  line1: string | null;
312
313
  line2: string | null;
313
314
  city: string | null;
314
- region: string | null;
315
315
  postalCode: string | null;
316
316
  country: string | null;
317
317
  latitude: number | null;
@@ -456,6 +456,18 @@ export declare const accountRoutes: import("hono/hono-base").HonoBase<Env, {
456
456
  tags: string[];
457
457
  birthday: string | null;
458
458
  notes: string | null;
459
+ accessibilityEncrypted: {
460
+ enc: string;
461
+ } | null;
462
+ dietaryEncrypted: {
463
+ enc: string;
464
+ } | null;
465
+ loyaltyEncrypted: {
466
+ enc: string;
467
+ } | null;
468
+ insuranceEncrypted: {
469
+ enc: string;
470
+ } | null;
459
471
  createdAt: string;
460
472
  updatedAt: string;
461
473
  archivedAt: string | null;
@@ -494,6 +506,18 @@ export declare const accountRoutes: import("hono/hono-base").HonoBase<Env, {
494
506
  tags: string[];
495
507
  birthday: string | null;
496
508
  notes: string | null;
509
+ accessibilityEncrypted: {
510
+ enc: string;
511
+ } | null;
512
+ dietaryEncrypted: {
513
+ enc: string;
514
+ } | null;
515
+ loyaltyEncrypted: {
516
+ enc: string;
517
+ } | null;
518
+ insuranceEncrypted: {
519
+ enc: string;
520
+ } | null;
497
521
  createdAt: string;
498
522
  updatedAt: string;
499
523
  archivedAt: string | null;
@@ -544,6 +568,18 @@ export declare const accountRoutes: import("hono/hono-base").HonoBase<Env, {
544
568
  tags: string[];
545
569
  birthday: string | null;
546
570
  notes: string | null;
571
+ accessibilityEncrypted: {
572
+ enc: string;
573
+ } | null;
574
+ dietaryEncrypted: {
575
+ enc: string;
576
+ } | null;
577
+ loyaltyEncrypted: {
578
+ enc: string;
579
+ } | null;
580
+ insuranceEncrypted: {
581
+ enc: string;
582
+ } | null;
547
583
  createdAt: string;
548
584
  updatedAt: string;
549
585
  archivedAt: string | null;
@@ -594,6 +630,18 @@ export declare const accountRoutes: import("hono/hono-base").HonoBase<Env, {
594
630
  tags: string[];
595
631
  birthday: string | null;
596
632
  notes: string | null;
633
+ accessibilityEncrypted: {
634
+ enc: string;
635
+ } | null;
636
+ dietaryEncrypted: {
637
+ enc: string;
638
+ } | null;
639
+ loyaltyEncrypted: {
640
+ enc: string;
641
+ } | null;
642
+ insuranceEncrypted: {
643
+ enc: string;
644
+ } | null;
597
645
  createdAt: string;
598
646
  updatedAt: string;
599
647
  archivedAt: string | null;
@@ -747,6 +795,7 @@ export declare const accountRoutes: import("hono/hono-base").HonoBase<Env, {
747
795
  updatedAt: string;
748
796
  notes: string | null;
749
797
  timezone: string | null;
798
+ region: string | null;
750
799
  entityType: string;
751
800
  entityId: string;
752
801
  label: "service" | "primary" | "other" | "billing" | "shipping" | "mailing" | "meeting" | "legal";
@@ -755,7 +804,6 @@ export declare const accountRoutes: import("hono/hono-base").HonoBase<Env, {
755
804
  line1: string | null;
756
805
  line2: string | null;
757
806
  city: string | null;
758
- region: string | null;
759
807
  postalCode: string | null;
760
808
  country: string | null;
761
809
  latitude: number | null;
@@ -1 +1 @@
1
- {"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../src/routes/accounts.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAsBjE,KAAK,GAAG,GAAG;IACT,SAAS,EAAE;QACT,EAAE,EAAE,kBAAkB,CAAA;QACtB,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB,CAAA;CACF,CAAA;AAKD,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA0TtB,CAAA"}
1
+ {"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../src/routes/accounts.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAsBjE,KAAK,GAAG,GAAG;IACT,SAAS,EAAE;QACT,EAAE,EAAE,kBAAkB,CAAA;QACtB,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB,CAAA;CACF,CAAA;AAKD,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA0TtB,CAAA"}