@degenerate/generic 0.2.6 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (162) hide show
  1. package/dist/application/audit-log/additional-ids/create-audit-log-additional-ids-with-query.d.ts.map +1 -1
  2. package/dist/application/audit-log/additional-ids/create-multiple-path-alai.d.ts.map +1 -1
  3. package/dist/application/audit-log/additional-ids/create-query-audit-log-for-alai.d.ts.map +1 -1
  4. package/dist/application/audit-log/create-application-audit-log.d.ts.map +1 -1
  5. package/dist/application/audit-log/create-application-audit-log.js +1 -1
  6. package/dist/application/database/firestore/generics/add-items-to-database.d.ts.map +1 -1
  7. package/dist/application/database/firestore/generics/add-items-to-database.js +2 -2
  8. package/dist/application/database/firestore/generics/add-or-update-items-to-database.d.ts.map +1 -1
  9. package/dist/application/database/firestore/generics/add-or-update-items-to-database.js +3 -3
  10. package/dist/application/database/firestore/generics/create-database-change-information.d.ts.map +1 -1
  11. package/dist/application/database/firestore/generics/delete-items-on-database.d.ts.map +1 -1
  12. package/dist/application/database/firestore/generics/delete-items-on-database.js +2 -2
  13. package/dist/application/database/firestore/generics/get-item-from-database.d.ts.map +1 -1
  14. package/dist/application/database/firestore/generics/get-item-from-database.js +2 -2
  15. package/dist/application/database/firestore/generics/get-items-different-path-on-database.d.ts.map +1 -1
  16. package/dist/application/database/firestore/generics/get-items-different-path-on-database.js +2 -2
  17. package/dist/application/database/firestore/generics/get-items-from-database.d.ts.map +1 -1
  18. package/dist/application/database/firestore/generics/get-items-from-database.js +1 -1
  19. package/dist/application/database/firestore/generics/update-items-on-database.d.ts.map +1 -1
  20. package/dist/application/database/firestore/generics/update-items-on-database.js +2 -2
  21. package/dist/application/database/firestore/generics/update-items-properties-on-database.d.ts.map +1 -1
  22. package/dist/application/database/firestore/generics/update-items-properties-on-database.js +2 -2
  23. package/dist/authorization/index.d.ts +1 -0
  24. package/dist/authorization/index.d.ts.map +1 -1
  25. package/dist/authorization/index.js +1 -0
  26. package/dist/authorization/jwt/keys/create-public-key-pem.d.ts.map +1 -1
  27. package/dist/authorization/jwt/keys/create-secret-key-pem.d.ts.map +1 -1
  28. package/dist/authorization/jwt/sign/create-authorization-issuer.d.ts.map +1 -1
  29. package/dist/authorization/jwt/sign/create-authorization-subject.d.ts.map +1 -1
  30. package/dist/authorization/jwt/sign/create-jwt-options.d.ts +7 -1
  31. package/dist/authorization/jwt/sign/create-jwt-options.d.ts.map +1 -1
  32. package/dist/authorization/jwt/sign/create-jwt-signed-token.d.ts.map +1 -1
  33. package/dist/authorization/jwt/transform/transform-token-payload-to-safe-payload.d.ts.map +1 -1
  34. package/dist/authorization/jwt/verify/get-decoded-jwt-header.d.ts.map +1 -1
  35. package/dist/authorization/jwt/verify/get-decoded-jwt-signed-token-payload.d.ts.map +1 -1
  36. package/dist/authorization/jwt/verify/verify-jwt-signed-token.d.ts.map +1 -1
  37. package/dist/authorization/safe/request/decode-bearer-token.d.ts.map +1 -1
  38. package/dist/authorization/safe/request/decode-safe-request.d.ts.map +1 -1
  39. package/dist/authorization/safe/request/determine-issuer-from-request.d.ts.map +1 -1
  40. package/dist/authorization/safe/request/issuer/determine-issuer-from-bearer-token.d.ts.map +1 -1
  41. package/dist/authorization/safe/request/verify-jwt-bearer-token-for-audience.d.ts +31 -0
  42. package/dist/authorization/safe/request/verify-jwt-bearer-token-for-audience.d.ts.map +1 -0
  43. package/dist/authorization/safe/request/verify-jwt-bearer-token-for-audience.js +50 -0
  44. package/dist/authorization/safe/validation/jwt/payload/verify-authorization-audience.d.ts.map +1 -1
  45. package/dist/authorization/safe/validation/jwt/payload/verify-authorization-expiration-time.d.ts.map +1 -1
  46. package/dist/authorization/safe/validation/jwt/payload/verify-authorization-issued-at-time.d.ts.map +1 -1
  47. package/dist/authorization/safe/validation/jwt/payload/verify-authorization-issuer.d.ts.map +1 -1
  48. package/dist/authorization/safe/validation/jwt/payload/verify-authorization-not-before-time.d.ts.map +1 -1
  49. package/dist/authorization/safe/validation/jwt/payload/verify-authorization-subject.d.ts.map +1 -1
  50. package/dist/authorization/safe/validation/jwt/verify-token-header.d.ts.map +1 -1
  51. package/dist/authorization/safe/validation/jwt/verify-token-payload.d.ts.map +1 -1
  52. package/dist/crypto/calculate-combined-hash.d.ts.map +1 -1
  53. package/dist/crypto/calculate-hash.d.ts +1 -1
  54. package/dist/crypto/calculate-hash.d.ts.map +1 -1
  55. package/dist/crypto/calculate-hash.js +1 -1
  56. package/dist/crypto/index.d.ts +1 -0
  57. package/dist/crypto/index.d.ts.map +1 -1
  58. package/dist/crypto/index.js +1 -0
  59. package/dist/crypto/private-public-keys/create-key-pair-from-mnemonic.d.ts.map +1 -1
  60. package/dist/crypto/private-public-keys/create-key-pair-from-private-key.d.ts.map +1 -1
  61. package/dist/crypto/private-public-keys/create-key-pair-from-private-key.js +1 -1
  62. package/dist/crypto/private-public-keys/create-key-pair-from-public-key.d.ts +11 -0
  63. package/dist/crypto/private-public-keys/create-key-pair-from-public-key.d.ts.map +1 -0
  64. package/dist/crypto/private-public-keys/create-key-pair-from-public-key.js +51 -0
  65. package/dist/crypto/private-public-keys/generation/create-entropy-for-elliptical-curve.d.ts.map +1 -1
  66. package/dist/crypto/private-public-keys/generation/generate-key-pair.d.ts.map +1 -1
  67. package/dist/crypto/private-public-keys/generation/get-private-public-key-from-keypair.d.ts.map +1 -1
  68. package/dist/crypto/signature/create-crypto-signature.d.ts +11 -0
  69. package/dist/crypto/signature/create-crypto-signature.d.ts.map +1 -1
  70. package/dist/crypto/signature/create-crypto-signature.js +14 -1
  71. package/dist/crypto/signature/verify-crypto-signature-by-data.d.ts +4 -0
  72. package/dist/crypto/signature/verify-crypto-signature-by-data.d.ts.map +1 -1
  73. package/dist/crypto/signature/verify-crypto-signature-by-data.js +8 -2
  74. package/dist/crypto/signature/verify-crypto-signature-by-hash.d.ts +4 -0
  75. package/dist/crypto/signature/verify-crypto-signature-by-hash.d.ts.map +1 -1
  76. package/dist/crypto/signature/verify-crypto-signature-by-hash.js +7 -1
  77. package/dist/errors/index.d.ts +2 -0
  78. package/dist/errors/index.d.ts.map +1 -1
  79. package/dist/errors/index.js +2 -0
  80. package/dist/errors/share-data/share-data-errors.d.ts +92 -1
  81. package/dist/errors/share-data/share-data-errors.d.ts.map +1 -1
  82. package/dist/errors/share-data/share-data-errors.js +130 -1
  83. package/dist/errors/shareblock/shareblock-errors.d.ts +40 -0
  84. package/dist/errors/shareblock/shareblock-errors.d.ts.map +1 -0
  85. package/dist/errors/shareblock/shareblock-errors.js +50 -0
  86. package/dist/errors/validation/crypto-validation-errors.d.ts +8 -0
  87. package/dist/errors/validation/crypto-validation-errors.d.ts.map +1 -0
  88. package/dist/errors/validation/crypto-validation-errors.js +15 -0
  89. package/dist/helpers/array/array-helpers.d.ts.map +1 -1
  90. package/dist/helpers/crypto/cryptography-helpers.d.ts.map +1 -1
  91. package/dist/helpers/data/data-helpers.d.ts.map +1 -1
  92. package/dist/helpers/file/file-helpers.d.ts.map +1 -1
  93. package/dist/helpers/id-helpers.d.ts.map +1 -1
  94. package/dist/helpers/lodash/lodash-helpers.d.ts.map +1 -1
  95. package/dist/helpers/object-helpers.d.ts.map +1 -1
  96. package/dist/helpers/object-validation-helpers.d.ts.map +1 -1
  97. package/dist/helpers/request/params-object-helpers.d.ts +6 -6
  98. package/dist/helpers/request/params-object-helpers.d.ts.map +1 -1
  99. package/dist/helpers/request/params-object-helpers.js +11 -11
  100. package/dist/helpers/request/query-object-helpers.d.ts.map +1 -1
  101. package/dist/helpers/request/request-object-helpers.d.ts.map +1 -1
  102. package/dist/models/application/audit-log/application-audit-log-models.d.ts +82 -92
  103. package/dist/models/application/audit-log/application-audit-log-models.d.ts.map +1 -1
  104. package/dist/models/application/database/firestore-models.d.ts +158 -307
  105. package/dist/models/application/database/firestore-models.d.ts.map +1 -1
  106. package/dist/models/authorization/authorization-models.d.ts +34 -44
  107. package/dist/models/authorization/authorization-models.d.ts.map +1 -1
  108. package/dist/models/authorization/authorization-models.js +2 -2
  109. package/dist/models/crypto/crypto-models.d.ts +1 -7
  110. package/dist/models/crypto/crypto-models.d.ts.map +1 -1
  111. package/dist/models/data/data-models.d.ts +27 -13
  112. package/dist/models/data/data-models.d.ts.map +1 -1
  113. package/dist/models/data/data-models.js +23 -2
  114. package/dist/models/dynamic-execution/dynamic-execution-models.d.ts +1 -9
  115. package/dist/models/dynamic-execution/dynamic-execution-models.d.ts.map +1 -1
  116. package/dist/models/events/share-event-models.d.ts +90 -119
  117. package/dist/models/events/share-event-models.d.ts.map +1 -1
  118. package/dist/models/events/share-event-models.js +34 -3
  119. package/dist/models/functions/share-data-function-models.d.ts +23 -193
  120. package/dist/models/functions/share-data-function-models.d.ts.map +1 -1
  121. package/dist/models/functions/share-data-function-models.js +1 -1
  122. package/dist/models/generic/request-response-models.d.ts +1 -7
  123. package/dist/models/generic/request-response-models.d.ts.map +1 -1
  124. package/dist/models/index.d.ts +7 -1
  125. package/dist/models/index.d.ts.map +1 -1
  126. package/dist/models/index.js +7 -1
  127. package/dist/models/rules/share-rule-models.d.ts +759 -1116
  128. package/dist/models/rules/share-rule-models.d.ts.map +1 -1
  129. package/dist/models/rules/share-rule-models.js +6 -6
  130. package/dist/models/safe/safe-transaction-models.d.ts +28 -30
  131. package/dist/models/safe/safe-transaction-models.d.ts.map +1 -1
  132. package/dist/models/safe/transactions/authorities-transactions-models.d.ts +77 -419
  133. package/dist/models/safe/transactions/authorities-transactions-models.d.ts.map +1 -1
  134. package/dist/models/safe/transactions/authorities-transactions-models.js +3 -3
  135. package/dist/models/safe/transactions/events-transactions-models.d.ts +89 -0
  136. package/dist/models/safe/transactions/events-transactions-models.d.ts.map +1 -0
  137. package/dist/models/safe/transactions/events-transactions-models.js +53 -0
  138. package/dist/models/safe/transactions/functions-transactions-models.d.ts +89 -0
  139. package/dist/models/safe/transactions/functions-transactions-models.d.ts.map +1 -0
  140. package/dist/models/safe/transactions/functions-transactions-models.js +53 -0
  141. package/dist/models/safe/transactions/rules-transactions-models.d.ts +59 -603
  142. package/dist/models/safe/transactions/rules-transactions-models.d.ts.map +1 -1
  143. package/dist/models/safe/transactions/sharedata-transactions-models.d.ts +302 -0
  144. package/dist/models/safe/transactions/sharedata-transactions-models.d.ts.map +1 -0
  145. package/dist/models/safe/transactions/sharedata-transactions-models.js +79 -0
  146. package/dist/models/share-data/share-data-crypto-models.d.ts +307 -0
  147. package/dist/models/share-data/share-data-crypto-models.d.ts.map +1 -0
  148. package/dist/models/share-data/share-data-crypto-models.js +91 -0
  149. package/dist/models/share-data/share-data-models.d.ts +114 -0
  150. package/dist/models/share-data/share-data-models.d.ts.map +1 -0
  151. package/dist/models/share-data/{share-data.js → share-data-models.js} +1 -1
  152. package/dist/models/share-data/share-data-persistence-models.d.ts +158 -0
  153. package/dist/models/share-data/share-data-persistence-models.d.ts.map +1 -0
  154. package/dist/models/share-data/share-data-persistence-models.js +94 -0
  155. package/dist/models/shareblock/shareblock-models.d.ts +280 -0
  156. package/dist/models/shareblock/shareblock-models.d.ts.map +1 -0
  157. package/dist/models/shareblock/shareblock-models.js +222 -0
  158. package/dist/transactions/authority/create-safe-transaction-authority-data.d.ts.map +1 -1
  159. package/dist/transactions/authority/create-safe-transaction-authority.d.ts.map +1 -1
  160. package/package.json +32 -21
  161. package/dist/models/share-data/share-data.d.ts +0 -181
  162. package/dist/models/share-data/share-data.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"rules-transactions-models.d.ts","sourceRoot":"","sources":["../../../../src/models/safe/transactions/rules-transactions-models.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,EAEH,mBAAmB,EACnB,yBAAyB,EAE5B,MAAM,4BAA4B,CAAC;AAKpC;;GAEG;AACH,oBAAY,wBAAwB;IAChC,QAAQ,aAAa;CACxB;AAED;;GAEG;AACH,eAAO,MAAM,8BAA8B,yBAEzC,CAAC;AAMH;;GAEG;AACH,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAG5C,CAAC;AAEH,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;AAE5F;;GAEG;AACH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMxC,CAAC;AAEH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAOpF;;GAEG;AACH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAK3C,CAAC;AAEH,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAE1F;;GAEG;AACH,eAAO,MAAM,wCAAwC;;;;;;;;;;;;;;;;;;;;;;;EAInD,CAAC;AAEH,MAAM,MAAM,kCAAkC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wCAAwC,CAAC,CAAC;AAE1G;;GAEG;AACH,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAK9C,CAAC;AAEH,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC;AAEhG;;GAEG;AACH,eAAO,MAAM,2CAA2C;;;;;;;;;;;;;;;;;;;;;;;EAItD,CAAC;AAEH,MAAM,MAAM,qCAAqC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2CAA2C,CAAC,CAAC;AAEhH;;GAEG;AACH,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAK9C,CAAC;AAEH,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC;AAEhG;;GAEG;AACH,eAAO,MAAM,2CAA2C;;;;;;;;;;;;;;;;;;;;;;;EAItD,CAAC;AAEH,MAAM,MAAM,qCAAqC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2CAA2C,CAAC,CAAC"}
1
+ {"version":3,"file":"rules-transactions-models.d.ts","sourceRoot":"","sources":["../../../../src/models/safe/transactions/rules-transactions-models.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,EAEH,mBAAmB,EACnB,yBAAyB,EAE5B,MAAM,4BAA4B,CAAC;AAKpC;;GAEG;AACH,oBAAY,wBAAwB;IAChC,QAAQ,aAAa;CACxB;AAED;;GAEG;AACH,eAAO,MAAM,8BAA8B;;EAEzC,CAAC;AAMH;;GAEG;AACH,eAAO,MAAM,iCAAiC;;;;;;;;;;;iBAG5C,CAAC;AAEH,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;AAE5F;;GAEG;AACH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;iBAMxC,CAAC;AAEH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAOpF;;GAEG;AACH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;iBAK3C,CAAC;AAEH,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAE1F;;GAEG;AACH,eAAO,MAAM,wCAAwC;;;;;;iBAInD,CAAC;AAEH,MAAM,MAAM,kCAAkC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wCAAwC,CAAC,CAAC;AAE1G;;GAEG;AACH,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;iBAK9C,CAAC;AAEH,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC;AAEhG;;GAEG;AACH,eAAO,MAAM,2CAA2C;;;;;;iBAItD,CAAC;AAEH,MAAM,MAAM,qCAAqC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2CAA2C,CAAC,CAAC;AAEhH;;GAEG;AACH,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;iBAK9C,CAAC;AAEH,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC;AAEhG;;GAEG;AACH,eAAO,MAAM,2CAA2C;;;;;;iBAItD,CAAC;AAEH,MAAM,MAAM,qCAAqC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2CAA2C,CAAC,CAAC"}
@@ -0,0 +1,302 @@
1
+ import { z } from 'zod';
2
+ import { SAFETransactionType, SAFETransactionActionType } from '../safe-transaction-models';
3
+ /**
4
+ * Wire-format payload for creating a ShareData over the SAFE HTTP / SAFE
5
+ * transaction layer. Carries everything the receiving server needs to
6
+ * dispatch to the matching ShareBlock factory and reconstruct the
7
+ * client-signed trust chain:
8
+ *
9
+ * - `metadata` — variant tag + creation attribution (also identifies
10
+ * which factory to call).
11
+ * - `initialState` — caller-supplied initial state inputs. Validated
12
+ * loosely here (currency/participants/balance) — the factory layers
13
+ * the variant-specific defaults (`isOpen: true`, `committed: false`,
14
+ * etc.) on top.
15
+ * - `initialCrypto` — the client's pre-computed creation hash / sig.
16
+ * `creationPublicKey` is derived from this — *not* taken from a
17
+ * separate field — so there is one source of truth for "who created
18
+ * this block."
19
+ * - `proofs` — bundle keyed by purpose. Each entry signs over the
20
+ * in-construction share-data state at the moment the factory will
21
+ * register the matching function/rule. The server cross-checks the
22
+ * bundle covers every purpose the chosen factory requires (via
23
+ * `*_REQUIRED_PROOF_PURPOSES`) before invoking the factory.
24
+ *
25
+ * Replaces the legacy free-form `shareDataContent: Record<string, any>`
26
+ * shape — that was the attack surface that let the HTTP create route
27
+ * accept attacker-controlled JSON as canonical state.
28
+ */
29
+ export declare const ISAFETransactionShareDataDataSchema: z.ZodObject<{
30
+ metadata: z.ZodObject<{
31
+ shareBlockId: z.ZodString;
32
+ blockType: z.ZodEnum<{
33
+ Clearing: "Clearing";
34
+ Funding: "Funding";
35
+ Distribution: "Distribution";
36
+ }>;
37
+ relatedLoanApplicationId: z.ZodOptional<z.ZodString>;
38
+ description: z.ZodOptional<z.ZodString>;
39
+ createdAt: z.ZodNumber;
40
+ createdBy: z.ZodString;
41
+ }, z.core.$strip>;
42
+ initialState: z.ZodObject<{
43
+ currency: z.ZodString;
44
+ participants: z.ZodRecord<z.ZodString, z.ZodObject<{
45
+ userId: z.ZodString;
46
+ role: z.ZodEnum<{
47
+ Borrower: "Borrower";
48
+ Lender: "Lender";
49
+ Platform: "Platform";
50
+ Recipient: "Recipient";
51
+ }>;
52
+ committedAmount: z.ZodNumber;
53
+ settledAmount: z.ZodNumber;
54
+ }, z.core.$strip>>;
55
+ balance: z.ZodOptional<z.ZodNumber>;
56
+ }, z.core.$strip>;
57
+ initialCrypto: z.ZodObject<{
58
+ publicKey: z.ZodString;
59
+ shareDataHash: z.ZodString;
60
+ shareDataSignature: z.ZodString;
61
+ timestamp: z.ZodNumber;
62
+ }, z.core.$strip>;
63
+ proofs: z.ZodRecord<z.ZodString, z.ZodObject<{
64
+ publicKey: z.ZodString;
65
+ shareDataHash: z.ZodString;
66
+ shareDataPreviousHash: z.ZodString;
67
+ shareDataSignature: z.ZodString;
68
+ timestamp: z.ZodNumber;
69
+ purpose: z.ZodString;
70
+ }, z.core.$strip>>;
71
+ }, z.core.$strip>;
72
+ export type ISAFETransactionShareDataData = z.infer<typeof ISAFETransactionShareDataDataSchema>;
73
+ /**
74
+ * This is the transaction targeting a sharedata item in the SAFE Ecosystem.
75
+ */
76
+ export declare const ISAFETransactionShareDataSchema: z.ZodObject<{
77
+ createdAt: z.ZodNumber;
78
+ authority: z.ZodString;
79
+ authoritySignature: z.ZodString;
80
+ transaction: z.ZodObject<{
81
+ type: z.ZodLiteral<SAFETransactionType.SHAREDATA>;
82
+ action: z.ZodEnum<{
83
+ ADD: "ADD";
84
+ DELETE: "DELETE";
85
+ UPDATE: "UPDATE";
86
+ }>;
87
+ data: z.ZodObject<{
88
+ metadata: z.ZodObject<{
89
+ shareBlockId: z.ZodString;
90
+ blockType: z.ZodEnum<{
91
+ Clearing: "Clearing";
92
+ Funding: "Funding";
93
+ Distribution: "Distribution";
94
+ }>;
95
+ relatedLoanApplicationId: z.ZodOptional<z.ZodString>;
96
+ description: z.ZodOptional<z.ZodString>;
97
+ createdAt: z.ZodNumber;
98
+ createdBy: z.ZodString;
99
+ }, z.core.$strip>;
100
+ initialState: z.ZodObject<{
101
+ currency: z.ZodString;
102
+ participants: z.ZodRecord<z.ZodString, z.ZodObject<{
103
+ userId: z.ZodString;
104
+ role: z.ZodEnum<{
105
+ Borrower: "Borrower";
106
+ Lender: "Lender";
107
+ Platform: "Platform";
108
+ Recipient: "Recipient";
109
+ }>;
110
+ committedAmount: z.ZodNumber;
111
+ settledAmount: z.ZodNumber;
112
+ }, z.core.$strip>>;
113
+ balance: z.ZodOptional<z.ZodNumber>;
114
+ }, z.core.$strip>;
115
+ initialCrypto: z.ZodObject<{
116
+ publicKey: z.ZodString;
117
+ shareDataHash: z.ZodString;
118
+ shareDataSignature: z.ZodString;
119
+ timestamp: z.ZodNumber;
120
+ }, z.core.$strip>;
121
+ proofs: z.ZodRecord<z.ZodString, z.ZodObject<{
122
+ publicKey: z.ZodString;
123
+ shareDataHash: z.ZodString;
124
+ shareDataPreviousHash: z.ZodString;
125
+ shareDataSignature: z.ZodString;
126
+ timestamp: z.ZodNumber;
127
+ purpose: z.ZodString;
128
+ }, z.core.$strip>>;
129
+ }, z.core.$strip>;
130
+ }, z.core.$strip>;
131
+ version: z.ZodNumber;
132
+ }, z.core.$strip>;
133
+ export type ISAFETransactionShareData = z.infer<typeof ISAFETransactionShareDataSchema>;
134
+ /**
135
+ * This is the schema for the sharedata transaction add.
136
+ */
137
+ export declare const ISAFETransactionShareDataAddSchema: z.ZodObject<{
138
+ createdAt: z.ZodNumber;
139
+ authority: z.ZodString;
140
+ authoritySignature: z.ZodString;
141
+ version: z.ZodNumber;
142
+ transaction: z.ZodObject<{
143
+ action: z.ZodLiteral<SAFETransactionActionType.ADD>;
144
+ data: z.ZodObject<{
145
+ metadata: z.ZodObject<{
146
+ shareBlockId: z.ZodString;
147
+ blockType: z.ZodEnum<{
148
+ Clearing: "Clearing";
149
+ Funding: "Funding";
150
+ Distribution: "Distribution";
151
+ }>;
152
+ relatedLoanApplicationId: z.ZodOptional<z.ZodString>;
153
+ description: z.ZodOptional<z.ZodString>;
154
+ createdAt: z.ZodNumber;
155
+ createdBy: z.ZodString;
156
+ }, z.core.$strip>;
157
+ initialState: z.ZodObject<{
158
+ currency: z.ZodString;
159
+ participants: z.ZodRecord<z.ZodString, z.ZodObject<{
160
+ userId: z.ZodString;
161
+ role: z.ZodEnum<{
162
+ Borrower: "Borrower";
163
+ Lender: "Lender";
164
+ Platform: "Platform";
165
+ Recipient: "Recipient";
166
+ }>;
167
+ committedAmount: z.ZodNumber;
168
+ settledAmount: z.ZodNumber;
169
+ }, z.core.$strip>>;
170
+ balance: z.ZodOptional<z.ZodNumber>;
171
+ }, z.core.$strip>;
172
+ initialCrypto: z.ZodObject<{
173
+ publicKey: z.ZodString;
174
+ shareDataHash: z.ZodString;
175
+ shareDataSignature: z.ZodString;
176
+ timestamp: z.ZodNumber;
177
+ }, z.core.$strip>;
178
+ proofs: z.ZodRecord<z.ZodString, z.ZodObject<{
179
+ publicKey: z.ZodString;
180
+ shareDataHash: z.ZodString;
181
+ shareDataPreviousHash: z.ZodString;
182
+ shareDataSignature: z.ZodString;
183
+ timestamp: z.ZodNumber;
184
+ purpose: z.ZodString;
185
+ }, z.core.$strip>>;
186
+ }, z.core.$strip>;
187
+ }, z.core.$strip>;
188
+ }, z.core.$strip>;
189
+ export type ISAFETransactionShareDataAdd = z.infer<typeof ISAFETransactionShareDataAddSchema>;
190
+ /**
191
+ * This is the schema for the sharedata transaction update.
192
+ */
193
+ export declare const ISAFETransactionShareDataUpdateSchema: z.ZodObject<{
194
+ createdAt: z.ZodNumber;
195
+ authority: z.ZodString;
196
+ authoritySignature: z.ZodString;
197
+ version: z.ZodNumber;
198
+ transaction: z.ZodObject<{
199
+ action: z.ZodLiteral<SAFETransactionActionType.UPDATE>;
200
+ data: z.ZodObject<{
201
+ metadata: z.ZodObject<{
202
+ shareBlockId: z.ZodString;
203
+ blockType: z.ZodEnum<{
204
+ Clearing: "Clearing";
205
+ Funding: "Funding";
206
+ Distribution: "Distribution";
207
+ }>;
208
+ relatedLoanApplicationId: z.ZodOptional<z.ZodString>;
209
+ description: z.ZodOptional<z.ZodString>;
210
+ createdAt: z.ZodNumber;
211
+ createdBy: z.ZodString;
212
+ }, z.core.$strip>;
213
+ initialState: z.ZodObject<{
214
+ currency: z.ZodString;
215
+ participants: z.ZodRecord<z.ZodString, z.ZodObject<{
216
+ userId: z.ZodString;
217
+ role: z.ZodEnum<{
218
+ Borrower: "Borrower";
219
+ Lender: "Lender";
220
+ Platform: "Platform";
221
+ Recipient: "Recipient";
222
+ }>;
223
+ committedAmount: z.ZodNumber;
224
+ settledAmount: z.ZodNumber;
225
+ }, z.core.$strip>>;
226
+ balance: z.ZodOptional<z.ZodNumber>;
227
+ }, z.core.$strip>;
228
+ initialCrypto: z.ZodObject<{
229
+ publicKey: z.ZodString;
230
+ shareDataHash: z.ZodString;
231
+ shareDataSignature: z.ZodString;
232
+ timestamp: z.ZodNumber;
233
+ }, z.core.$strip>;
234
+ proofs: z.ZodRecord<z.ZodString, z.ZodObject<{
235
+ publicKey: z.ZodString;
236
+ shareDataHash: z.ZodString;
237
+ shareDataPreviousHash: z.ZodString;
238
+ shareDataSignature: z.ZodString;
239
+ timestamp: z.ZodNumber;
240
+ purpose: z.ZodString;
241
+ }, z.core.$strip>>;
242
+ }, z.core.$strip>;
243
+ }, z.core.$strip>;
244
+ }, z.core.$strip>;
245
+ export type ISAFETransactionShareDataUpdate = z.infer<typeof ISAFETransactionShareDataUpdateSchema>;
246
+ /**
247
+ * This is the schema for the sharedata transaction delete.
248
+ */
249
+ export declare const ISAFETransactionShareDataDeleteSchema: z.ZodObject<{
250
+ createdAt: z.ZodNumber;
251
+ authority: z.ZodString;
252
+ authoritySignature: z.ZodString;
253
+ version: z.ZodNumber;
254
+ transaction: z.ZodObject<{
255
+ action: z.ZodLiteral<SAFETransactionActionType.DELETE>;
256
+ data: z.ZodObject<{
257
+ metadata: z.ZodObject<{
258
+ shareBlockId: z.ZodString;
259
+ blockType: z.ZodEnum<{
260
+ Clearing: "Clearing";
261
+ Funding: "Funding";
262
+ Distribution: "Distribution";
263
+ }>;
264
+ relatedLoanApplicationId: z.ZodOptional<z.ZodString>;
265
+ description: z.ZodOptional<z.ZodString>;
266
+ createdAt: z.ZodNumber;
267
+ createdBy: z.ZodString;
268
+ }, z.core.$strip>;
269
+ initialState: z.ZodObject<{
270
+ currency: z.ZodString;
271
+ participants: z.ZodRecord<z.ZodString, z.ZodObject<{
272
+ userId: z.ZodString;
273
+ role: z.ZodEnum<{
274
+ Borrower: "Borrower";
275
+ Lender: "Lender";
276
+ Platform: "Platform";
277
+ Recipient: "Recipient";
278
+ }>;
279
+ committedAmount: z.ZodNumber;
280
+ settledAmount: z.ZodNumber;
281
+ }, z.core.$strip>>;
282
+ balance: z.ZodOptional<z.ZodNumber>;
283
+ }, z.core.$strip>;
284
+ initialCrypto: z.ZodObject<{
285
+ publicKey: z.ZodString;
286
+ shareDataHash: z.ZodString;
287
+ shareDataSignature: z.ZodString;
288
+ timestamp: z.ZodNumber;
289
+ }, z.core.$strip>;
290
+ proofs: z.ZodRecord<z.ZodString, z.ZodObject<{
291
+ publicKey: z.ZodString;
292
+ shareDataHash: z.ZodString;
293
+ shareDataPreviousHash: z.ZodString;
294
+ shareDataSignature: z.ZodString;
295
+ timestamp: z.ZodNumber;
296
+ purpose: z.ZodString;
297
+ }, z.core.$strip>>;
298
+ }, z.core.$strip>;
299
+ }, z.core.$strip>;
300
+ }, z.core.$strip>;
301
+ export type ISAFETransactionShareDataDelete = z.infer<typeof ISAFETransactionShareDataDeleteSchema>;
302
+ //# sourceMappingURL=sharedata-transactions-models.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sharedata-transactions-models.d.ts","sourceRoot":"","sources":["../../../../src/models/safe/transactions/sharedata-transactions-models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACH,mBAAmB,EACnB,yBAAyB,EAG5B,MAAM,4BAA4B,CAAC;AASpC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAK9C,CAAC;AAEH,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC;AAEhG;;GAEG;AACH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAO1C,CAAC;AAEH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAIxF;;GAEG;AACH,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAK7C,CAAC;AAEH,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAC;AAE9F;;GAEG;AACH,eAAO,MAAM,qCAAqC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAKhD,CAAC;AAEH,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qCAAqC,CAAC,CAAC;AAEpG;;GAEG;AACH,eAAO,MAAM,qCAAqC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAKhD,CAAC;AAEH,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qCAAqC,CAAC,CAAC"}
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ISAFETransactionShareDataDeleteSchema = exports.ISAFETransactionShareDataUpdateSchema = exports.ISAFETransactionShareDataAddSchema = exports.ISAFETransactionShareDataSchema = exports.ISAFETransactionShareDataDataSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const safe_transaction_models_1 = require("../safe-transaction-models");
6
+ const share_data_crypto_models_1 = require("../../share-data/share-data-crypto-models");
7
+ const shareblock_models_1 = require("../../shareblock/shareblock-models");
8
+ //#region ShareData Transaction
9
+ /**
10
+ * Wire-format payload for creating a ShareData over the SAFE HTTP / SAFE
11
+ * transaction layer. Carries everything the receiving server needs to
12
+ * dispatch to the matching ShareBlock factory and reconstruct the
13
+ * client-signed trust chain:
14
+ *
15
+ * - `metadata` — variant tag + creation attribution (also identifies
16
+ * which factory to call).
17
+ * - `initialState` — caller-supplied initial state inputs. Validated
18
+ * loosely here (currency/participants/balance) — the factory layers
19
+ * the variant-specific defaults (`isOpen: true`, `committed: false`,
20
+ * etc.) on top.
21
+ * - `initialCrypto` — the client's pre-computed creation hash / sig.
22
+ * `creationPublicKey` is derived from this — *not* taken from a
23
+ * separate field — so there is one source of truth for "who created
24
+ * this block."
25
+ * - `proofs` — bundle keyed by purpose. Each entry signs over the
26
+ * in-construction share-data state at the moment the factory will
27
+ * register the matching function/rule. The server cross-checks the
28
+ * bundle covers every purpose the chosen factory requires (via
29
+ * `*_REQUIRED_PROOF_PURPOSES`) before invoking the factory.
30
+ *
31
+ * Replaces the legacy free-form `shareDataContent: Record<string, any>`
32
+ * shape — that was the attack surface that let the HTTP create route
33
+ * accept attacker-controlled JSON as canonical state.
34
+ */
35
+ exports.ISAFETransactionShareDataDataSchema = zod_1.z.object({
36
+ metadata: shareblock_models_1.IShareBlockMetadataSchema,
37
+ initialState: shareblock_models_1.IShareBlockInitialStateInputSchema,
38
+ initialCrypto: share_data_crypto_models_1.IShareDataInitialCryptoDataSchema,
39
+ proofs: share_data_crypto_models_1.ShareDataProofsSchema,
40
+ });
41
+ /**
42
+ * This is the transaction targeting a sharedata item in the SAFE Ecosystem.
43
+ */
44
+ exports.ISAFETransactionShareDataSchema = safe_transaction_models_1.ISAFETransactionBaseSchema.extend({
45
+ transaction: zod_1.z.object({
46
+ type: zod_1.z.literal(safe_transaction_models_1.SAFETransactionType.SHAREDATA),
47
+ action: safe_transaction_models_1.SAFETransactionActionTypeSchema,
48
+ data: exports.ISAFETransactionShareDataDataSchema,
49
+ }),
50
+ version: zod_1.z.number().min(1),
51
+ });
52
+ //#endregion ShareData Transaction
53
+ /**
54
+ * This is the schema for the sharedata transaction add.
55
+ */
56
+ exports.ISAFETransactionShareDataAddSchema = exports.ISAFETransactionShareDataSchema.extend({
57
+ transaction: zod_1.z.object({
58
+ action: zod_1.z.literal(safe_transaction_models_1.SAFETransactionActionType.ADD),
59
+ data: exports.ISAFETransactionShareDataDataSchema,
60
+ }),
61
+ });
62
+ /**
63
+ * This is the schema for the sharedata transaction update.
64
+ */
65
+ exports.ISAFETransactionShareDataUpdateSchema = exports.ISAFETransactionShareDataSchema.extend({
66
+ transaction: zod_1.z.object({
67
+ action: zod_1.z.literal(safe_transaction_models_1.SAFETransactionActionType.UPDATE),
68
+ data: exports.ISAFETransactionShareDataDataSchema,
69
+ }),
70
+ });
71
+ /**
72
+ * This is the schema for the sharedata transaction delete.
73
+ */
74
+ exports.ISAFETransactionShareDataDeleteSchema = exports.ISAFETransactionShareDataSchema.extend({
75
+ transaction: zod_1.z.object({
76
+ action: zod_1.z.literal(safe_transaction_models_1.SAFETransactionActionType.DELETE),
77
+ data: exports.ISAFETransactionShareDataDataSchema,
78
+ }),
79
+ });