@varity-labs/sdk 2.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (295) hide show
  1. package/LICENSE +31 -0
  2. package/README.md +253 -0
  3. package/dist/analytics/index.d.ts +7 -0
  4. package/dist/analytics/index.d.ts.map +1 -0
  5. package/dist/analytics/index.js +6 -0
  6. package/dist/analytics/tracker.d.ts +128 -0
  7. package/dist/analytics/tracker.d.ts.map +1 -0
  8. package/dist/analytics/tracker.js +203 -0
  9. package/dist/blockchain/BlockchainService.d.ts +100 -0
  10. package/dist/blockchain/BlockchainService.d.ts.map +1 -0
  11. package/dist/blockchain/BlockchainService.js +188 -0
  12. package/dist/blockchain/NFTLicensingService.d.ts +69 -0
  13. package/dist/blockchain/NFTLicensingService.d.ts.map +1 -0
  14. package/dist/blockchain/NFTLicensingService.js +136 -0
  15. package/dist/blockchain/RevenueSplitService.d.ts +71 -0
  16. package/dist/blockchain/RevenueSplitService.d.ts.map +1 -0
  17. package/dist/blockchain/RevenueSplitService.js +111 -0
  18. package/dist/blockchain/index.d.ts +48 -0
  19. package/dist/blockchain/index.d.ts.map +1 -0
  20. package/dist/blockchain/index.js +46 -0
  21. package/dist/blockchain/types.d.ts +63 -0
  22. package/dist/blockchain/types.d.ts.map +1 -0
  23. package/dist/blockchain/types.js +6 -0
  24. package/dist/chains/arbitrum.d.ts +89 -0
  25. package/dist/chains/arbitrum.d.ts.map +1 -0
  26. package/dist/chains/arbitrum.js +134 -0
  27. package/dist/chains/base.d.ts +84 -0
  28. package/dist/chains/base.d.ts.map +1 -0
  29. package/dist/chains/base.js +131 -0
  30. package/dist/chains/index.d.ts +36 -0
  31. package/dist/chains/index.d.ts.map +1 -0
  32. package/dist/chains/index.js +32 -0
  33. package/dist/chains/registry.d.ts +113 -0
  34. package/dist/chains/registry.d.ts.map +1 -0
  35. package/dist/chains/registry.js +201 -0
  36. package/dist/chains/varityL3.d.ts +81 -0
  37. package/dist/chains/varityL3.d.ts.map +1 -0
  38. package/dist/chains/varityL3.js +125 -0
  39. package/dist/cli/commands/clone.d.ts +8 -0
  40. package/dist/cli/commands/clone.d.ts.map +1 -0
  41. package/dist/cli/commands/clone.js +391 -0
  42. package/dist/cli/commands/dev.d.ts +8 -0
  43. package/dist/cli/commands/dev.d.ts.map +1 -0
  44. package/dist/cli/commands/dev.js +40 -0
  45. package/dist/cli/commands/generate.d.ts +8 -0
  46. package/dist/cli/commands/generate.d.ts.map +1 -0
  47. package/dist/cli/commands/generate.js +303 -0
  48. package/dist/cli/commands/init.d.ts +8 -0
  49. package/dist/cli/commands/init.d.ts.map +1 -0
  50. package/dist/cli/commands/init.js +317 -0
  51. package/dist/cli/commands/validate.d.ts +8 -0
  52. package/dist/cli/commands/validate.d.ts.map +1 -0
  53. package/dist/cli/commands/validate.js +69 -0
  54. package/dist/cli/index.d.ts +8 -0
  55. package/dist/cli/index.d.ts.map +1 -0
  56. package/dist/cli/index.js +33 -0
  57. package/dist/cli/utils/logger.d.ts +17 -0
  58. package/dist/cli/utils/logger.d.ts.map +1 -0
  59. package/dist/cli/utils/logger.js +35 -0
  60. package/dist/cli/utils/prompts.d.ts +21 -0
  61. package/dist/cli/utils/prompts.d.ts.map +1 -0
  62. package/dist/cli/utils/prompts.js +103 -0
  63. package/dist/contracts/abis/iso/AccessControlRegistry.json +1468 -0
  64. package/dist/contracts/abis/iso/DataProofRegistry.json +797 -0
  65. package/dist/contracts/abis/iso/MerchantRegistry.json +1237 -0
  66. package/dist/contracts/abis/iso/RepPerformance.json +1351 -0
  67. package/dist/contracts/abis/iso/ResidualCalculator.json +1118 -0
  68. package/dist/contracts/abis/iso/TransactionVault.json +1588 -0
  69. package/dist/contracts/abis/iso/VarityWalletFactory.json +475 -0
  70. package/dist/contracts/addresses.d.ts +88 -0
  71. package/dist/contracts/addresses.d.ts.map +1 -0
  72. package/dist/contracts/addresses.js +94 -0
  73. package/dist/contracts/index.d.ts +7 -0
  74. package/dist/contracts/index.d.ts.map +1 -0
  75. package/dist/contracts/index.js +6 -0
  76. package/dist/core/VaritySDK.d.ts +177 -0
  77. package/dist/core/VaritySDK.d.ts.map +1 -0
  78. package/dist/core/VaritySDK.js +325 -0
  79. package/dist/core/config.d.ts +120 -0
  80. package/dist/core/config.d.ts.map +1 -0
  81. package/dist/core/config.js +187 -0
  82. package/dist/core/credentials-proxy.d.ts +157 -0
  83. package/dist/core/credentials-proxy.d.ts.map +1 -0
  84. package/dist/core/credentials-proxy.js +345 -0
  85. package/dist/core/credentials.d.ts +219 -0
  86. package/dist/core/credentials.d.ts.map +1 -0
  87. package/dist/core/credentials.js +345 -0
  88. package/dist/core/template-loader.d.ts +15 -0
  89. package/dist/core/template-loader.d.ts.map +1 -0
  90. package/dist/core/template-loader.js +380 -0
  91. package/dist/core/template.d.ts +321 -0
  92. package/dist/core/template.d.ts.map +1 -0
  93. package/dist/core/template.js +189 -0
  94. package/dist/core/types.d.ts +572 -0
  95. package/dist/core/types.d.ts.map +1 -0
  96. package/dist/core/types.js +52 -0
  97. package/dist/dev/dev-server.d.ts +16 -0
  98. package/dist/dev/dev-server.d.ts.map +1 -0
  99. package/dist/dev/dev-server.js +119 -0
  100. package/dist/generators/contracts/generator.d.ts +21 -0
  101. package/dist/generators/contracts/generator.d.ts.map +1 -0
  102. package/dist/generators/contracts/generator.js +252 -0
  103. package/dist/generators/tests/generator.d.ts +20 -0
  104. package/dist/generators/tests/generator.d.ts.map +1 -0
  105. package/dist/generators/tests/generator.js +375 -0
  106. package/dist/generators/types/generator.d.ts +19 -0
  107. package/dist/generators/types/generator.d.ts.map +1 -0
  108. package/dist/generators/types/generator.js +165 -0
  109. package/dist/generators/ui/component-generator.d.ts +20 -0
  110. package/dist/generators/ui/component-generator.d.ts.map +1 -0
  111. package/dist/generators/ui/component-generator.js +749 -0
  112. package/dist/generators/ui/dashboard-generator.d.ts +20 -0
  113. package/dist/generators/ui/dashboard-generator.d.ts.map +1 -0
  114. package/dist/generators/ui/dashboard-generator.js +349 -0
  115. package/dist/index.d.ts +61 -0
  116. package/dist/index.d.ts.map +1 -0
  117. package/dist/index.js +74 -0
  118. package/dist/modules/analytics/AnalyticsModule.d.ts +349 -0
  119. package/dist/modules/analytics/AnalyticsModule.d.ts.map +1 -0
  120. package/dist/modules/analytics/AnalyticsModule.js +274 -0
  121. package/dist/modules/analytics/index.d.ts +3 -0
  122. package/dist/modules/analytics/index.d.ts.map +1 -0
  123. package/dist/modules/analytics/index.js +1 -0
  124. package/dist/modules/auth/AccessKeyModule.d.ts +189 -0
  125. package/dist/modules/auth/AccessKeyModule.d.ts.map +1 -0
  126. package/dist/modules/auth/AccessKeyModule.js +322 -0
  127. package/dist/modules/auth/AuthModule.d.ts +133 -0
  128. package/dist/modules/auth/AuthModule.d.ts.map +1 -0
  129. package/dist/modules/auth/AuthModule.js +214 -0
  130. package/dist/modules/auth/index.d.ts +8 -0
  131. package/dist/modules/auth/index.d.ts.map +1 -0
  132. package/dist/modules/auth/index.js +6 -0
  133. package/dist/modules/cache/CacheModule.d.ts +279 -0
  134. package/dist/modules/cache/CacheModule.d.ts.map +1 -0
  135. package/dist/modules/cache/CacheModule.js +493 -0
  136. package/dist/modules/cache/index.d.ts +3 -0
  137. package/dist/modules/cache/index.d.ts.map +1 -0
  138. package/dist/modules/cache/index.js +1 -0
  139. package/dist/modules/compute/ComputeModule.d.ts +226 -0
  140. package/dist/modules/compute/ComputeModule.d.ts.map +1 -0
  141. package/dist/modules/compute/ComputeModule.js +379 -0
  142. package/dist/modules/compute/index.d.ts +6 -0
  143. package/dist/modules/compute/index.d.ts.map +1 -0
  144. package/dist/modules/compute/index.js +4 -0
  145. package/dist/modules/contracts/ContractsModule.d.ts +164 -0
  146. package/dist/modules/contracts/ContractsModule.d.ts.map +1 -0
  147. package/dist/modules/contracts/ContractsModule.js +242 -0
  148. package/dist/modules/contracts/index.d.ts +6 -0
  149. package/dist/modules/contracts/index.d.ts.map +1 -0
  150. package/dist/modules/contracts/index.js +4 -0
  151. package/dist/modules/export/ExportModule.d.ts +346 -0
  152. package/dist/modules/export/ExportModule.d.ts.map +1 -0
  153. package/dist/modules/export/ExportModule.js +432 -0
  154. package/dist/modules/export/index.d.ts +3 -0
  155. package/dist/modules/export/index.d.ts.map +1 -0
  156. package/dist/modules/export/index.js +1 -0
  157. package/dist/modules/forecasting/ForecastingModule.d.ts +579 -0
  158. package/dist/modules/forecasting/ForecastingModule.d.ts.map +1 -0
  159. package/dist/modules/forecasting/ForecastingModule.js +310 -0
  160. package/dist/modules/forecasting/index.d.ts +3 -0
  161. package/dist/modules/forecasting/index.d.ts.map +1 -0
  162. package/dist/modules/forecasting/index.js +1 -0
  163. package/dist/modules/monitoring/MonitoringModule.d.ts +359 -0
  164. package/dist/modules/monitoring/MonitoringModule.d.ts.map +1 -0
  165. package/dist/modules/monitoring/MonitoringModule.js +483 -0
  166. package/dist/modules/monitoring/index.d.ts +3 -0
  167. package/dist/modules/monitoring/index.d.ts.map +1 -0
  168. package/dist/modules/monitoring/index.js +1 -0
  169. package/dist/modules/notifications/NotificationsModule.d.ts +336 -0
  170. package/dist/modules/notifications/NotificationsModule.d.ts.map +1 -0
  171. package/dist/modules/notifications/NotificationsModule.js +418 -0
  172. package/dist/modules/notifications/index.d.ts +3 -0
  173. package/dist/modules/notifications/index.d.ts.map +1 -0
  174. package/dist/modules/notifications/index.js +1 -0
  175. package/dist/modules/oracle/OracleModule.d.ts +110 -0
  176. package/dist/modules/oracle/OracleModule.d.ts.map +1 -0
  177. package/dist/modules/oracle/OracleModule.js +151 -0
  178. package/dist/modules/oracle/index.d.ts +6 -0
  179. package/dist/modules/oracle/index.d.ts.map +1 -0
  180. package/dist/modules/oracle/index.js +4 -0
  181. package/dist/modules/storage/S3Module.d.ts +377 -0
  182. package/dist/modules/storage/S3Module.d.ts.map +1 -0
  183. package/dist/modules/storage/S3Module.js +680 -0
  184. package/dist/modules/storage/StorageModule.d.ts +157 -0
  185. package/dist/modules/storage/StorageModule.d.ts.map +1 -0
  186. package/dist/modules/storage/StorageModule.js +302 -0
  187. package/dist/modules/storage/adapters/AdapterFactory.d.ts +100 -0
  188. package/dist/modules/storage/adapters/AdapterFactory.d.ts.map +1 -0
  189. package/dist/modules/storage/adapters/AdapterFactory.js +209 -0
  190. package/dist/modules/storage/adapters/FilecoinAdapter.d.ts +94 -0
  191. package/dist/modules/storage/adapters/FilecoinAdapter.d.ts.map +1 -0
  192. package/dist/modules/storage/adapters/FilecoinAdapter.js +263 -0
  193. package/dist/modules/storage/adapters/IStorageAdapter.d.ts +287 -0
  194. package/dist/modules/storage/adapters/IStorageAdapter.d.ts.map +1 -0
  195. package/dist/modules/storage/adapters/IStorageAdapter.js +81 -0
  196. package/dist/modules/storage/adapters/MultiTierAdapter.d.ts +187 -0
  197. package/dist/modules/storage/adapters/MultiTierAdapter.d.ts.map +1 -0
  198. package/dist/modules/storage/adapters/MultiTierAdapter.js +430 -0
  199. package/dist/modules/storage/adapters/index.d.ts +12 -0
  200. package/dist/modules/storage/adapters/index.d.ts.map +1 -0
  201. package/dist/modules/storage/adapters/index.js +12 -0
  202. package/dist/modules/storage/index.d.ts +16 -0
  203. package/dist/modules/storage/index.d.ts.map +1 -0
  204. package/dist/modules/storage/index.js +15 -0
  205. package/dist/modules/storage/tiering/AccessAnalyzer.d.ts +227 -0
  206. package/dist/modules/storage/tiering/AccessAnalyzer.d.ts.map +1 -0
  207. package/dist/modules/storage/tiering/AccessAnalyzer.js +367 -0
  208. package/dist/modules/storage/tiering/CostOptimizer.d.ts +248 -0
  209. package/dist/modules/storage/tiering/CostOptimizer.d.ts.map +1 -0
  210. package/dist/modules/storage/tiering/CostOptimizer.js +356 -0
  211. package/dist/modules/storage/tiering/MetadataStore.d.ts +287 -0
  212. package/dist/modules/storage/tiering/MetadataStore.d.ts.map +1 -0
  213. package/dist/modules/storage/tiering/MetadataStore.js +535 -0
  214. package/dist/modules/storage/tiering/TieringEngine.d.ts +237 -0
  215. package/dist/modules/storage/tiering/TieringEngine.d.ts.map +1 -0
  216. package/dist/modules/storage/tiering/TieringEngine.js +419 -0
  217. package/dist/modules/storage/tiering/example.d.ts +8 -0
  218. package/dist/modules/storage/tiering/example.d.ts.map +1 -0
  219. package/dist/modules/storage/tiering/example.js +250 -0
  220. package/dist/modules/storage/tiering/index.d.ts +17 -0
  221. package/dist/modules/storage/tiering/index.d.ts.map +1 -0
  222. package/dist/modules/storage/tiering/index.js +13 -0
  223. package/dist/modules/webhooks/WebhooksModule.d.ts +476 -0
  224. package/dist/modules/webhooks/WebhooksModule.d.ts.map +1 -0
  225. package/dist/modules/webhooks/WebhooksModule.js +359 -0
  226. package/dist/modules/webhooks/index.d.ts +3 -0
  227. package/dist/modules/webhooks/index.d.ts.map +1 -0
  228. package/dist/modules/webhooks/index.js +1 -0
  229. package/dist/modules/zk/ZKModule.d.ts +153 -0
  230. package/dist/modules/zk/ZKModule.d.ts.map +1 -0
  231. package/dist/modules/zk/ZKModule.js +262 -0
  232. package/dist/modules/zk/index.d.ts +7 -0
  233. package/dist/modules/zk/index.d.ts.map +1 -0
  234. package/dist/modules/zk/index.js +4 -0
  235. package/dist/thirdweb/BridgeClient.d.ts +228 -0
  236. package/dist/thirdweb/BridgeClient.d.ts.map +1 -0
  237. package/dist/thirdweb/BridgeClient.js +160 -0
  238. package/dist/thirdweb/EngineClient.d.ts +396 -0
  239. package/dist/thirdweb/EngineClient.d.ts.map +1 -0
  240. package/dist/thirdweb/EngineClient.js +386 -0
  241. package/dist/thirdweb/GatewayClient.d.ts +190 -0
  242. package/dist/thirdweb/GatewayClient.d.ts.map +1 -0
  243. package/dist/thirdweb/GatewayClient.js +257 -0
  244. package/dist/thirdweb/NebulaClient.d.ts +292 -0
  245. package/dist/thirdweb/NebulaClient.d.ts.map +1 -0
  246. package/dist/thirdweb/NebulaClient.js +180 -0
  247. package/dist/thirdweb/StorageClient.d.ts +445 -0
  248. package/dist/thirdweb/StorageClient.d.ts.map +1 -0
  249. package/dist/thirdweb/StorageClient.js +405 -0
  250. package/dist/thirdweb/ThirdwebWrapper.d.ts +236 -0
  251. package/dist/thirdweb/ThirdwebWrapper.d.ts.map +1 -0
  252. package/dist/thirdweb/ThirdwebWrapper.js +332 -0
  253. package/dist/thirdweb/index.d.ts +21 -0
  254. package/dist/thirdweb/index.d.ts.map +1 -0
  255. package/dist/thirdweb/index.js +28 -0
  256. package/dist/thirdweb/varity-chain.d.ts +48 -0
  257. package/dist/thirdweb/varity-chain.d.ts.map +1 -0
  258. package/dist/thirdweb/varity-chain.js +64 -0
  259. package/dist/thirdweb/x402Client.d.ts +319 -0
  260. package/dist/thirdweb/x402Client.d.ts.map +1 -0
  261. package/dist/thirdweb/x402Client.js +223 -0
  262. package/dist/tracking/gasTracker.d.ts +158 -0
  263. package/dist/tracking/gasTracker.d.ts.map +1 -0
  264. package/dist/tracking/gasTracker.js +227 -0
  265. package/dist/tracking/index.d.ts +10 -0
  266. package/dist/tracking/index.d.ts.map +1 -0
  267. package/dist/tracking/index.js +8 -0
  268. package/dist/tracking/types.d.ts +327 -0
  269. package/dist/tracking/types.d.ts.map +1 -0
  270. package/dist/tracking/types.js +8 -0
  271. package/dist/ui/components/ChartWidget.d.ts +36 -0
  272. package/dist/ui/components/ChartWidget.d.ts.map +1 -0
  273. package/dist/ui/components/ChartWidget.js +82 -0
  274. package/dist/ui/components/DashboardLayout.d.ts +41 -0
  275. package/dist/ui/components/DashboardLayout.d.ts.map +1 -0
  276. package/dist/ui/components/DashboardLayout.js +102 -0
  277. package/dist/ui/components/DataTable.d.ts +49 -0
  278. package/dist/ui/components/DataTable.d.ts.map +1 -0
  279. package/dist/ui/components/DataTable.js +96 -0
  280. package/dist/ui/components/EntityForm.d.ts +60 -0
  281. package/dist/ui/components/EntityForm.d.ts.map +1 -0
  282. package/dist/ui/components/EntityForm.js +182 -0
  283. package/dist/ui/components/KPICard.d.ts +29 -0
  284. package/dist/ui/components/KPICard.d.ts.map +1 -0
  285. package/dist/ui/components/KPICard.js +61 -0
  286. package/dist/ui/components/Modal.d.ts +34 -0
  287. package/dist/ui/components/Modal.d.ts.map +1 -0
  288. package/dist/ui/components/Modal.js +30 -0
  289. package/dist/ui/components/index.d.ts +18 -0
  290. package/dist/ui/components/index.d.ts.map +1 -0
  291. package/dist/ui/components/index.js +11 -0
  292. package/dist/validation/template-validator.d.ts +25 -0
  293. package/dist/validation/template-validator.d.ts.map +1 -0
  294. package/dist/validation/template-validator.js +305 -0
  295. package/package.json +102 -0
@@ -0,0 +1,359 @@
1
+ /**
2
+ * Webhooks Module
3
+ *
4
+ * Universal webhook management for event-driven integrations
5
+ * Works across ALL templates (ISO, Healthcare, Finance, Retail)
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * // Register a webhook
10
+ * const webhook = await sdk.webhooks.register({
11
+ * url: 'https://api.example.com/webhooks',
12
+ * events: ['transaction.created', 'user.updated'],
13
+ * secret: 'your-secret-key'
14
+ * })
15
+ *
16
+ * // Test webhook delivery
17
+ * await sdk.webhooks.test(webhook.id, { test_event: 'data' })
18
+ *
19
+ * // Get delivery logs
20
+ * const logs = await sdk.webhooks.getLogs({ webhook_id: webhook.id })
21
+ * ```
22
+ */
23
+ // ============================================================================
24
+ // WEBHOOKS MODULE CLASS
25
+ // ============================================================================
26
+ /**
27
+ * Webhooks Module
28
+ *
29
+ * Provides webhook management and event delivery for integrations
30
+ * Works universally across all templates with template-specific events
31
+ */
32
+ export class WebhooksModule {
33
+ constructor(sdk) {
34
+ this.sdk = sdk;
35
+ }
36
+ /**
37
+ * Register a new webhook
38
+ *
39
+ * @param options - Webhook registration options
40
+ * @returns Registered webhook configuration
41
+ *
42
+ * @example
43
+ * ```typescript
44
+ * const webhook = await sdk.webhooks.register({
45
+ * url: 'https://api.example.com/webhooks',
46
+ * events: ['transaction.created', 'user.updated'],
47
+ * secret: 'your-secret-key',
48
+ * retry: {
49
+ * max_attempts: 5,
50
+ * strategy: 'exponential'
51
+ * }
52
+ * })
53
+ * ```
54
+ */
55
+ async register(options) {
56
+ const response = await fetch(`${this.sdk.getAPIEndpoint()}/api/v1/webhooks`, {
57
+ method: 'POST',
58
+ headers: {
59
+ 'Content-Type': 'application/json',
60
+ ...(this.sdk.getAPIKey() && { 'X-API-Key': this.sdk.getAPIKey() })
61
+ },
62
+ body: JSON.stringify(options)
63
+ });
64
+ if (!response.ok) {
65
+ throw new Error(`Failed to register webhook: ${response.statusText}`);
66
+ }
67
+ return await response.json();
68
+ }
69
+ /**
70
+ * Get webhook by ID
71
+ *
72
+ * @param webhookId - Webhook ID
73
+ * @returns Webhook configuration
74
+ */
75
+ async get(webhookId) {
76
+ const response = await fetch(`${this.sdk.getAPIEndpoint()}/api/v1/webhooks/${webhookId}`, {
77
+ headers: {
78
+ ...(this.sdk.getAPIKey() && { 'X-API-Key': this.sdk.getAPIKey() })
79
+ }
80
+ });
81
+ if (!response.ok) {
82
+ throw new Error(`Failed to get webhook: ${response.statusText}`);
83
+ }
84
+ return await response.json();
85
+ }
86
+ /**
87
+ * List all webhooks
88
+ *
89
+ * @param options - List options
90
+ * @returns List of webhooks
91
+ */
92
+ async list(options) {
93
+ const params = new URLSearchParams();
94
+ if (options) {
95
+ Object.entries(options).forEach(([key, value]) => {
96
+ if (value !== undefined)
97
+ params.append(key, String(value));
98
+ });
99
+ }
100
+ const response = await fetch(`${this.sdk.getAPIEndpoint()}/api/v1/webhooks?${params.toString()}`, {
101
+ headers: {
102
+ ...(this.sdk.getAPIKey() && { 'X-API-Key': this.sdk.getAPIKey() })
103
+ }
104
+ });
105
+ if (!response.ok) {
106
+ throw new Error(`Failed to list webhooks: ${response.statusText}`);
107
+ }
108
+ return await response.json();
109
+ }
110
+ /**
111
+ * Update webhook configuration
112
+ *
113
+ * @param webhookId - Webhook ID
114
+ * @param options - Update options
115
+ * @returns Updated webhook configuration
116
+ */
117
+ async update(webhookId, options) {
118
+ const response = await fetch(`${this.sdk.getAPIEndpoint()}/api/v1/webhooks/${webhookId}`, {
119
+ method: 'PATCH',
120
+ headers: {
121
+ 'Content-Type': 'application/json',
122
+ ...(this.sdk.getAPIKey() && { 'X-API-Key': this.sdk.getAPIKey() })
123
+ },
124
+ body: JSON.stringify(options)
125
+ });
126
+ if (!response.ok) {
127
+ throw new Error(`Failed to update webhook: ${response.statusText}`);
128
+ }
129
+ return await response.json();
130
+ }
131
+ /**
132
+ * Delete a webhook
133
+ *
134
+ * @param webhookId - Webhook ID to delete
135
+ * @returns Success status
136
+ */
137
+ async delete(webhookId) {
138
+ const response = await fetch(`${this.sdk.getAPIEndpoint()}/api/v1/webhooks/${webhookId}`, {
139
+ method: 'DELETE',
140
+ headers: {
141
+ ...(this.sdk.getAPIKey() && { 'X-API-Key': this.sdk.getAPIKey() })
142
+ }
143
+ });
144
+ if (!response.ok) {
145
+ throw new Error(`Failed to delete webhook: ${response.statusText}`);
146
+ }
147
+ return await response.json();
148
+ }
149
+ /**
150
+ * Test webhook delivery
151
+ *
152
+ * @param webhookId - Webhook ID to test
153
+ * @param options - Test options
154
+ * @returns Test delivery result
155
+ *
156
+ * @example
157
+ * ```typescript
158
+ * const result = await sdk.webhooks.test('webhook-123', {
159
+ * event: 'test.event',
160
+ * payload: { test: true }
161
+ * })
162
+ * ```
163
+ */
164
+ async test(webhookId, options) {
165
+ const response = await fetch(`${this.sdk.getAPIEndpoint()}/api/v1/webhooks/${webhookId}/test`, {
166
+ method: 'POST',
167
+ headers: {
168
+ 'Content-Type': 'application/json',
169
+ ...(this.sdk.getAPIKey() && { 'X-API-Key': this.sdk.getAPIKey() })
170
+ },
171
+ body: JSON.stringify(options || {})
172
+ });
173
+ if (!response.ok) {
174
+ throw new Error(`Failed to test webhook: ${response.statusText}`);
175
+ }
176
+ return await response.json();
177
+ }
178
+ /**
179
+ * Pause webhook delivery
180
+ *
181
+ * @param webhookId - Webhook ID to pause
182
+ * @returns Updated webhook configuration
183
+ */
184
+ async pause(webhookId) {
185
+ return await this.update(webhookId, { enabled: false });
186
+ }
187
+ /**
188
+ * Resume webhook delivery
189
+ *
190
+ * @param webhookId - Webhook ID to resume
191
+ * @returns Updated webhook configuration
192
+ */
193
+ async resume(webhookId) {
194
+ return await this.update(webhookId, { enabled: true });
195
+ }
196
+ /**
197
+ * Get webhook delivery logs
198
+ *
199
+ * @param options - Log query options
200
+ * @returns Delivery logs
201
+ *
202
+ * @example
203
+ * ```typescript
204
+ * const logs = await sdk.webhooks.getLogs({
205
+ * webhook_id: 'webhook-123',
206
+ * status: 'failed',
207
+ * limit: 50
208
+ * })
209
+ * ```
210
+ */
211
+ async getLogs(options) {
212
+ const params = new URLSearchParams();
213
+ if (options) {
214
+ Object.entries(options).forEach(([key, value]) => {
215
+ if (value !== undefined)
216
+ params.append(key, String(value));
217
+ });
218
+ }
219
+ const response = await fetch(`${this.sdk.getAPIEndpoint()}/api/v1/webhooks/logs?${params.toString()}`, {
220
+ headers: {
221
+ ...(this.sdk.getAPIKey() && { 'X-API-Key': this.sdk.getAPIKey() })
222
+ }
223
+ });
224
+ if (!response.ok) {
225
+ throw new Error(`Failed to get webhook logs: ${response.statusText}`);
226
+ }
227
+ return await response.json();
228
+ }
229
+ /**
230
+ * Get delivery log by ID
231
+ *
232
+ * @param logId - Log entry ID
233
+ * @returns Delivery log details
234
+ */
235
+ async getLog(logId) {
236
+ const response = await fetch(`${this.sdk.getAPIEndpoint()}/api/v1/webhooks/logs/${logId}`, {
237
+ headers: {
238
+ ...(this.sdk.getAPIKey() && { 'X-API-Key': this.sdk.getAPIKey() })
239
+ }
240
+ });
241
+ if (!response.ok) {
242
+ throw new Error(`Failed to get delivery log: ${response.statusText}`);
243
+ }
244
+ return await response.json();
245
+ }
246
+ /**
247
+ * Retry failed webhook delivery
248
+ *
249
+ * @param logId - Log entry ID to retry
250
+ * @returns Updated delivery log
251
+ */
252
+ async retry(logId) {
253
+ const response = await fetch(`${this.sdk.getAPIEndpoint()}/api/v1/webhooks/logs/${logId}/retry`, {
254
+ method: 'POST',
255
+ headers: {
256
+ ...(this.sdk.getAPIKey() && { 'X-API-Key': this.sdk.getAPIKey() })
257
+ }
258
+ });
259
+ if (!response.ok) {
260
+ throw new Error(`Failed to retry webhook delivery: ${response.statusText}`);
261
+ }
262
+ return await response.json();
263
+ }
264
+ /**
265
+ * Manually deliver an event to webhooks
266
+ *
267
+ * @param options - Event delivery options
268
+ * @returns Delivery result
269
+ *
270
+ * @example
271
+ * ```typescript
272
+ * await sdk.webhooks.deliverEvent({
273
+ * event: 'custom.event',
274
+ * payload: { data: 'important data' },
275
+ * webhook_ids: ['webhook-123'] // Optional: target specific webhooks
276
+ * })
277
+ * ```
278
+ */
279
+ async deliverEvent(options) {
280
+ const response = await fetch(`${this.sdk.getAPIEndpoint()}/api/v1/webhooks/deliver`, {
281
+ method: 'POST',
282
+ headers: {
283
+ 'Content-Type': 'application/json',
284
+ ...(this.sdk.getAPIKey() && { 'X-API-Key': this.sdk.getAPIKey() })
285
+ },
286
+ body: JSON.stringify(options)
287
+ });
288
+ if (!response.ok) {
289
+ throw new Error(`Failed to deliver event: ${response.statusText}`);
290
+ }
291
+ return await response.json();
292
+ }
293
+ /**
294
+ * Get available webhook events
295
+ *
296
+ * @returns List of available events
297
+ */
298
+ async getAvailableEvents() {
299
+ const response = await fetch(`${this.sdk.getAPIEndpoint()}/api/v1/webhooks/events`, {
300
+ headers: {
301
+ ...(this.sdk.getAPIKey() && { 'X-API-Key': this.sdk.getAPIKey() })
302
+ }
303
+ });
304
+ if (!response.ok) {
305
+ throw new Error(`Failed to get available events: ${response.statusText}`);
306
+ }
307
+ const data = await response.json();
308
+ return data.events;
309
+ }
310
+ /**
311
+ * Get webhook statistics
312
+ *
313
+ * @returns Webhook statistics
314
+ */
315
+ async getStats() {
316
+ const response = await fetch(`${this.sdk.getAPIEndpoint()}/api/v1/webhooks/stats`, {
317
+ headers: {
318
+ ...(this.sdk.getAPIKey() && { 'X-API-Key': this.sdk.getAPIKey() })
319
+ }
320
+ });
321
+ if (!response.ok) {
322
+ throw new Error(`Failed to get webhook stats: ${response.statusText}`);
323
+ }
324
+ return await response.json();
325
+ }
326
+ /**
327
+ * Verify webhook signature
328
+ *
329
+ * @param payload - Webhook payload (raw string)
330
+ * @param signature - Signature header value
331
+ * @param secret - Webhook secret key
332
+ * @returns True if signature is valid
333
+ *
334
+ * @example
335
+ * ```typescript
336
+ * // In your webhook handler
337
+ * const isValid = await sdk.webhooks.verifySignature(
338
+ * JSON.stringify(req.body),
339
+ * req.headers['x-webhook-signature'],
340
+ * 'your-secret-key'
341
+ * )
342
+ * ```
343
+ */
344
+ async verifySignature(payload, signature, secret) {
345
+ const response = await fetch(`${this.sdk.getAPIEndpoint()}/api/v1/webhooks/verify`, {
346
+ method: 'POST',
347
+ headers: {
348
+ 'Content-Type': 'application/json',
349
+ ...(this.sdk.getAPIKey() && { 'X-API-Key': this.sdk.getAPIKey() })
350
+ },
351
+ body: JSON.stringify({ payload, signature, secret })
352
+ });
353
+ if (!response.ok) {
354
+ throw new Error(`Failed to verify signature: ${response.statusText}`);
355
+ }
356
+ const data = await response.json();
357
+ return data.valid;
358
+ }
359
+ }
@@ -0,0 +1,3 @@
1
+ export { WebhooksModule } from './WebhooksModule';
2
+ export type { WebhookStatus, DeliveryStatus, HttpMethod, RetryStrategy, RegisterWebhookOptions, UpdateWebhookOptions, ListWebhooksOptions, TestWebhookOptions, GetLogsOptions, DeliverEventOptions, Webhook, DeliveryLog, AvailableEvent, WebhookStats, TestDeliveryResult } from './WebhooksModule';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/modules/webhooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,YAAY,EACV,aAAa,EACb,cAAc,EACd,UAAU,EACV,aAAa,EACb,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,OAAO,EACP,WAAW,EACX,cAAc,EACd,YAAY,EACZ,kBAAkB,EACnB,MAAM,kBAAkB,CAAA"}
@@ -0,0 +1 @@
1
+ export { WebhooksModule } from './WebhooksModule';
@@ -0,0 +1,153 @@
1
+ /**
2
+ * Varity SDK - ZK Module
3
+ *
4
+ * Universal zero-knowledge proof generation and verification.
5
+ * Works across all templates (ISO, Healthcare, Retail, etc.)
6
+ */
7
+ import type { VaritySDK } from '../../core/VaritySDK';
8
+ import type { ZKProof, ZKMLProof, ZKMLProofInput, ZKMLVerificationResult, ZKMLProofStats } from '../../core/types';
9
+ export interface ProofInputs {
10
+ public: any[];
11
+ private: any[];
12
+ }
13
+ export interface VerificationResult {
14
+ valid: boolean;
15
+ transactionHash?: string;
16
+ gasUsed?: bigint;
17
+ }
18
+ /**
19
+ * ZKModule - Universal zero-knowledge proof operations
20
+ *
21
+ * @example
22
+ * ```typescript
23
+ * // Generate proof
24
+ * const proof = await sdk.zk.generateProof('login-circuit', {
25
+ * public: [address],
26
+ * private: [password]
27
+ * })
28
+ *
29
+ * // Verify proof on-chain
30
+ * const result = await sdk.zk.verifyProofOnChain(proof, [address])
31
+ * ```
32
+ */
33
+ export declare class ZKModule {
34
+ private sdk;
35
+ constructor(sdk: VaritySDK);
36
+ /**
37
+ * Generate zero-knowledge proof
38
+ *
39
+ * @param circuitId - Circuit identifier
40
+ * @param inputs - Proof inputs
41
+ * @returns ZK proof
42
+ */
43
+ generateProof(circuitId: string, inputs: ProofInputs): Promise<ZKProof>;
44
+ /**
45
+ * Generate login proof (simplified)
46
+ *
47
+ * @param credentials - Login credentials
48
+ * @returns ZK proof
49
+ */
50
+ generateLoginProof(credentials: any): Promise<ZKProof>;
51
+ /**
52
+ * Generate data ownership proof
53
+ *
54
+ * @param dataCID - Data CID
55
+ * @returns ZK proof
56
+ */
57
+ generateDataOwnershipProof(dataCID: string): Promise<ZKProof>;
58
+ /**
59
+ * Verify proof on-chain
60
+ *
61
+ * @param proof - ZK proof
62
+ * @param publicInputs - Public inputs
63
+ * @returns Verification result
64
+ */
65
+ verifyProofOnChain(proof: ZKProof, publicInputs: any[]): Promise<VerificationResult>;
66
+ /**
67
+ * Verify proof off-chain (local verification)
68
+ *
69
+ * @param proof - ZK proof
70
+ * @param publicInputs - Public inputs
71
+ * @returns True if valid
72
+ */
73
+ verifyProofOffChain(proof: ZKProof, publicInputs: any[]): Promise<boolean>;
74
+ /**
75
+ * Prove ML inference with ZKML
76
+ *
77
+ * Generates a zero-knowledge proof that an ML inference was performed correctly
78
+ * without revealing the model weights or full input/output data.
79
+ *
80
+ * @param modelId - Model identifier
81
+ * @param input - Input data to the model
82
+ * @param output - Output from the model
83
+ * @param options - Additional proof generation options
84
+ * @returns ZKML proof with verification data
85
+ *
86
+ * @example
87
+ * ```typescript
88
+ * const proof = await sdk.zk.proveMLInference(
89
+ * 'merchant-risk-model',
90
+ * { merchantData: {...} },
91
+ * { riskScore: 0.85 },
92
+ * { submitOnChain: true }
93
+ * )
94
+ * console.log('Proof ID:', proof.proofId)
95
+ * console.log('Verified:', proof.verified)
96
+ * ```
97
+ */
98
+ proveMLInference(modelId: string, input: any, output: any, options?: Partial<ZKMLProofInput>): Promise<ZKMLProof>;
99
+ /**
100
+ * Verify ZKML proof
101
+ *
102
+ * Verifies a ZKML proof either on-chain or off-chain.
103
+ *
104
+ * @param proof - ZKML proof to verify
105
+ * @param onChain - Whether to verify on-chain (default: false)
106
+ * @returns Verification result
107
+ *
108
+ * @example
109
+ * ```typescript
110
+ * // Off-chain verification (faster, no gas)
111
+ * const result = await sdk.zk.verifyMLProof(proof)
112
+ * console.log('Valid:', result.valid)
113
+ *
114
+ * // On-chain verification (slower, requires gas)
115
+ * const result = await sdk.zk.verifyMLProof(proof, true)
116
+ * console.log('Transaction:', result.txHash)
117
+ * ```
118
+ */
119
+ verifyMLProof(proof: ZKMLProof, onChain?: boolean): Promise<ZKMLVerificationResult>;
120
+ /**
121
+ * Get ZKML proof statistics
122
+ *
123
+ * Returns statistics about ZKML proof generation and verification.
124
+ *
125
+ * @returns Proof statistics
126
+ *
127
+ * @example
128
+ * ```typescript
129
+ * const stats = await sdk.zk.getProofStats()
130
+ * console.log('Total proofs:', stats.totalProofsGenerated)
131
+ * console.log('Success rate:', stats.successRate)
132
+ * console.log('Avg generation time:', stats.avgGenerationTimeMs, 'ms')
133
+ * ```
134
+ */
135
+ getProofStats(): Promise<ZKMLProofStats>;
136
+ /**
137
+ * List available ZKML circuits
138
+ *
139
+ * Returns a list of compiled ZKML circuits available for proof generation.
140
+ *
141
+ * @returns Array of circuit configurations
142
+ *
143
+ * @example
144
+ * ```typescript
145
+ * const circuits = await sdk.zk.listCircuits()
146
+ * circuits.forEach(circuit => {
147
+ * console.log(`${circuit.circuitId}: ${circuit.provingSystem}`)
148
+ * })
149
+ * ```
150
+ */
151
+ listCircuits(): Promise<any[]>;
152
+ }
153
+ //# sourceMappingURL=ZKModule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ZKModule.d.ts","sourceRoot":"","sources":["../../../src/modules/zk/ZKModule.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,KAAK,EACV,OAAO,EACP,SAAS,EACT,cAAc,EACd,sBAAsB,EACtB,cAAc,EACf,MAAM,kBAAkB,CAAA;AAEzB,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,GAAG,EAAE,CAAA;IACb,OAAO,EAAE,GAAG,EAAE,CAAA;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,OAAO,CAAA;IACd,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,GAAG,CAAW;gBAEV,GAAG,EAAE,SAAS;IAI1B;;;;;;OAMG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;IAoB7E;;;;;OAKG;IACG,kBAAkB,CAAC,WAAW,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;IAQ5D;;;;;OAKG;IACG,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQnE;;;;;;OAMG;IACG,kBAAkB,CACtB,KAAK,EAAE,OAAO,EACd,YAAY,EAAE,GAAG,EAAE,GAClB,OAAO,CAAC,kBAAkB,CAAC;IAe9B;;;;;;OAMG;IACG,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAqBhF;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,gBAAgB,CACpB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,GAAG,EACV,MAAM,EAAE,GAAG,EACX,OAAO,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,GAChC,OAAO,CAAC,SAAS,CAAC;IA8BrB;;;;;;;;;;;;;;;;;;;OAmBG;IACG,aAAa,CACjB,KAAK,EAAE,SAAS,EAChB,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,sBAAsB,CAAC;IAqBlC;;;;;;;;;;;;;;OAcG;IACG,aAAa,IAAI,OAAO,CAAC,cAAc,CAAC;IAmB9C;;;;;;;;;;;;;;OAcG;IACG,YAAY,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;CAkBrC"}