@dalmore/api-contracts 0.0.0-dev.835d7eb → 0.0.0-dev.8f56ad5

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 (43) hide show
  1. package/common/types/account.types.d.ts +9 -0
  2. package/common/types/account.types.js +1 -0
  3. package/common/types/account.types.js.map +1 -1
  4. package/common/types/activity.types.d.ts +8 -1
  5. package/common/types/activity.types.js +7 -0
  6. package/common/types/activity.types.js.map +1 -1
  7. package/common/types/cap-table.types.d.ts +54 -54
  8. package/common/types/common.types.d.ts +12 -1
  9. package/common/types/common.types.js +13 -1
  10. package/common/types/common.types.js.map +1 -1
  11. package/common/types/disbursement-transaction.types.d.ts +1 -1
  12. package/common/types/disbursement-transaction.types.js +1 -1
  13. package/common/types/disbursement-transaction.types.js.map +1 -1
  14. package/common/types/disbursements.types.d.ts +817 -0
  15. package/common/types/disbursements.types.js +63 -0
  16. package/common/types/disbursements.types.js.map +1 -1
  17. package/common/types/exchange-provider.types.d.ts +12 -12
  18. package/common/types/index.d.ts +1 -0
  19. package/common/types/index.js +1 -0
  20. package/common/types/index.js.map +1 -1
  21. package/common/types/investor-account.types.d.ts +1 -1
  22. package/common/types/investor-account.types.js +1 -2
  23. package/common/types/investor-account.types.js.map +1 -1
  24. package/common/types/issuer-offering.types.d.ts +163 -1
  25. package/common/types/issuer-offering.types.js +151 -2
  26. package/common/types/issuer-offering.types.js.map +1 -1
  27. package/common/types/offering.types.d.ts +233 -2
  28. package/common/types/offering.types.js +185 -3
  29. package/common/types/offering.types.js.map +1 -1
  30. package/common/types/portfolio.types.d.ts +6 -6
  31. package/common/types/secondary-order.types.d.ts +10 -10
  32. package/common/types/secondary-trade.types.d.ts +10 -10
  33. package/common/types/trade.types.js +1 -0
  34. package/common/types/trade.types.js.map +1 -1
  35. package/common/types/transaction.types.d.ts +0 -1
  36. package/common/types/transaction.types.js +0 -1
  37. package/common/types/transaction.types.js.map +1 -1
  38. package/common/types/user.types.d.ts +24 -5
  39. package/common/types/user.types.js +4 -1
  40. package/common/types/user.types.js.map +1 -1
  41. package/contracts/clients/index.d.ts +80 -0
  42. package/contracts/clients/offerings/index.d.ts +80 -0
  43. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  import { z } from 'zod';
2
- import { ComplianceReview, OfferingType, ManagedByType, SortOrder, SortBy, OfferingVersioningType, OfferingOnboardingStatus, AssetType, DurationType } from './common.types';
2
+ import { ComplianceReview, OfferingType, ManagedByType, SortOrder, SortBy, OfferingVersioningType, OfferingOnboardingStatus, AssetType, DurationType, WarrantSharesCalculationMethod } from './common.types';
3
3
  import { OfferingStatus } from './issuer-offering.types';
4
4
  import { AssetTemplateType } from './asset.types';
5
5
  export declare enum OfferingFeeType {
@@ -113,6 +113,7 @@ export declare const PatchOfferingBase: z.ZodObject<{
113
113
  cancellationPeriod: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
114
114
  showTotalRaised: z.ZodOptional<z.ZodBoolean>;
115
115
  issuerId: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
116
+ shareClassId: z.ZodOptional<z.ZodNullable<z.ZodLazy<z.ZodEffects<z.ZodString, string, string>>>>;
116
117
  }, "strip", z.ZodTypeAny, {
117
118
  platformSettings: string | null;
118
119
  type?: OfferingType | undefined;
@@ -135,6 +136,7 @@ export declare const PatchOfferingBase: z.ZodObject<{
135
136
  memorandumId?: string | null | undefined;
136
137
  subscriptionAgreementId?: string | null | undefined;
137
138
  showTotalRaised?: boolean | undefined;
139
+ shareClassId?: string | null | undefined;
138
140
  entitySubscriptionAgreementTemplateId?: string | null | undefined;
139
141
  subscriptionAgreementTemplateId?: string | null | undefined;
140
142
  jointSubscriptionAgreementTemplateId?: string | null | undefined;
@@ -165,6 +167,7 @@ export declare const PatchOfferingBase: z.ZodObject<{
165
167
  memorandumId?: string | null | undefined;
166
168
  subscriptionAgreementId?: string | null | undefined;
167
169
  showTotalRaised?: boolean | undefined;
170
+ shareClassId?: string | null | undefined;
168
171
  entitySubscriptionAgreementTemplateId?: string | null | undefined;
169
172
  subscriptionAgreementTemplateId?: string | null | undefined;
170
173
  jointSubscriptionAgreementTemplateId?: string | null | undefined;
@@ -214,6 +217,7 @@ export declare const PatchOffering: z.ZodObject<{
214
217
  cancellationPeriod: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
215
218
  showTotalRaised: z.ZodOptional<z.ZodBoolean>;
216
219
  issuerId: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
220
+ shareClassId: z.ZodOptional<z.ZodNullable<z.ZodLazy<z.ZodEffects<z.ZodString, string, string>>>>;
217
221
  } & {
218
222
  assetName: z.ZodOptional<z.ZodString>;
219
223
  assetType: z.ZodOptional<z.ZodNativeEnum<typeof AssetType>>;
@@ -266,6 +270,13 @@ export declare const PatchOffering: z.ZodObject<{
266
270
  bankAccountId: z.ZodOptional<z.ZodNullable<z.ZodLazy<z.ZodEffects<z.ZodString, string, string>>>>;
267
271
  escrowAccountId: z.ZodOptional<z.ZodNullable<z.ZodLazy<z.ZodEffects<z.ZodString, string, string>>>>;
268
272
  escrowAgreementFileId: z.ZodOptional<z.ZodNullable<z.ZodLazy<z.ZodEffects<z.ZodString, string, string>>>>;
273
+ warrantsEnabled: z.ZodOptional<z.ZodBoolean>;
274
+ totalShares: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
275
+ warrantTermYears: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
276
+ exercisePrice: z.ZodOptional<z.ZodNullable<z.ZodEffects<z.ZodNumber, number, number>>>;
277
+ warrantPercentage: z.ZodOptional<z.ZodNullable<z.ZodEffects<z.ZodNumber, number, number>>>;
278
+ calculationMethod: z.ZodOptional<z.ZodNullable<z.ZodNativeEnum<typeof WarrantSharesCalculationMethod>>>;
279
+ incrementThreshold: z.ZodOptional<z.ZodNullable<z.ZodEffects<z.ZodNumber, number, number>>>;
269
280
  }, "strip", z.ZodTypeAny, {
270
281
  platformSettings: string | null;
271
282
  type?: OfferingType | undefined;
@@ -293,6 +304,14 @@ export declare const PatchOffering: z.ZodObject<{
293
304
  escrowAgreementFileId?: string | null | undefined;
294
305
  bankAccountId?: string | null | undefined;
295
306
  escrowAccountId?: string | null | undefined;
307
+ warrantsEnabled?: boolean | undefined;
308
+ totalShares?: number | null | undefined;
309
+ warrantTermYears?: number | null | undefined;
310
+ exercisePrice?: number | null | undefined;
311
+ warrantPercentage?: number | null | undefined;
312
+ calculationMethod?: WarrantSharesCalculationMethod | null | undefined;
313
+ incrementThreshold?: number | null | undefined;
314
+ shareClassId?: string | null | undefined;
296
315
  assetName?: string | undefined;
297
316
  assetType?: AssetType | undefined;
298
317
  pricePerUnit?: number | null | undefined;
@@ -344,6 +363,14 @@ export declare const PatchOffering: z.ZodObject<{
344
363
  escrowAgreementFileId?: string | null | undefined;
345
364
  bankAccountId?: string | null | undefined;
346
365
  escrowAccountId?: string | null | undefined;
366
+ warrantsEnabled?: boolean | undefined;
367
+ totalShares?: number | null | undefined;
368
+ warrantTermYears?: number | null | undefined;
369
+ exercisePrice?: number | null | undefined;
370
+ warrantPercentage?: number | null | undefined;
371
+ calculationMethod?: WarrantSharesCalculationMethod | null | undefined;
372
+ incrementThreshold?: number | null | undefined;
373
+ shareClassId?: string | null | undefined;
347
374
  assetName?: string | undefined;
348
375
  assetType?: AssetType | undefined;
349
376
  pricePerUnit?: number | null | undefined;
@@ -365,6 +392,48 @@ export declare const PatchOffering: z.ZodObject<{
365
392
  jointSubscriptionAgreementTemplateId?: string | null | undefined;
366
393
  }>;
367
394
  export type PatchOffering = z.infer<typeof PatchOffering>;
395
+ /**
396
+ * Optional params for resolveAndValidateOfferingUpdateFields.
397
+ * All fields are optional and nullable; resolution merges with offering/asset values.
398
+ */
399
+ export declare const ResolveOfferingUpdateFieldsParamsZod: z.ZodObject<{
400
+ minInvestment: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
401
+ maxInvestment: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
402
+ targetAmount: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
403
+ pricePerUnit: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
404
+ }, "strip", z.ZodTypeAny, {
405
+ targetAmount?: number | null | undefined;
406
+ minInvestment?: number | null | undefined;
407
+ maxInvestment?: number | null | undefined;
408
+ pricePerUnit?: number | null | undefined;
409
+ }, {
410
+ targetAmount?: number | null | undefined;
411
+ minInvestment?: number | null | undefined;
412
+ maxInvestment?: number | null | undefined;
413
+ pricePerUnit?: number | null | undefined;
414
+ }>;
415
+ export type ResolveOfferingUpdateFieldsParams = z.infer<typeof ResolveOfferingUpdateFieldsParamsZod>;
416
+ /**
417
+ * Resolved, validated offering update fields (price per unit, target amount, min/max investment).
418
+ * Returned by resolveAndValidateOfferingUpdateFields and passed into validateBonusTiersForUpdate.
419
+ */
420
+ export declare const ResolvedOfferingUpdateFieldsZod: z.ZodObject<{
421
+ pricePerUnit: z.ZodNumber;
422
+ targetAmount: z.ZodNumber;
423
+ minInvestment: z.ZodNullable<z.ZodNumber>;
424
+ maxInvestment: z.ZodNullable<z.ZodNumber>;
425
+ }, "strip", z.ZodTypeAny, {
426
+ targetAmount: number;
427
+ minInvestment: number | null;
428
+ maxInvestment: number | null;
429
+ pricePerUnit: number;
430
+ }, {
431
+ targetAmount: number;
432
+ minInvestment: number | null;
433
+ maxInvestment: number | null;
434
+ pricePerUnit: number;
435
+ }>;
436
+ export type ResolvedOfferingUpdateFields = z.infer<typeof ResolvedOfferingUpdateFieldsZod>;
368
437
  export declare const PostComplianceOffering: z.ZodEffects<z.ZodObject<{
369
438
  name: z.ZodOptional<z.ZodString>;
370
439
  description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -412,6 +481,7 @@ export declare const PostComplianceOffering: z.ZodEffects<z.ZodObject<{
412
481
  } & {
413
482
  accountId: z.ZodLazy<z.ZodEffects<z.ZodString, string, string>>;
414
483
  managedBy: z.ZodOptional<z.ZodNativeEnum<typeof ManagedByType>>;
484
+ shareClassId: z.ZodOptional<z.ZodNullable<z.ZodLazy<z.ZodEffects<z.ZodString, string, string>>>>;
415
485
  assetName: z.ZodString;
416
486
  assetType: z.ZodNativeEnum<typeof AssetType>;
417
487
  pricePerUnit: z.ZodNullable<z.ZodNumber>;
@@ -462,10 +532,18 @@ export declare const PostComplianceOffering: z.ZodEffects<z.ZodObject<{
462
532
  startAmount: number;
463
533
  endAmount: number;
464
534
  }>, "many">>;
535
+ warrantsEnabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
536
+ totalShares: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
537
+ warrantTermYears: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
538
+ exercisePrice: z.ZodOptional<z.ZodNullable<z.ZodEffects<z.ZodNumber, number, number>>>;
539
+ warrantPercentage: z.ZodOptional<z.ZodNullable<z.ZodEffects<z.ZodNumber, number, number>>>;
540
+ calculationMethod: z.ZodOptional<z.ZodNullable<z.ZodNativeEnum<typeof WarrantSharesCalculationMethod>>>;
541
+ incrementThreshold: z.ZodOptional<z.ZodNullable<z.ZodEffects<z.ZodNumber, number, number>>>;
465
542
  }, "strip", z.ZodTypeAny, {
466
543
  accountId: string;
467
544
  template: AssetTemplateType;
468
545
  platformSettings: string | null;
546
+ warrantsEnabled: boolean;
469
547
  assetName: string;
470
548
  assetType: AssetType;
471
549
  pricePerUnit: number | null;
@@ -493,6 +571,13 @@ export declare const PostComplianceOffering: z.ZodEffects<z.ZodObject<{
493
571
  hasEscrow?: boolean | undefined;
494
572
  bankAccountId?: string | null | undefined;
495
573
  escrowAccountId?: string | null | undefined;
574
+ totalShares?: number | null | undefined;
575
+ warrantTermYears?: number | null | undefined;
576
+ exercisePrice?: number | null | undefined;
577
+ warrantPercentage?: number | null | undefined;
578
+ calculationMethod?: WarrantSharesCalculationMethod | null | undefined;
579
+ incrementThreshold?: number | null | undefined;
580
+ shareClassId?: string | null | undefined;
496
581
  yield?: number | null | undefined;
497
582
  duration?: number | null | undefined;
498
583
  durationType?: DurationType | null | undefined;
@@ -544,6 +629,14 @@ export declare const PostComplianceOffering: z.ZodEffects<z.ZodObject<{
544
629
  hasEscrow?: boolean | undefined;
545
630
  bankAccountId?: string | null | undefined;
546
631
  escrowAccountId?: string | null | undefined;
632
+ warrantsEnabled?: boolean | undefined;
633
+ totalShares?: number | null | undefined;
634
+ warrantTermYears?: number | null | undefined;
635
+ exercisePrice?: number | null | undefined;
636
+ warrantPercentage?: number | null | undefined;
637
+ calculationMethod?: WarrantSharesCalculationMethod | null | undefined;
638
+ incrementThreshold?: number | null | undefined;
639
+ shareClassId?: string | null | undefined;
547
640
  yield?: number | null | undefined;
548
641
  duration?: number | null | undefined;
549
642
  durationType?: DurationType | null | undefined;
@@ -563,6 +656,7 @@ export declare const PostComplianceOffering: z.ZodEffects<z.ZodObject<{
563
656
  accountId: string;
564
657
  template: AssetTemplateType;
565
658
  platformSettings: string | null;
659
+ warrantsEnabled: boolean;
566
660
  assetName: string;
567
661
  assetType: AssetType;
568
662
  pricePerUnit: number | null;
@@ -590,6 +684,13 @@ export declare const PostComplianceOffering: z.ZodEffects<z.ZodObject<{
590
684
  hasEscrow?: boolean | undefined;
591
685
  bankAccountId?: string | null | undefined;
592
686
  escrowAccountId?: string | null | undefined;
687
+ totalShares?: number | null | undefined;
688
+ warrantTermYears?: number | null | undefined;
689
+ exercisePrice?: number | null | undefined;
690
+ warrantPercentage?: number | null | undefined;
691
+ calculationMethod?: WarrantSharesCalculationMethod | null | undefined;
692
+ incrementThreshold?: number | null | undefined;
693
+ shareClassId?: string | null | undefined;
593
694
  yield?: number | null | undefined;
594
695
  duration?: number | null | undefined;
595
696
  durationType?: DurationType | null | undefined;
@@ -641,6 +742,14 @@ export declare const PostComplianceOffering: z.ZodEffects<z.ZodObject<{
641
742
  hasEscrow?: boolean | undefined;
642
743
  bankAccountId?: string | null | undefined;
643
744
  escrowAccountId?: string | null | undefined;
745
+ warrantsEnabled?: boolean | undefined;
746
+ totalShares?: number | null | undefined;
747
+ warrantTermYears?: number | null | undefined;
748
+ exercisePrice?: number | null | undefined;
749
+ warrantPercentage?: number | null | undefined;
750
+ calculationMethod?: WarrantSharesCalculationMethod | null | undefined;
751
+ incrementThreshold?: number | null | undefined;
752
+ shareClassId?: string | null | undefined;
644
753
  yield?: number | null | undefined;
645
754
  duration?: number | null | undefined;
646
755
  durationType?: DurationType | null | undefined;
@@ -658,7 +767,7 @@ export declare const PostComplianceOffering: z.ZodEffects<z.ZodObject<{
658
767
  jointSubscriptionAgreementTemplateId?: string | null | undefined;
659
768
  }>;
660
769
  export type PostComplianceOffering = z.infer<typeof PostComplianceOffering>;
661
- export declare const offeringsInclude: z.ZodEnum<["account", "issuer", "trades", "assets", "disbursements", "draftVersion", "publishedVersion", "revisions", "onboardingReviewedBy", "bankAccount", "escrowAccount"]>;
770
+ export declare const offeringsInclude: z.ZodEnum<["account", "issuer", "trades", "assets", "disbursements", "draftVersion", "publishedVersion", "revisions", "onboardingReviewedBy", "bankAccount", "escrowAccount", "shareClass"]>;
662
771
  /**
663
772
  * @description Query parameters for including related entities
664
773
  * @xample in contract us as -> query: z.object({}).merge(UsersIncludeQuery),
@@ -1196,6 +1305,7 @@ export declare const PatchComplianceOffering: z.ZodEffects<z.ZodIntersection<z.Z
1196
1305
  cancellationPeriod: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
1197
1306
  showTotalRaised: z.ZodOptional<z.ZodBoolean>;
1198
1307
  issuerId: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
1308
+ shareClassId: z.ZodOptional<z.ZodNullable<z.ZodLazy<z.ZodEffects<z.ZodString, string, string>>>>;
1199
1309
  } & {
1200
1310
  assetName: z.ZodOptional<z.ZodString>;
1201
1311
  assetType: z.ZodOptional<z.ZodNativeEnum<typeof AssetType>>;
@@ -1248,6 +1358,13 @@ export declare const PatchComplianceOffering: z.ZodEffects<z.ZodIntersection<z.Z
1248
1358
  bankAccountId: z.ZodOptional<z.ZodNullable<z.ZodLazy<z.ZodEffects<z.ZodString, string, string>>>>;
1249
1359
  escrowAccountId: z.ZodOptional<z.ZodNullable<z.ZodLazy<z.ZodEffects<z.ZodString, string, string>>>>;
1250
1360
  escrowAgreementFileId: z.ZodOptional<z.ZodNullable<z.ZodLazy<z.ZodEffects<z.ZodString, string, string>>>>;
1361
+ warrantsEnabled: z.ZodOptional<z.ZodBoolean>;
1362
+ totalShares: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1363
+ warrantTermYears: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1364
+ exercisePrice: z.ZodOptional<z.ZodNullable<z.ZodEffects<z.ZodNumber, number, number>>>;
1365
+ warrantPercentage: z.ZodOptional<z.ZodNullable<z.ZodEffects<z.ZodNumber, number, number>>>;
1366
+ calculationMethod: z.ZodOptional<z.ZodNullable<z.ZodNativeEnum<typeof WarrantSharesCalculationMethod>>>;
1367
+ incrementThreshold: z.ZodOptional<z.ZodNullable<z.ZodEffects<z.ZodNumber, number, number>>>;
1251
1368
  }, "strip", z.ZodTypeAny, {
1252
1369
  platformSettings: string | null;
1253
1370
  type?: OfferingType | undefined;
@@ -1275,6 +1392,14 @@ export declare const PatchComplianceOffering: z.ZodEffects<z.ZodIntersection<z.Z
1275
1392
  escrowAgreementFileId?: string | null | undefined;
1276
1393
  bankAccountId?: string | null | undefined;
1277
1394
  escrowAccountId?: string | null | undefined;
1395
+ warrantsEnabled?: boolean | undefined;
1396
+ totalShares?: number | null | undefined;
1397
+ warrantTermYears?: number | null | undefined;
1398
+ exercisePrice?: number | null | undefined;
1399
+ warrantPercentage?: number | null | undefined;
1400
+ calculationMethod?: WarrantSharesCalculationMethod | null | undefined;
1401
+ incrementThreshold?: number | null | undefined;
1402
+ shareClassId?: string | null | undefined;
1278
1403
  assetName?: string | undefined;
1279
1404
  assetType?: AssetType | undefined;
1280
1405
  pricePerUnit?: number | null | undefined;
@@ -1326,6 +1451,14 @@ export declare const PatchComplianceOffering: z.ZodEffects<z.ZodIntersection<z.Z
1326
1451
  escrowAgreementFileId?: string | null | undefined;
1327
1452
  bankAccountId?: string | null | undefined;
1328
1453
  escrowAccountId?: string | null | undefined;
1454
+ warrantsEnabled?: boolean | undefined;
1455
+ totalShares?: number | null | undefined;
1456
+ warrantTermYears?: number | null | undefined;
1457
+ exercisePrice?: number | null | undefined;
1458
+ warrantPercentage?: number | null | undefined;
1459
+ calculationMethod?: WarrantSharesCalculationMethod | null | undefined;
1460
+ incrementThreshold?: number | null | undefined;
1461
+ shareClassId?: string | null | undefined;
1329
1462
  assetName?: string | undefined;
1330
1463
  assetType?: AssetType | undefined;
1331
1464
  pricePerUnit?: number | null | undefined;
@@ -1603,6 +1736,14 @@ export declare const PatchComplianceOffering: z.ZodEffects<z.ZodIntersection<z.Z
1603
1736
  escrowAgreementFileId?: string | null | undefined;
1604
1737
  bankAccountId?: string | null | undefined;
1605
1738
  escrowAccountId?: string | null | undefined;
1739
+ warrantsEnabled?: boolean | undefined;
1740
+ totalShares?: number | null | undefined;
1741
+ warrantTermYears?: number | null | undefined;
1742
+ exercisePrice?: number | null | undefined;
1743
+ warrantPercentage?: number | null | undefined;
1744
+ calculationMethod?: WarrantSharesCalculationMethod | null | undefined;
1745
+ incrementThreshold?: number | null | undefined;
1746
+ shareClassId?: string | null | undefined;
1606
1747
  assetName?: string | undefined;
1607
1748
  assetType?: AssetType | undefined;
1608
1749
  pricePerUnit?: number | null | undefined;
@@ -1665,6 +1806,14 @@ export declare const PatchComplianceOffering: z.ZodEffects<z.ZodIntersection<z.Z
1665
1806
  escrowAgreementFileId?: string | null | undefined;
1666
1807
  bankAccountId?: string | null | undefined;
1667
1808
  escrowAccountId?: string | null | undefined;
1809
+ warrantsEnabled?: boolean | undefined;
1810
+ totalShares?: number | null | undefined;
1811
+ warrantTermYears?: number | null | undefined;
1812
+ exercisePrice?: number | null | undefined;
1813
+ warrantPercentage?: number | null | undefined;
1814
+ calculationMethod?: WarrantSharesCalculationMethod | null | undefined;
1815
+ incrementThreshold?: number | null | undefined;
1816
+ shareClassId?: string | null | undefined;
1668
1817
  assetName?: string | undefined;
1669
1818
  assetType?: AssetType | undefined;
1670
1819
  pricePerUnit?: number | null | undefined;
@@ -2418,6 +2567,7 @@ export type OfferingUpdateFields = {
2418
2567
  managedBy?: ManagedByType | null;
2419
2568
  showTotalRaised?: boolean;
2420
2569
  enabled?: boolean;
2570
+ shareClassId?: string | null;
2421
2571
  };
2422
2572
  export declare const ReviewOfferingOnboarding: z.ZodObject<{
2423
2573
  onboardingStatus: z.ZodNativeEnum<typeof OfferingOnboardingStatus>;
@@ -2613,3 +2763,84 @@ export declare const EscrowValidationContextZod: z.ZodObject<{
2613
2763
  currentEscrowAgreementFileId: string | null;
2614
2764
  }>;
2615
2765
  export type EscrowValidationContext = z.infer<typeof EscrowValidationContextZod>;
2766
+ /**
2767
+ * Shape of warrant fields shared by Offering and OfferingRevision for validation.
2768
+ */
2769
+ export declare const WarrantSharesBaseZod: z.ZodObject<{
2770
+ warrantsEnabled: z.ZodBoolean;
2771
+ totalShares: z.ZodNullable<z.ZodNumber>;
2772
+ warrantTermYears: z.ZodNullable<z.ZodNumber>;
2773
+ exercisePrice: z.ZodNullable<z.ZodNumber>;
2774
+ warrantPercentage: z.ZodNullable<z.ZodNumber>;
2775
+ calculationMethod: z.ZodNullable<z.ZodNativeEnum<typeof WarrantSharesCalculationMethod>>;
2776
+ incrementThreshold: z.ZodNullable<z.ZodNumber>;
2777
+ fullyDilutedShares: z.ZodNullable<z.ZodNumber>;
2778
+ }, "strip", z.ZodTypeAny, {
2779
+ warrantsEnabled: boolean;
2780
+ totalShares: number | null;
2781
+ warrantTermYears: number | null;
2782
+ exercisePrice: number | null;
2783
+ warrantPercentage: number | null;
2784
+ calculationMethod: WarrantSharesCalculationMethod | null;
2785
+ incrementThreshold: number | null;
2786
+ fullyDilutedShares: number | null;
2787
+ }, {
2788
+ warrantsEnabled: boolean;
2789
+ totalShares: number | null;
2790
+ warrantTermYears: number | null;
2791
+ exercisePrice: number | null;
2792
+ warrantPercentage: number | null;
2793
+ calculationMethod: WarrantSharesCalculationMethod | null;
2794
+ incrementThreshold: number | null;
2795
+ fullyDilutedShares: number | null;
2796
+ }>;
2797
+ export type WarrantSharesBase = z.infer<typeof WarrantSharesBaseZod>;
2798
+ /**
2799
+ * All warrant field keys used when picking warrant data from base or patch.
2800
+ */
2801
+ export declare const WARRANT_FIELD_KEYS: (keyof WarrantSharesBase)[];
2802
+ /**
2803
+ * Warrant field keys required when enabling warrants (turning warrants on).
2804
+ */
2805
+ export declare const WARRANT_REQUIRED_WHEN_ENABLED_KEYS: (keyof WarrantSharesBase)[];
2806
+ /**
2807
+ * Patch input for warrant validation (optional warrant fields from PATCH body).
2808
+ */
2809
+ export declare const WarrantValidationDataZod: z.ZodObject<{
2810
+ warrantsEnabled: z.ZodOptional<z.ZodBoolean>;
2811
+ totalShares: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2812
+ warrantTermYears: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2813
+ exercisePrice: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2814
+ warrantPercentage: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2815
+ calculationMethod: z.ZodOptional<z.ZodNullable<z.ZodNativeEnum<typeof WarrantSharesCalculationMethod>>>;
2816
+ incrementThreshold: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2817
+ fullyDilutedShares: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2818
+ }, "strip", z.ZodTypeAny, {
2819
+ warrantsEnabled?: boolean | undefined;
2820
+ totalShares?: number | null | undefined;
2821
+ warrantTermYears?: number | null | undefined;
2822
+ exercisePrice?: number | null | undefined;
2823
+ warrantPercentage?: number | null | undefined;
2824
+ calculationMethod?: WarrantSharesCalculationMethod | null | undefined;
2825
+ incrementThreshold?: number | null | undefined;
2826
+ fullyDilutedShares?: number | null | undefined;
2827
+ }, {
2828
+ warrantsEnabled?: boolean | undefined;
2829
+ totalShares?: number | null | undefined;
2830
+ warrantTermYears?: number | null | undefined;
2831
+ exercisePrice?: number | null | undefined;
2832
+ warrantPercentage?: number | null | undefined;
2833
+ calculationMethod?: WarrantSharesCalculationMethod | null | undefined;
2834
+ incrementThreshold?: number | null | undefined;
2835
+ fullyDilutedShares?: number | null | undefined;
2836
+ }>;
2837
+ export type WarrantValidationData = z.infer<typeof WarrantValidationDataZod>;
2838
+ /**
2839
+ * Validated warrant payload to persist on revision and offering.
2840
+ */
2841
+ export type WarrantValidationResult = WarrantSharesBase;
2842
+ /**
2843
+ * Warrant-related fields to reset (nullify) when warrants are disabled.
2844
+ * Used when warrantsEnabled is set to false so revision and offering stay in sync.
2845
+ */
2846
+ export declare const WARRANT_DISABLED_FIELD_RESETS: WarrantValidationResult;
@@ -2,12 +2,13 @@ import { extendZodWithOpenApi } from '@anatine/zod-openapi';
2
2
  import { TypeID } from 'typeid-js';
3
3
  import { z } from 'zod';
4
4
  import { accountIdSchema } from './account.types.js';
5
- import { AccountZod, ComplianceReview, dateSchema, IPaginationMeta, OfferingType, ManagedByType, PaginationOptionsZod, UrlSchema, SortOrder, SortBy, OfferingVersioningType, OfferingOnboardingStatus, AssetType, DurationType, StringToBooleanSchema, HttpMethod, } from './common.types.js';
5
+ import { capShareClassIdSchema } from './cap-table.types.js';
6
+ import { AccountZod, ComplianceReview, dateSchema, IPaginationMeta, OfferingType, ManagedByType, PaginationOptionsZod, UrlSchema, SortOrder, SortBy, OfferingVersioningType, OfferingOnboardingStatus, AssetType, DurationType, StringToBooleanSchema, HttpMethod, numberPrecisionSchema, WarrantSharesCalculationMethod, } from './common.types.js';
6
7
  import { IBaseEntity } from './entity.types.js';
7
8
  import { fileIdSchema, FileZod } from './file.types.js';
8
9
  import { IIssuer, issuerIdSchema } from './issuer.types.js';
9
10
  import { InvestorsOfferingFiltersZod, InvestorsOfferingsIncludeQuery, } from './investors-offering.types.js';
10
- import { OfferingStatus, escrowValidationRefinement, postOfferingRefinement, } from './issuer-offering.types.js';
11
+ import { OfferingStatus, escrowValidationRefinement, postOfferingRefinement, warrantsValidationRefinement, } from './issuer-offering.types.js';
11
12
  import { postAssetRefinement, AssetTemplateType } from './asset.types.js';
12
13
  import { IIssuerBankAccount, issuerBankAccountIdSchema, } from './issuer-bank-account.types.js';
13
14
  import { escrowAccountIdSchema, IEscrowAccount } from './escrow-account.types.js';
@@ -97,6 +98,18 @@ export const IOffering = IBaseEntity.extend({
97
98
  .lazy(() => IEscrowAccount)
98
99
  .nullable()
99
100
  .optional(),
101
+ warrantsEnabled: z.boolean().optional(),
102
+ totalShares: z.number().nullable().optional(),
103
+ warrantTermYears: z.number().nullable().optional(),
104
+ exercisePrice: z.number().nullable().optional(),
105
+ warrantPercentage: z.number().nullable().optional(),
106
+ calculationMethod: z
107
+ .nativeEnum(WarrantSharesCalculationMethod)
108
+ .nullable()
109
+ .optional(),
110
+ incrementThreshold: z.number().nullable().optional(),
111
+ fullyDilutedShares: z.number().nullable().optional(),
112
+ shareClassId: z.string().nullable().optional(),
100
113
  });
101
114
  export const IPaginatedOffering = z.object({
102
115
  items: z.array(IOffering),
@@ -156,9 +169,13 @@ export const PatchOfferingBase = z.object({
156
169
  .nullable()
157
170
  .optional(),
158
171
  jointSubscriptionAgreementTemplateId: z.string().optional().nullable(),
159
- cancellationPeriod: z.number().min(2).max(5).optional().nullable(),
172
+ cancellationPeriod: z.number().min(1).max(30).optional().nullable(),
160
173
  showTotalRaised: z.boolean().optional(),
161
174
  issuerId: issuerIdSchema.optional(),
175
+ shareClassId: z
176
+ .lazy(() => capShareClassIdSchema)
177
+ .nullable()
178
+ .optional(),
162
179
  });
163
180
  export const PatchOffering = PatchOfferingBase.merge(z.object({
164
181
  assetName: z
@@ -233,10 +250,69 @@ export const PatchOffering = PatchOfferingBase.merge(z.object({
233
250
  .lazy(() => fileIdSchema)
234
251
  .nullable()
235
252
  .optional(),
253
+ warrantsEnabled: z.boolean().optional().openapi({ example: false }),
254
+ totalShares: z
255
+ .number()
256
+ .int()
257
+ .positive()
258
+ .max(10000000000)
259
+ .nullable()
260
+ .optional()
261
+ .openapi({ example: 1000 }),
262
+ warrantTermYears: z
263
+ .number()
264
+ .int()
265
+ .positive()
266
+ .max(10000000000)
267
+ .nullable()
268
+ .optional()
269
+ .openapi({ example: 10 }),
270
+ exercisePrice: numberPrecisionSchema(2, z.number().min(0.01).max(10000000000))
271
+ .nullable()
272
+ .optional()
273
+ .openapi({ example: 100 }),
274
+ warrantPercentage: numberPrecisionSchema(2, z.number().positive().max(100))
275
+ .nullable()
276
+ .optional()
277
+ .openapi({ example: 10 }),
278
+ calculationMethod: z
279
+ .nativeEnum(WarrantSharesCalculationMethod)
280
+ .nullable()
281
+ .optional()
282
+ .openapi({ example: WarrantSharesCalculationMethod.NONE }),
283
+ incrementThreshold: numberPrecisionSchema(2, z.number().min(0.01).max(10000000000))
284
+ .nullable()
285
+ .optional()
286
+ .openapi({ example: 10 }),
236
287
  }));
288
+ /**
289
+ * Optional params for resolveAndValidateOfferingUpdateFields.
290
+ * All fields are optional and nullable; resolution merges with offering/asset values.
291
+ */
292
+ export const ResolveOfferingUpdateFieldsParamsZod = z.object({
293
+ minInvestment: z.number().nullable().optional(),
294
+ maxInvestment: z.number().nullable().optional(),
295
+ targetAmount: z.number().nullable().optional(),
296
+ pricePerUnit: z.number().nullable().optional(),
297
+ });
298
+ /**
299
+ * Resolved, validated offering update fields (price per unit, target amount, min/max investment).
300
+ * Returned by resolveAndValidateOfferingUpdateFields and passed into validateBonusTiersForUpdate.
301
+ */
302
+ export const ResolvedOfferingUpdateFieldsZod = z.object({
303
+ pricePerUnit: z.number(),
304
+ targetAmount: z.number(),
305
+ minInvestment: z.number().nullable(),
306
+ maxInvestment: z.number().nullable(),
307
+ });
237
308
  export const PostComplianceOffering = PatchOfferingBase.merge(z.object({
238
309
  accountId: z.lazy(() => accountIdSchema),
239
310
  managedBy: z.nativeEnum(ManagedByType).optional(),
311
+ shareClassId: z
312
+ .lazy(() => capShareClassIdSchema)
313
+ .nullable()
314
+ .optional()
315
+ .openapi({ example: 'cap_table_share_class_01j1xgme...' }),
240
316
  assetName: z.string().min(2).max(50).openapi({ example: 'Asset name' }),
241
317
  assetType: z.nativeEnum(AssetType).openapi({ example: AssetType.STOCK }),
242
318
  pricePerUnit: z
@@ -293,11 +369,50 @@ export const PostComplianceOffering = PatchOfferingBase.merge(z.object({
293
369
  .optional()
294
370
  .openapi({ example: 10 }),
295
371
  bonusTiers: BonusTierListZod.optional(),
372
+ warrantsEnabled: z
373
+ .boolean()
374
+ .optional()
375
+ .default(false)
376
+ .openapi({ example: false }),
377
+ totalShares: z
378
+ .number()
379
+ .int()
380
+ .positive()
381
+ .max(10000000000)
382
+ .nullable()
383
+ .optional()
384
+ .openapi({ example: 1000 }),
385
+ warrantTermYears: z
386
+ .number()
387
+ .int()
388
+ .positive()
389
+ .max(10000000000)
390
+ .nullable()
391
+ .optional()
392
+ .openapi({ example: 10 }),
393
+ exercisePrice: numberPrecisionSchema(2, z.number().min(0.01).max(10000000000))
394
+ .nullable()
395
+ .optional()
396
+ .openapi({ example: 100 }),
397
+ warrantPercentage: numberPrecisionSchema(2, z.number().positive().max(100))
398
+ .nullable()
399
+ .optional()
400
+ .openapi({ example: 10 }),
401
+ calculationMethod: z
402
+ .nativeEnum(WarrantSharesCalculationMethod)
403
+ .nullable()
404
+ .optional()
405
+ .openapi({ example: WarrantSharesCalculationMethod.NONE }),
406
+ incrementThreshold: numberPrecisionSchema(2, z.number().min(0.01).max(10000000000))
407
+ .nullable()
408
+ .optional()
409
+ .openapi({ example: 10 }),
296
410
  })).superRefine((data, ctx) => {
297
411
  postOfferingRefinement(data, ctx);
298
412
  postAssetRefinement(data, ctx);
299
413
  escrowValidationRefinement(data, ctx, HttpMethod.POST);
300
414
  postBonusTierRefinement(data, ctx);
415
+ warrantsValidationRefinement(data, ctx);
301
416
  });
302
417
  export const offeringsInclude = z.enum([
303
418
  'account',
@@ -311,6 +426,7 @@ export const offeringsInclude = z.enum([
311
426
  'onboardingReviewedBy',
312
427
  'bankAccount',
313
428
  'escrowAccount',
429
+ 'shareClass',
314
430
  ]);
315
431
  /**
316
432
  * @description Query parameters for including related entities
@@ -599,4 +715,70 @@ export const EscrowValidationContextZod = z.object({
599
715
  currentEscrowAccountId: z.string().nullable(),
600
716
  currentEscrowAgreementFileId: z.string().nullable(),
601
717
  });
718
+ /**
719
+ * Shape of warrant fields shared by Offering and OfferingRevision for validation.
720
+ */
721
+ export const WarrantSharesBaseZod = z.object({
722
+ warrantsEnabled: z.boolean(),
723
+ totalShares: z.number().nullable(),
724
+ warrantTermYears: z.number().nullable(),
725
+ exercisePrice: z.number().nullable(),
726
+ warrantPercentage: z.number().nullable(),
727
+ calculationMethod: z.nativeEnum(WarrantSharesCalculationMethod).nullable(),
728
+ incrementThreshold: z.number().nullable(),
729
+ fullyDilutedShares: z.number().nullable(),
730
+ });
731
+ /**
732
+ * All warrant field keys used when picking warrant data from base or patch.
733
+ */
734
+ export const WARRANT_FIELD_KEYS = [
735
+ 'warrantsEnabled',
736
+ 'totalShares',
737
+ 'warrantTermYears',
738
+ 'exercisePrice',
739
+ 'warrantPercentage',
740
+ 'calculationMethod',
741
+ 'incrementThreshold',
742
+ 'fullyDilutedShares',
743
+ ];
744
+ /**
745
+ * Warrant field keys required when enabling warrants (turning warrants on).
746
+ */
747
+ export const WARRANT_REQUIRED_WHEN_ENABLED_KEYS = [
748
+ 'totalShares',
749
+ 'warrantTermYears',
750
+ 'exercisePrice',
751
+ 'warrantPercentage',
752
+ 'calculationMethod',
753
+ ];
754
+ /**
755
+ * Patch input for warrant validation (optional warrant fields from PATCH body).
756
+ */
757
+ export const WarrantValidationDataZod = z.object({
758
+ warrantsEnabled: z.boolean().optional(),
759
+ totalShares: z.number().nullable().optional(),
760
+ warrantTermYears: z.number().nullable().optional(),
761
+ exercisePrice: z.number().nullable().optional(),
762
+ warrantPercentage: z.number().nullable().optional(),
763
+ calculationMethod: z
764
+ .nativeEnum(WarrantSharesCalculationMethod)
765
+ .nullable()
766
+ .optional(),
767
+ incrementThreshold: z.number().nullable().optional(),
768
+ fullyDilutedShares: z.number().nullable().optional(),
769
+ });
770
+ /**
771
+ * Warrant-related fields to reset (nullify) when warrants are disabled.
772
+ * Used when warrantsEnabled is set to false so revision and offering stay in sync.
773
+ */
774
+ export const WARRANT_DISABLED_FIELD_RESETS = {
775
+ warrantsEnabled: false,
776
+ totalShares: null,
777
+ warrantTermYears: null,
778
+ exercisePrice: null,
779
+ warrantPercentage: null,
780
+ calculationMethod: null,
781
+ incrementThreshold: null,
782
+ fullyDilutedShares: null,
783
+ };
602
784
  //# sourceMappingURL=offering.types.js.map