@bizmap/sdk 0.0.51 → 0.0.53

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 (3) hide show
  1. package/dist/main.d.ts +236 -44
  2. package/dist/main.js +94 -50
  3. package/package.json +3 -2
package/dist/main.d.ts CHANGED
@@ -44,19 +44,20 @@ declare const tiers: z.ZodEnum<{
44
44
  }>;
45
45
  type Tier = z.infer<typeof tiers>;
46
46
 
47
- declare const PricingRate: z.ZodObject<{
48
- companyRegistration: z.ZodObject<{
49
- flatFee: z.ZodNumber;
50
- feePerUser: z.ZodNumber;
51
- lastModified: z.ZodInt;
52
- }, z.core.$strip>;
53
- }, z.core.$strip>;
54
- type PricingRate = z.infer<typeof PricingRate>;
55
47
  declare const PriceAdjustment: z.ZodObject<{
56
48
  createdAt: z.ZodReadonly<z.ZodInt>;
57
49
  lastModified: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
58
50
  description: z.ZodOptional<z.ZodString>;
59
- fixedAmount: z.ZodNumber;
51
+ fixedAmount: z.ZodObject<{
52
+ value: z.ZodNumber;
53
+ currency: z.ZodEnum<{
54
+ JMD: "JMD";
55
+ USD: "USD";
56
+ EUR: "EUR";
57
+ GBP: "GBP";
58
+ CAD: "CAD";
59
+ }>;
60
+ }, z.core.$strip>;
60
61
  percentage: z.ZodNumber;
61
62
  }, z.core.$strip>;
62
63
  type PriceAdjustment = z.infer<typeof PriceAdjustment>;
@@ -66,6 +67,13 @@ declare const PriceTag: z.ZodObject<{
66
67
  uid: z.ZodReadonly<z.ZodString>;
67
68
  item: z.ZodString;
68
69
  cost: z.ZodNumber;
70
+ currency: z.ZodEnum<{
71
+ JMD: "JMD";
72
+ USD: "USD";
73
+ EUR: "EUR";
74
+ GBP: "GBP";
75
+ CAD: "CAD";
76
+ }>;
69
77
  }, z.core.$strip>;
70
78
  type PriceTag = z.infer<typeof PriceTag>;
71
79
 
@@ -91,7 +99,9 @@ declare const CompanyUser: z.ZodObject<{
91
99
  }>>, z.ZodTransform<("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[], ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[]>>;
92
100
  isBusy: z.ZodBoolean;
93
101
  appointmentCounter: z.ZodRecord<z.ZodLiteral<"ongoing" | "completed">, z.ZodInt>;
94
- lastActive: z.ZodInt;
102
+ lastActive: z.ZodNullable<z.ZodInt>;
103
+ inviteSent: z.ZodNullable<z.ZodInt>;
104
+ inviteAccepted: z.ZodNullable<z.ZodInt>;
95
105
  name: z.ZodRecord<z.ZodEnum<{
96
106
  first: "first";
97
107
  last: "last";
@@ -101,6 +111,18 @@ declare const CompanyUser: z.ZodObject<{
101
111
  phoneNumber: z.ZodOptional<z.ZodString>;
102
112
  }, z.core.$strip>;
103
113
  type CompanyUser = z.infer<typeof CompanyUser>;
114
+ /** (email) -> user config */
115
+ declare const CompanyInviteList: z.ZodRecord<z.ZodEmail, z.ZodObject<{
116
+ createdAt: z.ZodInt;
117
+ roles: z.ZodPipe<z.ZodArray<z.ZodEnum<{
118
+ doc: "doc";
119
+ physAsst: "physAsst";
120
+ rcpst: "rcpst";
121
+ cshr: "cshr";
122
+ admin: "admin";
123
+ }>>, z.ZodTransform<("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[], ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[]>>;
124
+ }, z.core.$strip>>;
125
+ type CompanyInviteList = z.infer<typeof CompanyInviteList>;
104
126
  declare const CompanyDetails: z.ZodObject<{
105
127
  uid: z.ZodReadonly<z.ZodString>;
106
128
  identity: z.ZodObject<{
@@ -155,27 +177,49 @@ declare const CompanyDetails: z.ZodObject<{
155
177
  }, z.core.$strip>>>>;
156
178
  receipts: z.ZodArray<z.ZodObject<{
157
179
  createdAt: z.ZodReadonly<z.ZodInt>;
180
+ currency: z.ZodEnum<{
181
+ JMD: "JMD";
182
+ USD: "USD";
183
+ EUR: "EUR";
184
+ GBP: "GBP";
185
+ CAD: "CAD";
186
+ }>;
158
187
  item: z.ZodString;
159
188
  cost: z.ZodNumber;
160
189
  }, z.core.$strip>> | z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
161
190
  createdAt: z.ZodReadonly<z.ZodInt>;
191
+ currency: z.ZodEnum<{
192
+ JMD: "JMD";
193
+ USD: "USD";
194
+ EUR: "EUR";
195
+ GBP: "GBP";
196
+ CAD: "CAD";
197
+ }>;
162
198
  item: z.ZodString;
163
199
  cost: z.ZodNumber;
164
200
  }, z.core.$strip>>>>;
165
201
  state: z.ZodObject<{
166
- availableBalance: z.ZodObject<{
202
+ credits: z.ZodObject<{
167
203
  current: z.ZodNumber;
168
204
  lastModified: z.ZodNullable<z.ZodInt>;
169
205
  }, z.core.$strip>;
206
+ storageInBytes: z.ZodRecord<z.ZodLiteral<"used" | "max">, z.ZodObject<{
207
+ current: z.ZodNumber;
208
+ lastModified: z.ZodNullable<z.ZodInt>;
209
+ }, z.core.$strip>>;
170
210
  invoiceNoCounter: z.ZodInt;
171
211
  tktNoCounter: z.ZodInt;
172
212
  lastSavedAt: z.ZodNullable<z.ZodInt>;
173
213
  lastModified: z.ZodNullable<z.ZodInt>;
174
214
  }, z.core.$strip> | z.ZodOptional<z.ZodNullable<z.ZodObject<{
175
- availableBalance: z.ZodObject<{
215
+ credits: z.ZodObject<{
176
216
  current: z.ZodNumber;
177
217
  lastModified: z.ZodNullable<z.ZodInt>;
178
218
  }, z.core.$strip>;
219
+ storageInBytes: z.ZodRecord<z.ZodLiteral<"used" | "max">, z.ZodObject<{
220
+ current: z.ZodNumber;
221
+ lastModified: z.ZodNullable<z.ZodInt>;
222
+ }, z.core.$strip>>;
179
223
  invoiceNoCounter: z.ZodInt;
180
224
  tktNoCounter: z.ZodInt;
181
225
  lastSavedAt: z.ZodNullable<z.ZodInt>;
@@ -209,24 +253,49 @@ declare const CompanyDetails: z.ZodObject<{
209
253
  createdAt: z.ZodReadonly<z.ZodInt>;
210
254
  lastModified: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
211
255
  description: z.ZodOptional<z.ZodString>;
212
- fixedAmount: z.ZodNumber;
256
+ fixedAmount: z.ZodObject<{
257
+ value: z.ZodNumber;
258
+ currency: z.ZodEnum<{
259
+ JMD: "JMD";
260
+ USD: "USD";
261
+ EUR: "EUR";
262
+ GBP: "GBP";
263
+ CAD: "CAD";
264
+ }>;
265
+ }, z.core.$strip>;
213
266
  percentage: z.ZodNumber;
214
267
  }, z.core.$strip>>>;
215
268
  discounts: z.ZodDefault<z.ZodArray<z.ZodObject<{
216
269
  createdAt: z.ZodReadonly<z.ZodInt>;
217
270
  lastModified: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
218
271
  description: z.ZodOptional<z.ZodString>;
219
- fixedAmount: z.ZodNumber;
272
+ fixedAmount: z.ZodObject<{
273
+ value: z.ZodNumber;
274
+ currency: z.ZodEnum<{
275
+ JMD: "JMD";
276
+ USD: "USD";
277
+ EUR: "EUR";
278
+ GBP: "GBP";
279
+ CAD: "CAD";
280
+ }>;
281
+ }, z.core.$strip>;
220
282
  percentage: z.ZodNumber;
221
283
  }, z.core.$strip>>>;
222
284
  services: z.ZodObject<{
223
285
  deployed: z.ZodBoolean;
224
- value: z.ZodDefault<z.ZodArray<z.ZodObject<{
286
+ value: z.ZodRecord<z.ZodString, z.ZodObject<{
225
287
  createdAt: z.ZodReadonly<z.ZodInt>;
226
288
  lastModified: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
289
+ currency: z.ZodEnum<{
290
+ JMD: "JMD";
291
+ USD: "USD";
292
+ EUR: "EUR";
293
+ GBP: "GBP";
294
+ CAD: "CAD";
295
+ }>;
227
296
  item: z.ZodString;
228
297
  cost: z.ZodNumber;
229
- }, z.core.$strip>>>;
298
+ }, z.core.$strip>>;
230
299
  }, z.core.$strip>;
231
300
  lastModified: z.ZodNullable<z.ZodInt>;
232
301
  }, z.core.$strip> | z.ZodOptional<z.ZodNullable<z.ZodObject<{
@@ -234,24 +303,49 @@ declare const CompanyDetails: z.ZodObject<{
234
303
  createdAt: z.ZodReadonly<z.ZodInt>;
235
304
  lastModified: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
236
305
  description: z.ZodOptional<z.ZodString>;
237
- fixedAmount: z.ZodNumber;
306
+ fixedAmount: z.ZodObject<{
307
+ value: z.ZodNumber;
308
+ currency: z.ZodEnum<{
309
+ JMD: "JMD";
310
+ USD: "USD";
311
+ EUR: "EUR";
312
+ GBP: "GBP";
313
+ CAD: "CAD";
314
+ }>;
315
+ }, z.core.$strip>;
238
316
  percentage: z.ZodNumber;
239
317
  }, z.core.$strip>>>;
240
318
  discounts: z.ZodDefault<z.ZodArray<z.ZodObject<{
241
319
  createdAt: z.ZodReadonly<z.ZodInt>;
242
320
  lastModified: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
243
321
  description: z.ZodOptional<z.ZodString>;
244
- fixedAmount: z.ZodNumber;
322
+ fixedAmount: z.ZodObject<{
323
+ value: z.ZodNumber;
324
+ currency: z.ZodEnum<{
325
+ JMD: "JMD";
326
+ USD: "USD";
327
+ EUR: "EUR";
328
+ GBP: "GBP";
329
+ CAD: "CAD";
330
+ }>;
331
+ }, z.core.$strip>;
245
332
  percentage: z.ZodNumber;
246
333
  }, z.core.$strip>>>;
247
334
  services: z.ZodObject<{
248
335
  deployed: z.ZodBoolean;
249
- value: z.ZodDefault<z.ZodArray<z.ZodObject<{
336
+ value: z.ZodRecord<z.ZodString, z.ZodObject<{
250
337
  createdAt: z.ZodReadonly<z.ZodInt>;
251
338
  lastModified: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
339
+ currency: z.ZodEnum<{
340
+ JMD: "JMD";
341
+ USD: "USD";
342
+ EUR: "EUR";
343
+ GBP: "GBP";
344
+ CAD: "CAD";
345
+ }>;
252
346
  item: z.ZodString;
253
347
  cost: z.ZodNumber;
254
- }, z.core.$strip>>>;
348
+ }, z.core.$strip>>;
255
349
  }, z.core.$strip>;
256
350
  lastModified: z.ZodNullable<z.ZodInt>;
257
351
  }, z.core.$strip>>>;
@@ -278,7 +372,9 @@ declare const CompanyDetails: z.ZodObject<{
278
372
  }>>, z.ZodTransform<("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[], ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[]>>;
279
373
  isBusy: z.ZodBoolean;
280
374
  appointmentCounter: z.ZodRecord<z.ZodLiteral<"ongoing" | "completed">, z.ZodInt>;
281
- lastActive: z.ZodInt;
375
+ lastActive: z.ZodNullable<z.ZodInt>;
376
+ inviteSent: z.ZodNullable<z.ZodInt>;
377
+ inviteAccepted: z.ZodNullable<z.ZodInt>;
282
378
  name: z.ZodRecord<z.ZodEnum<{
283
379
  first: "first";
284
380
  last: "last";
@@ -318,7 +414,9 @@ declare const CompanyDetails: z.ZodObject<{
318
414
  roles: ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[];
319
415
  isBusy: boolean;
320
416
  appointmentCounter: Record<"ongoing" | "completed", number>;
321
- lastActive: number;
417
+ lastActive: number | null;
418
+ inviteSent: number | null;
419
+ inviteAccepted: number | null;
322
420
  name: Record<"first" | "last", string>;
323
421
  email: string;
324
422
  lastModified?: number | null | undefined;
@@ -350,7 +448,9 @@ declare const CompanyDetails: z.ZodObject<{
350
448
  roles: ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[];
351
449
  isBusy: boolean;
352
450
  appointmentCounter: Record<"ongoing" | "completed", number>;
353
- lastActive: number;
451
+ lastActive: number | null;
452
+ inviteSent: number | null;
453
+ inviteAccepted: number | null;
354
454
  name: Record<"first" | "last", string>;
355
455
  email: string;
356
456
  lastModified?: number | null | undefined;
@@ -393,7 +493,9 @@ declare const CompanyDetails: z.ZodObject<{
393
493
  }>>, z.ZodTransform<("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[], ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[]>>;
394
494
  isBusy: z.ZodBoolean;
395
495
  appointmentCounter: z.ZodRecord<z.ZodLiteral<"ongoing" | "completed">, z.ZodInt>;
396
- lastActive: z.ZodInt;
496
+ lastActive: z.ZodNullable<z.ZodInt>;
497
+ inviteSent: z.ZodNullable<z.ZodInt>;
498
+ inviteAccepted: z.ZodNullable<z.ZodInt>;
397
499
  name: z.ZodRecord<z.ZodEnum<{
398
500
  first: "first";
399
501
  last: "last";
@@ -433,7 +535,9 @@ declare const CompanyDetails: z.ZodObject<{
433
535
  roles: ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[];
434
536
  isBusy: boolean;
435
537
  appointmentCounter: Record<"ongoing" | "completed", number>;
436
- lastActive: number;
538
+ lastActive: number | null;
539
+ inviteSent: number | null;
540
+ inviteAccepted: number | null;
437
541
  name: Record<"first" | "last", string>;
438
542
  email: string;
439
543
  lastModified?: number | null | undefined;
@@ -465,7 +569,9 @@ declare const CompanyDetails: z.ZodObject<{
465
569
  roles: ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[];
466
570
  isBusy: boolean;
467
571
  appointmentCounter: Record<"ongoing" | "completed", number>;
468
- lastActive: number;
572
+ lastActive: number | null;
573
+ inviteSent: number | null;
574
+ inviteAccepted: number | null;
469
575
  name: Record<"first" | "last", string>;
470
576
  email: string;
471
577
  lastModified?: number | null | undefined;
@@ -543,27 +649,49 @@ declare const PartialCompanyDetails: z.ZodObject<{
543
649
  }, z.core.$strip>>>>;
544
650
  receipts: z.ZodArray<z.ZodObject<{
545
651
  createdAt: z.ZodReadonly<z.ZodInt>;
652
+ currency: z.ZodEnum<{
653
+ JMD: "JMD";
654
+ USD: "USD";
655
+ EUR: "EUR";
656
+ GBP: "GBP";
657
+ CAD: "CAD";
658
+ }>;
546
659
  item: z.ZodString;
547
660
  cost: z.ZodNumber;
548
661
  }, z.core.$strip>> | z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
549
662
  createdAt: z.ZodReadonly<z.ZodInt>;
663
+ currency: z.ZodEnum<{
664
+ JMD: "JMD";
665
+ USD: "USD";
666
+ EUR: "EUR";
667
+ GBP: "GBP";
668
+ CAD: "CAD";
669
+ }>;
550
670
  item: z.ZodString;
551
671
  cost: z.ZodNumber;
552
672
  }, z.core.$strip>>>>;
553
673
  state: z.ZodObject<{
554
- availableBalance: z.ZodObject<{
674
+ credits: z.ZodObject<{
555
675
  current: z.ZodNumber;
556
676
  lastModified: z.ZodNullable<z.ZodInt>;
557
677
  }, z.core.$strip>;
678
+ storageInBytes: z.ZodRecord<z.ZodLiteral<"used" | "max">, z.ZodObject<{
679
+ current: z.ZodNumber;
680
+ lastModified: z.ZodNullable<z.ZodInt>;
681
+ }, z.core.$strip>>;
558
682
  invoiceNoCounter: z.ZodInt;
559
683
  tktNoCounter: z.ZodInt;
560
684
  lastSavedAt: z.ZodNullable<z.ZodInt>;
561
685
  lastModified: z.ZodNullable<z.ZodInt>;
562
686
  }, z.core.$strip> | z.ZodOptional<z.ZodNullable<z.ZodObject<{
563
- availableBalance: z.ZodObject<{
687
+ credits: z.ZodObject<{
564
688
  current: z.ZodNumber;
565
689
  lastModified: z.ZodNullable<z.ZodInt>;
566
690
  }, z.core.$strip>;
691
+ storageInBytes: z.ZodRecord<z.ZodLiteral<"used" | "max">, z.ZodObject<{
692
+ current: z.ZodNumber;
693
+ lastModified: z.ZodNullable<z.ZodInt>;
694
+ }, z.core.$strip>>;
567
695
  invoiceNoCounter: z.ZodInt;
568
696
  tktNoCounter: z.ZodInt;
569
697
  lastSavedAt: z.ZodNullable<z.ZodInt>;
@@ -597,24 +725,49 @@ declare const PartialCompanyDetails: z.ZodObject<{
597
725
  createdAt: z.ZodReadonly<z.ZodInt>;
598
726
  lastModified: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
599
727
  description: z.ZodOptional<z.ZodString>;
600
- fixedAmount: z.ZodNumber;
728
+ fixedAmount: z.ZodObject<{
729
+ value: z.ZodNumber;
730
+ currency: z.ZodEnum<{
731
+ JMD: "JMD";
732
+ USD: "USD";
733
+ EUR: "EUR";
734
+ GBP: "GBP";
735
+ CAD: "CAD";
736
+ }>;
737
+ }, z.core.$strip>;
601
738
  percentage: z.ZodNumber;
602
739
  }, z.core.$strip>>>;
603
740
  discounts: z.ZodDefault<z.ZodArray<z.ZodObject<{
604
741
  createdAt: z.ZodReadonly<z.ZodInt>;
605
742
  lastModified: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
606
743
  description: z.ZodOptional<z.ZodString>;
607
- fixedAmount: z.ZodNumber;
744
+ fixedAmount: z.ZodObject<{
745
+ value: z.ZodNumber;
746
+ currency: z.ZodEnum<{
747
+ JMD: "JMD";
748
+ USD: "USD";
749
+ EUR: "EUR";
750
+ GBP: "GBP";
751
+ CAD: "CAD";
752
+ }>;
753
+ }, z.core.$strip>;
608
754
  percentage: z.ZodNumber;
609
755
  }, z.core.$strip>>>;
610
756
  services: z.ZodObject<{
611
757
  deployed: z.ZodBoolean;
612
- value: z.ZodDefault<z.ZodArray<z.ZodObject<{
758
+ value: z.ZodRecord<z.ZodString, z.ZodObject<{
613
759
  createdAt: z.ZodReadonly<z.ZodInt>;
614
760
  lastModified: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
761
+ currency: z.ZodEnum<{
762
+ JMD: "JMD";
763
+ USD: "USD";
764
+ EUR: "EUR";
765
+ GBP: "GBP";
766
+ CAD: "CAD";
767
+ }>;
615
768
  item: z.ZodString;
616
769
  cost: z.ZodNumber;
617
- }, z.core.$strip>>>;
770
+ }, z.core.$strip>>;
618
771
  }, z.core.$strip>;
619
772
  lastModified: z.ZodNullable<z.ZodInt>;
620
773
  }, z.core.$strip> | z.ZodOptional<z.ZodNullable<z.ZodObject<{
@@ -622,24 +775,49 @@ declare const PartialCompanyDetails: z.ZodObject<{
622
775
  createdAt: z.ZodReadonly<z.ZodInt>;
623
776
  lastModified: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
624
777
  description: z.ZodOptional<z.ZodString>;
625
- fixedAmount: z.ZodNumber;
778
+ fixedAmount: z.ZodObject<{
779
+ value: z.ZodNumber;
780
+ currency: z.ZodEnum<{
781
+ JMD: "JMD";
782
+ USD: "USD";
783
+ EUR: "EUR";
784
+ GBP: "GBP";
785
+ CAD: "CAD";
786
+ }>;
787
+ }, z.core.$strip>;
626
788
  percentage: z.ZodNumber;
627
789
  }, z.core.$strip>>>;
628
790
  discounts: z.ZodDefault<z.ZodArray<z.ZodObject<{
629
791
  createdAt: z.ZodReadonly<z.ZodInt>;
630
792
  lastModified: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
631
793
  description: z.ZodOptional<z.ZodString>;
632
- fixedAmount: z.ZodNumber;
794
+ fixedAmount: z.ZodObject<{
795
+ value: z.ZodNumber;
796
+ currency: z.ZodEnum<{
797
+ JMD: "JMD";
798
+ USD: "USD";
799
+ EUR: "EUR";
800
+ GBP: "GBP";
801
+ CAD: "CAD";
802
+ }>;
803
+ }, z.core.$strip>;
633
804
  percentage: z.ZodNumber;
634
805
  }, z.core.$strip>>>;
635
806
  services: z.ZodObject<{
636
807
  deployed: z.ZodBoolean;
637
- value: z.ZodDefault<z.ZodArray<z.ZodObject<{
808
+ value: z.ZodRecord<z.ZodString, z.ZodObject<{
638
809
  createdAt: z.ZodReadonly<z.ZodInt>;
639
810
  lastModified: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
811
+ currency: z.ZodEnum<{
812
+ JMD: "JMD";
813
+ USD: "USD";
814
+ EUR: "EUR";
815
+ GBP: "GBP";
816
+ CAD: "CAD";
817
+ }>;
640
818
  item: z.ZodString;
641
819
  cost: z.ZodNumber;
642
- }, z.core.$strip>>>;
820
+ }, z.core.$strip>>;
643
821
  }, z.core.$strip>;
644
822
  lastModified: z.ZodNullable<z.ZodInt>;
645
823
  }, z.core.$strip>>>;
@@ -666,7 +844,9 @@ declare const PartialCompanyDetails: z.ZodObject<{
666
844
  }>>, z.ZodTransform<("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[], ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[]>>;
667
845
  isBusy: z.ZodBoolean;
668
846
  appointmentCounter: z.ZodRecord<z.ZodLiteral<"ongoing" | "completed">, z.ZodInt>;
669
- lastActive: z.ZodInt;
847
+ lastActive: z.ZodNullable<z.ZodInt>;
848
+ inviteSent: z.ZodNullable<z.ZodInt>;
849
+ inviteAccepted: z.ZodNullable<z.ZodInt>;
670
850
  name: z.ZodRecord<z.ZodEnum<{
671
851
  first: "first";
672
852
  last: "last";
@@ -706,7 +886,9 @@ declare const PartialCompanyDetails: z.ZodObject<{
706
886
  roles: ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[];
707
887
  isBusy: boolean;
708
888
  appointmentCounter: Record<"ongoing" | "completed", number>;
709
- lastActive: number;
889
+ lastActive: number | null;
890
+ inviteSent: number | null;
891
+ inviteAccepted: number | null;
710
892
  name: Record<"first" | "last", string>;
711
893
  email: string;
712
894
  lastModified?: number | null | undefined;
@@ -738,7 +920,9 @@ declare const PartialCompanyDetails: z.ZodObject<{
738
920
  roles: ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[];
739
921
  isBusy: boolean;
740
922
  appointmentCounter: Record<"ongoing" | "completed", number>;
741
- lastActive: number;
923
+ lastActive: number | null;
924
+ inviteSent: number | null;
925
+ inviteAccepted: number | null;
742
926
  name: Record<"first" | "last", string>;
743
927
  email: string;
744
928
  lastModified?: number | null | undefined;
@@ -781,7 +965,9 @@ declare const PartialCompanyDetails: z.ZodObject<{
781
965
  }>>, z.ZodTransform<("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[], ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[]>>;
782
966
  isBusy: z.ZodBoolean;
783
967
  appointmentCounter: z.ZodRecord<z.ZodLiteral<"ongoing" | "completed">, z.ZodInt>;
784
- lastActive: z.ZodInt;
968
+ lastActive: z.ZodNullable<z.ZodInt>;
969
+ inviteSent: z.ZodNullable<z.ZodInt>;
970
+ inviteAccepted: z.ZodNullable<z.ZodInt>;
785
971
  name: z.ZodRecord<z.ZodEnum<{
786
972
  first: "first";
787
973
  last: "last";
@@ -821,7 +1007,9 @@ declare const PartialCompanyDetails: z.ZodObject<{
821
1007
  roles: ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[];
822
1008
  isBusy: boolean;
823
1009
  appointmentCounter: Record<"ongoing" | "completed", number>;
824
- lastActive: number;
1010
+ lastActive: number | null;
1011
+ inviteSent: number | null;
1012
+ inviteAccepted: number | null;
825
1013
  name: Record<"first" | "last", string>;
826
1014
  email: string;
827
1015
  lastModified?: number | null | undefined;
@@ -853,7 +1041,9 @@ declare const PartialCompanyDetails: z.ZodObject<{
853
1041
  roles: ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[];
854
1042
  isBusy: boolean;
855
1043
  appointmentCounter: Record<"ongoing" | "completed", number>;
856
- lastActive: number;
1044
+ lastActive: number | null;
1045
+ inviteSent: number | null;
1046
+ inviteAccepted: number | null;
857
1047
  name: Record<"first" | "last", string>;
858
1048
  email: string;
859
1049
  lastModified?: number | null | undefined;
@@ -930,7 +1120,9 @@ declare const findConflictingPartners: (...partners: CompanyUser[]) => {
930
1120
  roles: ("doc" | "physAsst" | "rcpst" | "cshr" | "admin")[];
931
1121
  isBusy: boolean;
932
1122
  appointmentCounter: Record<"ongoing" | "completed", number>;
933
- lastActive: number;
1123
+ lastActive: number | null;
1124
+ inviteSent: number | null;
1125
+ inviteAccepted: number | null;
934
1126
  name: Record<"first" | "last", string>;
935
1127
  email: string;
936
1128
  lastModified?: number | null | undefined;
@@ -940,4 +1132,4 @@ declare const findConflictingPartners: (...partners: CompanyUser[]) => {
940
1132
  /**@returns the roles that are compatible with the selected role. */
941
1133
  declare const getCompatibleRoles: (role: CompanyUserRole) => CompanyUserRole[];
942
1134
 
943
- export { type AppointmentDistAlg, CompanyDetails, type CompanyPartnerRole, type CompanyServiceSelector, CompanyUser, type CompanyUserRole, type EmployeeRole, type HealthcareProviderRole, InviteResponse, InvoiceNo, Jwt, Notification, PartialCompanyDetails, PriceAdjustment, PriceTag, PricingRate, StandardTime, type Tier, TierList, TimeLog, Timestamp, UuidV4, UuidV7, appointmentDistAlgs, companyPartnerRoles, companyServiceSelectors, companyUserRoles, employeeRoles, findConflictingPartners, getCompatibleRoles, healthcareProviderRoles, tiers };
1135
+ export { type AppointmentDistAlg, CompanyDetails, CompanyInviteList, type CompanyPartnerRole, type CompanyServiceSelector, CompanyUser, type CompanyUserRole, type EmployeeRole, type HealthcareProviderRole, InviteResponse, InvoiceNo, Jwt, Notification, PartialCompanyDetails, PriceAdjustment, PriceTag, StandardTime, type Tier, TierList, TimeLog, Timestamp, UuidV4, UuidV7, appointmentDistAlgs, companyPartnerRoles, companyServiceSelectors, companyUserRoles, employeeRoles, findConflictingPartners, getCompatibleRoles, healthcareProviderRoles, tiers };
package/dist/main.js CHANGED
@@ -24,6 +24,7 @@ import * as z2 from "zod";
24
24
  var tiers = z2.enum(["free", "pro", "premium", "gold"]);
25
25
 
26
26
  // src/schemas/Billing.ts
27
+ import { currencies } from "@wavy/util";
27
28
  import * as z4 from "zod";
28
29
 
29
30
  // src/schemas/utils.ts
@@ -60,16 +61,12 @@ var TimeLog = z3.object({
60
61
  });
61
62
 
62
63
  // src/schemas/Billing.ts
63
- var PricingRate = z4.object({
64
- companyRegistration: z4.object({
65
- flatFee: z4.number().min(0),
66
- feePerUser: z4.number().min(0),
67
- lastModified: Timestamp
68
- })
69
- });
70
64
  var PriceAdjustment = z4.object({
71
65
  description: z4.string().trim().min(3, "A description must have atleast (3) characters.").max(25, "A description can't have more that (25) characters.").optional(),
72
- fixedAmount: z4.number().min(0).max(1e6, "The max fixed amount is $1,000,000.00"),
66
+ fixedAmount: z4.object({
67
+ value: z4.number().min(0).max(1e6, "The max fixed amount is $1,000,000.00"),
68
+ currency: currencies
69
+ }),
73
70
  percentage: z4.number().min(0).max(1e3, "The max percentage is 1,000%"),
74
71
  ...TimeLog.shape
75
72
  });
@@ -78,6 +75,7 @@ var PriceTag = z4.object({
78
75
  /**The name of the item that's being priced */
79
76
  item: z4.string().trim().min(3, "The price item must be atleast (3) characters long.").max(50, "The price item can't be more than (50) characters long."),
80
77
  cost: z4.number().min(1, "The minimum allowed cost is $1.00").max(1e9, "The max allowed cost is $1,000,000,000.00."),
78
+ currency: currencies,
81
79
  ...TimeLog.shape
82
80
  });
83
81
 
@@ -85,6 +83,37 @@ var PriceTag = z4.object({
85
83
  import { Address, PhoneNumber, UserModel } from "@wavy/util";
86
84
  import * as z6 from "zod";
87
85
 
86
+ // src/functions/helper-functions.ts
87
+ var findConflictingPartners = (...partners) => {
88
+ let hasSingleDoctor = false;
89
+ const conflicts = [];
90
+ if (!partners) return partners;
91
+ for (const partner of partners) {
92
+ if (!partner.roles || partner.roles.some(
93
+ (r) => !companyPartnerRoles.options.includes(r)
94
+ ) || !CompanyUser.shape.roles.safeParse(partner.roles).success) {
95
+ conflicts.push(partner);
96
+ continue;
97
+ }
98
+ if (partner.roles.includes("doc") && !hasSingleDoctor) {
99
+ hasSingleDoctor = true;
100
+ } else if (partner.roles.includes("doc")) {
101
+ conflicts.push(partner);
102
+ continue;
103
+ }
104
+ }
105
+ return conflicts.length === 0 ? null : conflicts;
106
+ };
107
+ var getCompatibleRoles = (role) => {
108
+ if (role === "physAsst") {
109
+ return companyUserRoles.exclude(["admin", "doc", role]).options;
110
+ }
111
+ if (role === "admin" || role === "doc") {
112
+ return companyUserRoles.exclude(["physAsst", role]).options;
113
+ }
114
+ return companyUserRoles.exclude([role]).options;
115
+ };
116
+
88
117
  // src/schemas/Global.ts
89
118
  import * as z5 from "zod";
90
119
  var TierList = z5.record(
@@ -143,37 +172,6 @@ var Notification = z5.object({
143
172
  }
144
173
  });
145
174
 
146
- // src/functions/helper-functions.ts
147
- var findConflictingPartners = (...partners) => {
148
- let hasSingleDoctor = false;
149
- const conflicts = [];
150
- if (!partners) return partners;
151
- for (const partner of partners) {
152
- if (!partner.roles || partner.roles.some(
153
- (r) => !companyPartnerRoles.options.includes(r)
154
- ) || !CompanyUser.shape.roles.safeParse(partner.roles).success) {
155
- conflicts.push(partner);
156
- continue;
157
- }
158
- if (partner.roles.includes("doc") && !hasSingleDoctor) {
159
- hasSingleDoctor = true;
160
- } else if (partner.roles.includes("doc")) {
161
- conflicts.push(partner);
162
- continue;
163
- }
164
- }
165
- return conflicts.length === 0 ? null : conflicts;
166
- };
167
- var getCompatibleRoles = (role) => {
168
- if (role === "physAsst") {
169
- return companyUserRoles.exclude(["admin", "doc", role]).options;
170
- }
171
- if (role === "admin" || role === "doc") {
172
- return companyUserRoles.exclude(["physAsst", role]).options;
173
- }
174
- return companyUserRoles.exclude([role]).options;
175
- };
176
-
177
175
  // src/schemas/Company.ts
178
176
  var CompanyUser = z6.object({
179
177
  ...UserModel.shape,
@@ -200,7 +198,9 @@ var CompanyUser = z6.object({
200
198
  z6.literal(["ongoing", "completed"]),
201
199
  z6.int().min(0)
202
200
  ),
203
- lastActive: Timestamp,
201
+ lastActive: Timestamp.nullable(),
202
+ inviteSent: Timestamp.nullable(),
203
+ inviteAccepted: Timestamp.nullable(),
204
204
  ...TimeLog.shape
205
205
  }).superRefine((data, ctx) => {
206
206
  if (!data.availability.isAvailable && data.status !== "active") {
@@ -211,7 +211,19 @@ var CompanyUser = z6.object({
211
211
  'Only users with the "doc" or "physAsst" role can be marked as unavailable.'
212
212
  );
213
213
  }
214
+ if (data.status === "inviteSent" && !data.inviteSent) {
215
+ ctx.addIssue(
216
+ 'A user with the status "inviteSent" must also have a timestamp for the time that the invite was sent.'
217
+ );
218
+ }
214
219
  });
220
+ var CompanyInviteList = z6.record(
221
+ CompanyUser.shape.email,
222
+ z6.object({ createdAt: Timestamp, roles: CompanyUser.shape.roles })
223
+ ).refine(
224
+ (data) => Object.keys(data).length > 0,
225
+ "Insufficient amount of members invited."
226
+ );
215
227
  var CompanyIdentity = z6.object({
216
228
  displayName: z6.string().min(3).max(25),
217
229
  logo: z6.string().max(2500).nullish(),
@@ -234,11 +246,20 @@ var CompanyIdentity = z6.object({
234
246
  lastModified: Timestamp.nullable()
235
247
  });
236
248
  var CompanyState = z6.object({
237
- // This can only be changed by the server/app admin
238
- availableBalance: z6.object({
249
+ credits: z6.object({
239
250
  current: z6.number(),
240
251
  lastModified: Timestamp.nullable()
241
252
  }),
253
+ storageInBytes: z6.record(
254
+ z6.literal(["used", "max"]),
255
+ z6.object({
256
+ current: z6.number(),
257
+ lastModified: Timestamp.nullable()
258
+ })
259
+ ).refine(
260
+ (data) => data.used.current <= data.max.current,
261
+ "The total storage used cannot exceed the max allowed storage."
262
+ ),
242
263
  /** A counter for the company's invoice no.
243
264
  * @note This should only be null when the cycle resets
244
265
  */
@@ -263,18 +284,37 @@ var CompanyPreferences = z6.object({
263
284
  */
264
285
  apptDistAlg: appointmentDistAlgs.default("RR"),
265
286
  lastModified: Timestamp.nullable()
266
- });
287
+ }).refine(
288
+ (data) => !data.enforcePaidAppts || data.enforcePaidAppts && data.serviceSelector === "scheduler",
289
+ 'Enforcing paid appointments is only allowed when the service selector is the "scheduler".'
290
+ );
267
291
  var Billing = z6.object({
268
292
  additionalFees: z6.array(PriceAdjustment).default([]),
269
293
  discounts: z6.array(PriceAdjustment).default([]),
270
294
  services: z6.object({
271
295
  /** Forces service selectors to use the list of service(s) that you've created. */
272
296
  deployed: z6.boolean(),
273
- value: z6.array(PriceTag.omit({ uid: true })).max(100).default([])
274
- }).refine(
275
- (data) => !data.deployed || data.deployed && data.value.length > 0,
276
- "You must create at least (1) service in order to deploy your service list."
277
- ),
297
+ value: z6.record(z6.string(), PriceTag.omit({ uid: true }))
298
+ }).superRefine((data, ctx) => {
299
+ const services = Object.entries(data.value);
300
+ if (services.length > 150) {
301
+ ctx.addIssue(
302
+ "Creating more services than the max allowed services (150) is prohibited."
303
+ );
304
+ }
305
+ if (data.deployed && services.length < 1) {
306
+ ctx.addIssue(
307
+ "You must create at least (1) service in order to deploy your service list."
308
+ );
309
+ }
310
+ for (const [key, value] of services) {
311
+ if (key !== value.createdAt.toString()) {
312
+ ctx.addIssue(
313
+ `The key for every service must be the same its correlating "createdAt" timestamp.`
314
+ );
315
+ }
316
+ }
317
+ }),
278
318
  lastModified: Timestamp.nullable()
279
319
  });
280
320
  var Staff = z6.object({
@@ -367,12 +407,16 @@ var Staff = z6.object({
367
407
  }
368
408
  }
369
409
  });
410
+ var CompanyNotifications = z6.array(Notification).refine(
411
+ (data) => data.every((notif) => notif.code !== "COMPANY_INVITE"),
412
+ "A company can't receive a company invite."
413
+ );
370
414
  var Receipts = z6.array(PriceTag.omit({ uid: true, lastModified: true }));
371
415
  var createCompanyDetails = (options) => {
372
416
  return z6.object({
373
417
  uid: UuidV7,
374
418
  identity: CompanyIdentity,
375
- notifications: options.partial ? z6.array(Notification).nullish() : z6.array(Notification),
419
+ notifications: options.partial ? CompanyNotifications.nullish() : CompanyNotifications,
376
420
  receipts: options.partial ? Receipts.nullish() : Receipts,
377
421
  state: options.partial ? CompanyState.nullish() : CompanyState,
378
422
  preferences: options.partial ? CompanyPreferences.nullish() : CompanyPreferences,
@@ -385,6 +429,7 @@ var CompanyDetails = createCompanyDetails({ partial: false });
385
429
  var PartialCompanyDetails = createCompanyDetails({ partial: true });
386
430
  export {
387
431
  CompanyDetails,
432
+ CompanyInviteList,
388
433
  CompanyUser,
389
434
  InviteResponse,
390
435
  InvoiceNo,
@@ -393,7 +438,6 @@ export {
393
438
  PartialCompanyDetails,
394
439
  PriceAdjustment,
395
440
  PriceTag,
396
- PricingRate,
397
441
  StandardTime,
398
442
  TierList,
399
443
  TimeLog,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bizmap/sdk",
3
- "version": "0.0.51",
3
+ "version": "0.0.53",
4
4
  "main": "./dist/main.js",
5
5
  "types": "./dist/main.d.ts",
6
6
  "type": "module",
@@ -16,11 +16,12 @@
16
16
  "author": "",
17
17
  "license": "MIT",
18
18
  "peerDependencies": {
19
+ "@wavy/util": "^0.0.11",
19
20
  "zod": "^4.2.1"
20
21
  },
21
22
  "description": "",
22
23
  "devDependencies": {
23
- "@wavy/util": "^0.0.9",
24
+ "@wavy/util": "^0.0.11",
24
25
  "tsup": "^8.5.0",
25
26
  "typescript": "^5.9.2",
26
27
  "zod": "^4.2.1"