@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,20 @@
1
+ /**
2
+ * Dashboard Layout Generator
3
+ *
4
+ * Generates dashboard layouts from template configuration
5
+ */
6
+ export interface GenerateDashboardOptions {
7
+ templatePath: string;
8
+ outputPath: string;
9
+ dashboardsPath?: string;
10
+ }
11
+ export interface GenerateDashboardResult {
12
+ dashboards: string[];
13
+ success: boolean;
14
+ errors: string[];
15
+ }
16
+ /**
17
+ * Generate dashboard layouts from template configuration
18
+ */
19
+ export declare function generateDashboards(options: GenerateDashboardOptions): Promise<GenerateDashboardResult>;
20
+ //# sourceMappingURL=dashboard-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dashboard-generator.d.ts","sourceRoot":"","sources":["../../../src/generators/ui/dashboard-generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,MAAM,WAAW,wBAAwB;IACvC,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,uBAAuB,CAAC,CAkElC"}
@@ -0,0 +1,349 @@
1
+ /**
2
+ * Dashboard Layout Generator
3
+ *
4
+ * Generates dashboard layouts from template configuration
5
+ */
6
+ import * as fs from 'fs';
7
+ import * as path from 'path';
8
+ /**
9
+ * Generate dashboard layouts from template configuration
10
+ */
11
+ export async function generateDashboards(options) {
12
+ const result = {
13
+ dashboards: [],
14
+ success: false,
15
+ errors: []
16
+ };
17
+ try {
18
+ // Load template configuration
19
+ const templatePath = path.resolve(options.templatePath);
20
+ if (!fs.existsSync(templatePath)) {
21
+ throw new Error(`Template file not found: ${templatePath}`);
22
+ }
23
+ const templateContent = fs.readFileSync(templatePath, 'utf-8');
24
+ const template = JSON.parse(templateContent);
25
+ // Create output directory
26
+ const outputPath = path.resolve(options.outputPath);
27
+ const dashboardsPath = options.dashboardsPath || path.join(outputPath, 'src', 'components', 'dashboards');
28
+ if (!fs.existsSync(dashboardsPath)) {
29
+ fs.mkdirSync(dashboardsPath, { recursive: true });
30
+ }
31
+ // Check if template has dashboards defined
32
+ if (!template.dashboards || template.dashboards.length === 0) {
33
+ // Generate default dashboard if none defined
34
+ const defaultDashboard = generateDefaultDashboard(template);
35
+ const dashboardFile = path.join(dashboardsPath, 'OverviewDashboard.tsx');
36
+ fs.writeFileSync(dashboardFile, defaultDashboard);
37
+ result.dashboards.push(dashboardFile);
38
+ }
39
+ else {
40
+ // Generate dashboards from configuration
41
+ for (const dashboard of template.dashboards) {
42
+ try {
43
+ const dashboardCode = generateDashboardLayout(dashboard, template);
44
+ const dashboardName = capitalize(dashboard.name) + 'Dashboard';
45
+ const dashboardFile = path.join(dashboardsPath, `${dashboardName}.tsx`);
46
+ fs.writeFileSync(dashboardFile, dashboardCode);
47
+ result.dashboards.push(dashboardFile);
48
+ }
49
+ catch (error) {
50
+ result.errors.push(`Failed to generate dashboard ${dashboard.name}: ${error instanceof Error ? error.message : 'Unknown error'}`);
51
+ }
52
+ }
53
+ }
54
+ // Generate dashboard index file
55
+ const indexCode = generateDashboardIndex(template);
56
+ const indexFile = path.join(dashboardsPath, 'index.ts');
57
+ fs.writeFileSync(indexFile, indexCode);
58
+ result.dashboards.push(indexFile);
59
+ result.success = result.errors.length === 0;
60
+ }
61
+ catch (error) {
62
+ result.errors.push(`Failed to generate dashboards: ${error instanceof Error ? error.message : 'Unknown error'}`);
63
+ }
64
+ return result;
65
+ }
66
+ /**
67
+ * Generate dashboard layout from configuration
68
+ */
69
+ function generateDashboardLayout(dashboard, template) {
70
+ const dashboardName = capitalize(dashboard.name);
71
+ const displayName = dashboard.displayName || dashboardName;
72
+ // Generate widgets
73
+ const widgets = dashboard.widgets?.map((widget, index) => {
74
+ return generateWidget(widget, index, template);
75
+ }) || [];
76
+ return `/**
77
+ * ${displayName} Dashboard
78
+ *
79
+ * Auto-generated from template: ${template.name}
80
+ */
81
+
82
+ import React, { useState, useEffect } from 'react'
83
+ import { Box, Grid, Typography, CircularProgress, Alert } from '@mui/material'
84
+ import { KPICard, ChartWidget } from '@varity-labs/sdk/ui/components'
85
+ import { useSDK } from '../hooks/useSDK'
86
+
87
+ export const ${dashboardName}Dashboard: React.FC = () => {
88
+ const { sdk } = useSDK()
89
+ const [loading, setLoading] = useState(true)
90
+ const [error, setError] = useState<string>('')
91
+ const [data, setData] = useState<any>({})
92
+
93
+ useEffect(() => {
94
+ loadDashboardData()
95
+ }, [])
96
+
97
+ const loadDashboardData = async () => {
98
+ setLoading(true)
99
+ setError('')
100
+
101
+ try {
102
+ // Load data for all widgets
103
+ const results = await Promise.all([
104
+ ${dashboard.widgets?.map((w, i) => generateDataLoader(w, i)).join(',\n ') || '// No widgets defined'}
105
+ ])
106
+
107
+ setData({
108
+ ${dashboard.widgets?.map((_w, i) => `widget${i}: results[${i}]`).join(',\n ') || ''}
109
+ })
110
+ } catch (err) {
111
+ setError(err instanceof Error ? err.message : 'Failed to load dashboard data')
112
+ } finally {
113
+ setLoading(false)
114
+ }
115
+ }
116
+
117
+ if (loading) {
118
+ return (
119
+ <Box sx={{ display: 'flex', justifyContent: 'center', alignItems: 'center', minHeight: '400px' }}>
120
+ <CircularProgress />
121
+ </Box>
122
+ )
123
+ }
124
+
125
+ if (error) {
126
+ return (
127
+ <Alert severity="error" sx={{ m: 2 }}>
128
+ {error}
129
+ </Alert>
130
+ )
131
+ }
132
+
133
+ return (
134
+ <Box sx={{ p: 3 }}>
135
+ <Typography variant="h4" gutterBottom>
136
+ ${displayName}
137
+ </Typography>
138
+
139
+ <Grid container spacing={3} sx={{ mt: 2 }}>
140
+ ${widgets.join('\n ')}
141
+ </Grid>
142
+ </Box>
143
+ )
144
+ }
145
+ `;
146
+ }
147
+ /**
148
+ * Generate widget component
149
+ */
150
+ function generateWidget(widget, index, template) {
151
+ const position = widget.position || { x: 0, y: 0 };
152
+ const size = widget.size || { width: 12, height: 1 };
153
+ const gridProps = `xs={12} md={${size.width}} sx={{ gridColumn: ${position.x + 1}, gridRow: ${position.y + 1} }}`;
154
+ switch (widget.type) {
155
+ case 'kpi':
156
+ return `
157
+ <Grid item ${gridProps}>
158
+ <KPICard
159
+ title="${widget.title}"
160
+ value={data.widget${index}?.value || 0}
161
+ subtitle="${widget.subtitle || ''}"
162
+ loading={loading}
163
+ variant="${widget.variant || 'default'}"
164
+ />
165
+ </Grid>`;
166
+ case 'chart':
167
+ const chartType = widget.config?.chartType || 'line';
168
+ const yKeys = widget.config?.yKeys || ['value'];
169
+ return `
170
+ <Grid item ${gridProps}>
171
+ <ChartWidget
172
+ title="${widget.title}"
173
+ type="${chartType}"
174
+ data={data.widget${index} || []}
175
+ yKeys={${JSON.stringify(yKeys)}}
176
+ loading={loading}
177
+ height={${widget.config?.height || 300}}
178
+ />
179
+ </Grid>`;
180
+ case 'table':
181
+ return `
182
+ <Grid item ${gridProps}>
183
+ {/* Table widget - implement with DataTable component */}
184
+ </Grid>`;
185
+ case 'list':
186
+ return `
187
+ <Grid item ${gridProps}>
188
+ {/* List widget - implement with custom list component */}
189
+ </Grid>`;
190
+ default:
191
+ return `
192
+ <Grid item ${gridProps}>
193
+ {/* Unknown widget type: ${widget.type} */}
194
+ </Grid>`;
195
+ }
196
+ }
197
+ /**
198
+ * Generate data loader for widget
199
+ */
200
+ function generateDataLoader(widget, index) {
201
+ const source = widget.source || widget.config?.source;
202
+ if (!source) {
203
+ return `Promise.resolve({ value: 0 })`;
204
+ }
205
+ // Parse source string (e.g., "analytics.getKPIs", "contracts.getTotalMerchants")
206
+ const [module, method] = source.split('.');
207
+ switch (widget.type) {
208
+ case 'kpi':
209
+ if (module === 'analytics') {
210
+ return `sdk.analytics.${method || 'getKPIs'}()`;
211
+ }
212
+ else if (module === 'contracts') {
213
+ return `sdk.contracts.call('Registry', '${method}', [])`;
214
+ }
215
+ return `Promise.resolve({ value: 0 })`;
216
+ case 'chart':
217
+ if (module === 'analytics') {
218
+ return `sdk.analytics.${method || 'getTrends'}({ period: 'last_12_months' })`;
219
+ }
220
+ return `Promise.resolve([])`;
221
+ default:
222
+ return `Promise.resolve(null)`;
223
+ }
224
+ }
225
+ /**
226
+ * Generate default dashboard when none defined in template
227
+ */
228
+ function generateDefaultDashboard(template) {
229
+ const entityWidgets = template.entities?.slice(0, 4).map((entity, index) => {
230
+ const entityName = capitalize(entity.name);
231
+ return `
232
+ <Grid item xs={12} md={6}>
233
+ <KPICard
234
+ title="Total ${entity.displayName || entityName}s"
235
+ value={data.total${entityName}s || 0}
236
+ loading={loading}
237
+ />
238
+ </Grid>`;
239
+ }).join('\n ') || '';
240
+ return `/**
241
+ * Overview Dashboard
242
+ *
243
+ * Auto-generated default dashboard for ${template.name}
244
+ */
245
+
246
+ import React, { useState, useEffect } from 'react'
247
+ import { Box, Grid, Typography, CircularProgress, Alert } from '@mui/material'
248
+ import { KPICard } from '@varity-labs/sdk/ui/components'
249
+ import { useSDK } from '../hooks/useSDK'
250
+
251
+ export const OverviewDashboard: React.FC = () => {
252
+ const { sdk } = useSDK()
253
+ const [loading, setLoading] = useState(true)
254
+ const [error, setError] = useState<string>('')
255
+ const [data, setData] = useState<any>({})
256
+
257
+ useEffect(() => {
258
+ loadDashboardData()
259
+ }, [])
260
+
261
+ const loadDashboardData = async () => {
262
+ setLoading(true)
263
+ setError('')
264
+
265
+ try {
266
+ // Load KPI data
267
+ const kpis = await sdk.analytics.getKPIs({ period: 'current_month' })
268
+ setData(kpis)
269
+ } catch (err) {
270
+ setError(err instanceof Error ? err.message : 'Failed to load dashboard data')
271
+ } finally {
272
+ setLoading(false)
273
+ }
274
+ }
275
+
276
+ if (loading) {
277
+ return (
278
+ <Box sx={{ display: 'flex', justifyContent: 'center', alignItems: 'center', minHeight: '400px' }}>
279
+ <CircularProgress />
280
+ </Box>
281
+ )
282
+ }
283
+
284
+ if (error) {
285
+ return (
286
+ <Alert severity="error" sx={{ m: 2 }}>
287
+ {error}
288
+ </Alert>
289
+ )
290
+ }
291
+
292
+ return (
293
+ <Box sx={{ p: 3 }}>
294
+ <Typography variant="h4" gutterBottom>
295
+ Overview
296
+ </Typography>
297
+
298
+ <Grid container spacing={3} sx={{ mt: 2 }}>
299
+ ${entityWidgets}
300
+
301
+ <Grid item xs={12} md={6}>
302
+ <KPICard
303
+ title="Active Users"
304
+ value={data.activeUsers || 0}
305
+ trend={{ value: 12, label: 'vs last month' }}
306
+ loading={loading}
307
+ variant="success"
308
+ />
309
+ </Grid>
310
+
311
+ <Grid item xs={12} md={6}>
312
+ <KPICard
313
+ title="Total Volume"
314
+ value={data.totalVolume || 0}
315
+ trend={{ value: -5, label: 'vs last month' }}
316
+ loading={loading}
317
+ variant="primary"
318
+ />
319
+ </Grid>
320
+ </Grid>
321
+ </Box>
322
+ )
323
+ }
324
+ `;
325
+ }
326
+ /**
327
+ * Generate dashboard index file
328
+ */
329
+ function generateDashboardIndex(template) {
330
+ const dashboards = template.dashboards || [{ name: 'overview' }];
331
+ const exports = dashboards.map(dashboard => {
332
+ const name = capitalize(dashboard.name) + 'Dashboard';
333
+ return `export { ${name} } from './${name}'`;
334
+ });
335
+ return `/**
336
+ * Dashboard Components
337
+ *
338
+ * Auto-generated dashboard layouts
339
+ */
340
+
341
+ ${exports.join('\n')}
342
+ `;
343
+ }
344
+ /**
345
+ * Capitalize first letter
346
+ */
347
+ function capitalize(str) {
348
+ return str.charAt(0).toUpperCase() + str.slice(1);
349
+ }
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Varity SDK v1 - Public API
3
+ *
4
+ * Main entry point for the Varity Backend SDK.
5
+ * Exports all public interfaces, types, and classes.
6
+ */
7
+ export { VaritySDK, createVaritySDK } from './core/VaritySDK';
8
+ export { getNetworkConfig, NETWORK_CONFIGS, DEFAULT_CONFIG, API_ENDPOINTS, STORAGE_CONFIG } from './core/config';
9
+ export { VARITY_DEV_CREDENTIALS, isUsingDevCredentials, isProductionCredentials, getCredentialWarning, logCredentialUsage, resolveCredentials, validateCredentials, getUpgradeInstructions } from './core/credentials';
10
+ export type { CredentialConfig } from './core/credentials';
11
+ export { ProxyCredentialClient, getProxyCredentials, isProxyAvailable, resolveCredentialsWithProxy } from './core/credentials-proxy';
12
+ export type { ProxyClientConfig } from './core/credentials-proxy';
13
+ export { TemplateRegistry, templateRegistry, validateTemplate, getContractABI, getContractAddress, getEntity, getMetric, getEvent, mergeTemplateConfig } from './core/template';
14
+ export { loadISOTemplate, loadAllTemplates } from './core/template-loader';
15
+ export type { TemplateType, TemplateConfig, TemplateContract, TemplateEntity, EntityField, TemplateEvent, TemplateMetric, TemplateDashboard, DashboardWidget, TemplateStorageConfig } from './core/template';
16
+ export type { VaritySDKConfig, Network, NetworkConfig, ContractAddresses } from './core/types';
17
+ export type { ISOMerchant, RegisterMerchantInput, ISOMerchantFilters, ISOTransaction, RecordTransactionInput, BatchTransactionResult, ISORep, RegisterRepInput, ISORepLeaderboard, ISOKPISummary, ISOTrendData, ISOGrowthMetrics, ISORepPerformance, ISOProblemMerchant, FeeStructure, ResidualResult } from './core/types';
18
+ export type { StorageResult, StorageOptions, AIResponse, AIResponseWithSources, MerchantInsights, AnomalyAnalysis, UserProfile, ZKProof, AccessCondition, DataProof, TEEProvider, TEEAttestation, TEEQueryOptions, TEEResponse, ZKMLProofType, ZKMLCircuitType, ZKMLProof, ZKMLVerificationResult, ZKMLCircuitConfig, ZKMLProofInput, ZKMLProofStats } from './core/types';
19
+ export type { Pagination, PaginatedResult, ErrorResponse, TransactionReceipt, BackendAPIConfig, PinataUploadResponse, CelestiaSubmitResponse } from './core/types';
20
+ export { MerchantStatus, TransactionType, RepStatus, StorageLayer, Role } from './core/types';
21
+ export { StorageModule, S3Module } from './modules/storage';
22
+ export type { UploadResult, DataPointer, Pin, PinFilters, CelestiaReceipt, S3PutObjectParams, S3GetObjectParams, S3GetObjectResponse, S3DeleteObjectParams, S3ListObjectsParams, S3HeadObjectParams, S3HeadObjectResponse } from './modules/storage';
23
+ export { IStorageAdapter, BaseStorageAdapter, UnsupportedOperationError, FilecoinAdapter, MultiTierAdapter, AdapterFactory } from './modules/storage';
24
+ export type { AdapterFactoryConfig } from './modules/storage';
25
+ export { AnalyticsModule } from './modules/analytics';
26
+ export type { KPIOptions, KPIResult, KPISummary, TrendOptions, TrendDataPoint, TrendResult, LeaderboardOptions, LeaderboardEntry, LeaderboardResult, GrowthMetricsOptions, GrowthMetric, GrowthMetricsResult, TimeSeriesOptions, TimeSeriesResult, ComparativeAnalysisOptions, ComparativeResult } from './modules/analytics';
27
+ export { NotificationsModule } from './modules/notifications';
28
+ export type { NotificationType, NotificationPriority, NotificationStatus, SendNotificationOptions, NotificationAttachment, NotificationResult, NotificationPreferences, NotificationHistoryOptions, NotificationHistoryEntry, NotificationHistoryResult, ScheduleNotificationOptions, ScheduledNotification, AlertRule, AlertCondition, AlertRuleResult, NotificationTemplate } from './modules/notifications';
29
+ export { ExportModule } from './modules/export';
30
+ export type { ExportFormat, ReportFormat, ExportOptions, ExportResult, CSVExportOptions, JSONExportOptions, ReportOptions, ReportResult, DownloadOptions, BulkExportOptions, BulkExportResult, ExportTemplate, ScheduledExportOptions, ScheduledExport } from './modules/export';
31
+ export { CacheModule } from './modules/cache';
32
+ export type { CacheOptions, CacheEntry, CacheStats, CacheBatchOperation, CacheBatchResult, CachePattern } from './modules/cache';
33
+ export { MonitoringModule, TraceContext, SpanContext } from './modules/monitoring';
34
+ export type { HealthStatus, MetricType, HealthCheckResult, Metric, RecordMetricOptions, QueryMetricsOptions, MetricSeries, Trace, Span, LogEntry, ErrorReport, PerformanceMetrics, Alert } from './modules/monitoring';
35
+ export { ForecastingModule } from './modules/forecasting';
36
+ export type { TimeInterval, ForecastModel, AnomalySensitivity, AnomalyType, EvaluationMetric, PredictOptions, AnomalyDetectionOptions, TrendAnalysisOptions, ScenarioSimulationOptions, TrainModelOptions, EvaluateModelOptions, ForecastPoint, ForecastResult, Anomaly, AnomalyDetectionResult, TrendComponent, TrendAnalysisResult, ScenarioResult, TrainedModel, EvaluationResult } from './modules/forecasting';
37
+ export { WebhooksModule } from './modules/webhooks';
38
+ export type { WebhookStatus, DeliveryStatus, HttpMethod, RetryStrategy, RegisterWebhookOptions, UpdateWebhookOptions, ListWebhooksOptions, TestWebhookOptions, GetLogsOptions, DeliverEventOptions, Webhook, DeliveryLog, AvailableEvent, WebhookStats, TestDeliveryResult } from './modules/webhooks';
39
+ export { default as MerchantRegistryABI } from './contracts/abis/iso/MerchantRegistry.json';
40
+ export { default as TransactionVaultABI } from './contracts/abis/iso/TransactionVault.json';
41
+ export { default as RepPerformanceABI } from './contracts/abis/iso/RepPerformance.json';
42
+ export { default as ResidualCalculatorABI } from './contracts/abis/iso/ResidualCalculator.json';
43
+ export { default as AccessControlRegistryABI } from './contracts/abis/iso/AccessControlRegistry.json';
44
+ export { default as DataProofRegistryABI } from './contracts/abis/iso/DataProofRegistry.json';
45
+ export { default as VarityWalletFactoryABI } from './contracts/abis/iso/VarityWalletFactory.json';
46
+ export { ThirdwebWrapper, createThirdwebWrapper, EngineClient, createEngineClient, parseEngineWebhook, verifyEngineWebhook, NebulaClient, createNebulaClient, StorageClient, createStorageClient, BridgeClient, createBridgeClient, GatewayClient, createGatewayClient, x402Client, createx402Client, x402Middleware, } from './thirdweb';
47
+ export type { ThirdwebWrapperConfig, DeployContractParams, EngineConfig, EngineTransactionParams, EngineTransactionStatus, EngineTransactionResult, EngineDeployParams, EngineWebhookPayload, NebulaConfig, GenerateContractOptions, GeneratedContract, QueryChainOptions, QueryResult, ExplainTransactionOptions, TransactionExplanation, GenerateCodeOptions, GeneratedCode, AnalyzeContractOptions, ContractAnalysis, StorageConfig, ThirdwebUploadResult, NFTMetadata, BatchUploadItem, BatchUploadResult, ThirdwebDownloadOptions, ImageOptimizationOptions, BridgeConfig, AssetType, BridgeRoute, BridgeAssetParams, BridgeStatus, BridgeTransactionResult, BridgeQuote, BridgeHistoryEntry, GatewayConfig, RPCRequestOptions, RPCResponse, GatewayStats, WebSocketOptions, x402Config, PaymentEndpointConfig, PaymentStats, UsageRecord, SubscriptionPlan, Subscription, } from './thirdweb';
48
+ export { varietyTestnet, getVarityChain, isVarityChain, VARITY_TESTNET_RPC, VARITY_CHAIN_METADATA } from './thirdweb/varity-chain';
49
+ export { ChainRegistry, SUPPORTED_CHAINS, TESTNET_CHAINS, MAINNET_CHAINS, DEFAULT_CHAIN, chains, varityL3, varityL3Testnet, varityL3Wagmi, USDC_DECIMALS, VARITY_USDC_ADDRESS, formatUSDC, parseUSDC, formatAddress, getVarityExplorerUrl, arbitrum, arbitrumOne, arbitrumSepolia, arbitrumOneWagmi, arbitrumSepoliaWagmi, getArbitrumExplorerUrl, base, baseSepolia, baseWagmi, baseSepoliaWagmi, getBaseExplorerUrl, } from './chains';
50
+ export type { ChainSelection, ChainMetadata } from './chains';
51
+ export { VARITY_L3_CHAIN_ID, VARITY_CONTRACTS, REVENUE_SPLIT, getContractAddress as getVarityContractAddress, } from './contracts';
52
+ export type { VarityContractName } from './contracts';
53
+ export { BlockchainService, NFTLicensingService, RevenueSplitService, } from './blockchain';
54
+ export type { ContractConfig, NFTLicenseMetadata, LicenseInfo, RevenueSplit, TransactionResult, BlockchainServiceOptions, } from './blockchain';
55
+ export { trackGasUsage, trackTransactionGasUsage, waitForTransactionReceipt, calculateGasInUSDC, createGasTracker, } from './tracking';
56
+ export type { GasUsageEvent, GasTransactionReceipt, GasTrackerConfig, BillingStatus, AppIdentifier, GasUsageRecord, AppUsageSummary, BillingCycle, GasTrackingStats, GasUsageQueryOptions, GasUsageQueryResult, BillingAlert, GasExportFormat, GasExportOptions, } from './tracking';
57
+ export { AnalyticsTracker, initializeAnalytics, getAnalyticsTracker, shutdownAnalytics, } from './analytics';
58
+ export type { UsageEvent, AnalyticsConfig, } from './analytics';
59
+ export declare const VERSION = "2.0.0-alpha.1";
60
+ export declare const SDK_VERSION = "2.0.0-alpha.1";
61
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js ADDED
@@ -0,0 +1,74 @@
1
+ /**
2
+ * Varity SDK v1 - Public API
3
+ *
4
+ * Main entry point for the Varity Backend SDK.
5
+ * Exports all public interfaces, types, and classes.
6
+ */
7
+ // Core SDK
8
+ export { VaritySDK, createVaritySDK } from './core/VaritySDK';
9
+ export { getNetworkConfig, NETWORK_CONFIGS, DEFAULT_CONFIG, API_ENDPOINTS, STORAGE_CONFIG } from './core/config';
10
+ // Shared Development Credentials
11
+ export { VARITY_DEV_CREDENTIALS, isUsingDevCredentials, isProductionCredentials, getCredentialWarning, logCredentialUsage, resolveCredentials, validateCredentials, getUpgradeInstructions } from './core/credentials';
12
+ // Credential Proxy Client (Secure Server-Side Credentials)
13
+ export { ProxyCredentialClient, getProxyCredentials, isProxyAvailable, resolveCredentialsWithProxy } from './core/credentials-proxy';
14
+ // Template System
15
+ export { TemplateRegistry, templateRegistry, validateTemplate, getContractABI, getContractAddress, getEntity, getMetric, getEvent, mergeTemplateConfig } from './core/template';
16
+ export { loadISOTemplate, loadAllTemplates } from './core/template-loader';
17
+ // Enums
18
+ export { MerchantStatus, TransactionType, RepStatus, StorageLayer, Role } from './core/types';
19
+ // Storage Module (Filecoin/IPFS + Multi-backend Support)
20
+ export { StorageModule, S3Module } from './modules/storage';
21
+ // Storage Adapters (Advanced Multi-Backend Support)
22
+ export { BaseStorageAdapter, UnsupportedOperationError, FilecoinAdapter, MultiTierAdapter, AdapterFactory } from './modules/storage';
23
+ // Universal Capability Modules
24
+ export { AnalyticsModule } from './modules/analytics';
25
+ export { NotificationsModule } from './modules/notifications';
26
+ export { ExportModule } from './modules/export';
27
+ export { CacheModule } from './modules/cache';
28
+ export { MonitoringModule, TraceContext, SpanContext } from './modules/monitoring';
29
+ export { ForecastingModule } from './modules/forecasting';
30
+ export { WebhooksModule } from './modules/webhooks';
31
+ // Contract ABIs (optional export for advanced users)
32
+ export { default as MerchantRegistryABI } from './contracts/abis/iso/MerchantRegistry.json';
33
+ export { default as TransactionVaultABI } from './contracts/abis/iso/TransactionVault.json';
34
+ export { default as RepPerformanceABI } from './contracts/abis/iso/RepPerformance.json';
35
+ export { default as ResidualCalculatorABI } from './contracts/abis/iso/ResidualCalculator.json';
36
+ export { default as AccessControlRegistryABI } from './contracts/abis/iso/AccessControlRegistry.json';
37
+ export { default as DataProofRegistryABI } from './contracts/abis/iso/DataProofRegistry.json';
38
+ export { default as VarityWalletFactoryABI } from './contracts/abis/iso/VarityWalletFactory.json';
39
+ // Thirdweb Integration (NEW in v2.0.0-beta.2, Complete in v2.0.0-alpha.1)
40
+ export {
41
+ // Core
42
+ ThirdwebWrapper, createThirdwebWrapper,
43
+ // Engine
44
+ EngineClient, createEngineClient, parseEngineWebhook, verifyEngineWebhook,
45
+ // Nebula AI
46
+ NebulaClient, createNebulaClient,
47
+ // Storage
48
+ StorageClient, createStorageClient,
49
+ // Bridge
50
+ BridgeClient, createBridgeClient,
51
+ // Gateway
52
+ GatewayClient, createGatewayClient,
53
+ // x402 Payment
54
+ x402Client, createx402Client, x402Middleware, } from './thirdweb';
55
+ export { varietyTestnet, getVarityChain, isVarityChain, VARITY_TESTNET_RPC, VARITY_CHAIN_METADATA } from './thirdweb/varity-chain';
56
+ // Multi-Chain Configuration (NEW in v2.0.0-alpha.1)
57
+ export { ChainRegistry, SUPPORTED_CHAINS, TESTNET_CHAINS, MAINNET_CHAINS, DEFAULT_CHAIN, chains,
58
+ // Varity L3
59
+ varityL3, varityL3Testnet, varityL3Wagmi, USDC_DECIMALS, VARITY_USDC_ADDRESS, formatUSDC, parseUSDC, formatAddress, getVarityExplorerUrl,
60
+ // Arbitrum
61
+ arbitrum, arbitrumOne, arbitrumSepolia, arbitrumOneWagmi, arbitrumSepoliaWagmi, getArbitrumExplorerUrl,
62
+ // Base
63
+ base, baseSepolia, baseWagmi, baseSepoliaWagmi, getBaseExplorerUrl, } from './chains';
64
+ // Contract Addresses (all deployed contracts on Varity L3)
65
+ export { VARITY_L3_CHAIN_ID, VARITY_CONTRACTS, REVENUE_SPLIT, getContractAddress as getVarityContractAddress, } from './contracts';
66
+ // Blockchain Module (Production patterns from generic-template-dashboard)
67
+ export { BlockchainService, NFTLicensingService, RevenueSplitService, } from './blockchain';
68
+ // Gas Tracking Module (NEW - Per-App Gas Usage Billing)
69
+ export { trackGasUsage, trackTransactionGasUsage, waitForTransactionReceipt, calculateGasInUSDC, createGasTracker, } from './tracking';
70
+ // Analytics Tracking (NEW - Usage-based Billing)
71
+ export { AnalyticsTracker, initializeAnalytics, getAnalyticsTracker, shutdownAnalytics, } from './analytics';
72
+ // Version
73
+ export const VERSION = '2.0.0-alpha.1';
74
+ export const SDK_VERSION = '2.0.0-alpha.1'; // Multi-chain support + thirdweb Engine integration + Blockchain module