@megatao/sdk 1.1.0

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 (228) hide show
  1. package/.env.example +37 -0
  2. package/CHANGELOG.md +19 -0
  3. package/README.md +199 -0
  4. package/bin/alf +4 -0
  5. package/cli/README.md +198 -0
  6. package/cli/TEST_MANUAL.md +577 -0
  7. package/cli/commands/account.ts +545 -0
  8. package/cli/commands/funding.ts +481 -0
  9. package/cli/commands/liquidation.ts +523 -0
  10. package/cli/commands/market.ts +590 -0
  11. package/cli/commands/orders.ts +395 -0
  12. package/cli/commands/position.ts +1085 -0
  13. package/cli/commands/shared/positionUtils.ts +239 -0
  14. package/cli/commands/trading.ts +483 -0
  15. package/cli/commands/utils.ts +281 -0
  16. package/cli/commands/vault.ts +522 -0
  17. package/cli/index.ts +169 -0
  18. package/cli/interactive.ts +530 -0
  19. package/cli/utils/client.ts +457 -0
  20. package/cli/utils/config.ts +226 -0
  21. package/cli/utils/display.ts +258 -0
  22. package/cli/utils/index.ts +10 -0
  23. package/cli/utils/prompts.ts +364 -0
  24. package/config.example.json +23 -0
  25. package/dist/AlphaFuturesClient.d.ts +36 -0
  26. package/dist/AlphaFuturesClient.d.ts.map +1 -0
  27. package/dist/AlphaFuturesClient.js +116 -0
  28. package/dist/AlphaFuturesClient.js.map +1 -0
  29. package/dist/abi/Alpha.json +5987 -0
  30. package/dist/abi/abis.d.ts +319 -0
  31. package/dist/abi/abis.d.ts.map +1 -0
  32. package/dist/abi/abis.js +128 -0
  33. package/dist/abi/abis.js.map +1 -0
  34. package/dist/abi/index.d.ts +11 -0
  35. package/dist/abi/index.d.ts.map +1 -0
  36. package/dist/abi/index.js +15 -0
  37. package/dist/abi/index.js.map +1 -0
  38. package/dist/config/contracts.config.d.ts +70 -0
  39. package/dist/config/contracts.config.d.ts.map +1 -0
  40. package/dist/config/contracts.config.js +137 -0
  41. package/dist/config/contracts.config.js.map +1 -0
  42. package/dist/config/environments/alpha.config.d.ts +17 -0
  43. package/dist/config/environments/alpha.config.d.ts.map +1 -0
  44. package/dist/config/environments/alpha.config.js +140 -0
  45. package/dist/config/environments/alpha.config.js.map +1 -0
  46. package/dist/config/environments/beta.config.d.ts +16 -0
  47. package/dist/config/environments/beta.config.d.ts.map +1 -0
  48. package/dist/config/environments/beta.config.js +131 -0
  49. package/dist/config/environments/beta.config.js.map +1 -0
  50. package/dist/config/environments/dev.config.d.ts +13 -0
  51. package/dist/config/environments/dev.config.d.ts.map +1 -0
  52. package/dist/config/environments/dev.config.js +123 -0
  53. package/dist/config/environments/dev.config.js.map +1 -0
  54. package/dist/config/environments/index.d.ts +48 -0
  55. package/dist/config/environments/index.d.ts.map +1 -0
  56. package/dist/config/environments/index.js +81 -0
  57. package/dist/config/environments/index.js.map +1 -0
  58. package/dist/config/environments/localhost.config.d.ts +16 -0
  59. package/dist/config/environments/localhost.config.d.ts.map +1 -0
  60. package/dist/config/environments/localhost.config.js +152 -0
  61. package/dist/config/environments/localhost.config.js.map +1 -0
  62. package/dist/config/environments/prod.config.d.ts +20 -0
  63. package/dist/config/environments/prod.config.d.ts.map +1 -0
  64. package/dist/config/environments/prod.config.js +143 -0
  65. package/dist/config/environments/prod.config.js.map +1 -0
  66. package/dist/config/index.d.ts +7 -0
  67. package/dist/config/index.d.ts.map +1 -0
  68. package/dist/config/index.js +41 -0
  69. package/dist/config/index.js.map +1 -0
  70. package/dist/constants/assets.d.ts +76 -0
  71. package/dist/constants/assets.d.ts.map +1 -0
  72. package/dist/constants/assets.js +277 -0
  73. package/dist/constants/assets.js.map +1 -0
  74. package/dist/constants/contracts.d.ts +41 -0
  75. package/dist/constants/contracts.d.ts.map +1 -0
  76. package/dist/constants/contracts.js +57 -0
  77. package/dist/constants/contracts.js.map +1 -0
  78. package/dist/constants/index.d.ts +36 -0
  79. package/dist/constants/index.d.ts.map +1 -0
  80. package/dist/constants/index.js +75 -0
  81. package/dist/constants/index.js.map +1 -0
  82. package/dist/constants/networks.d.ts +32 -0
  83. package/dist/constants/networks.d.ts.map +1 -0
  84. package/dist/constants/networks.js +174 -0
  85. package/dist/constants/networks.js.map +1 -0
  86. package/dist/contracts/index.d.ts +5 -0
  87. package/dist/contracts/index.d.ts.map +1 -0
  88. package/dist/contracts/index.js +21 -0
  89. package/dist/contracts/index.js.map +1 -0
  90. package/dist/contracts/viem/AlphaViem.d.ts +518 -0
  91. package/dist/contracts/viem/AlphaViem.d.ts.map +1 -0
  92. package/dist/contracts/viem/AlphaViem.js +1287 -0
  93. package/dist/contracts/viem/AlphaViem.js.map +1 -0
  94. package/dist/contracts/viem/PriceOracleViem.d.ts +71 -0
  95. package/dist/contracts/viem/PriceOracleViem.d.ts.map +1 -0
  96. package/dist/contracts/viem/PriceOracleViem.js +212 -0
  97. package/dist/contracts/viem/PriceOracleViem.js.map +1 -0
  98. package/dist/contracts/viem/index.d.ts +9 -0
  99. package/dist/contracts/viem/index.d.ts.map +1 -0
  100. package/dist/contracts/viem/index.js +17 -0
  101. package/dist/contracts/viem/index.js.map +1 -0
  102. package/dist/errors/index.d.ts +44 -0
  103. package/dist/errors/index.d.ts.map +1 -0
  104. package/dist/errors/index.js +83 -0
  105. package/dist/errors/index.js.map +1 -0
  106. package/dist/index.d.ts +19 -0
  107. package/dist/index.d.ts.map +1 -0
  108. package/dist/index.js +60 -0
  109. package/dist/index.js.map +1 -0
  110. package/dist/types/alpha.d.ts +299 -0
  111. package/dist/types/alpha.d.ts.map +1 -0
  112. package/dist/types/alpha.js +6 -0
  113. package/dist/types/alpha.js.map +1 -0
  114. package/dist/types/client.d.ts +24 -0
  115. package/dist/types/client.d.ts.map +1 -0
  116. package/dist/types/client.js +13 -0
  117. package/dist/types/client.js.map +1 -0
  118. package/dist/types/contracts.d.ts +48 -0
  119. package/dist/types/contracts.d.ts.map +1 -0
  120. package/dist/types/contracts.js +6 -0
  121. package/dist/types/contracts.js.map +1 -0
  122. package/dist/types/funding.d.ts +27 -0
  123. package/dist/types/funding.d.ts.map +1 -0
  124. package/dist/types/funding.js +6 -0
  125. package/dist/types/funding.js.map +1 -0
  126. package/dist/types/index.d.ts +92 -0
  127. package/dist/types/index.d.ts.map +1 -0
  128. package/dist/types/index.js +47 -0
  129. package/dist/types/index.js.map +1 -0
  130. package/dist/types/liquidation.d.ts +20 -0
  131. package/dist/types/liquidation.d.ts.map +1 -0
  132. package/dist/types/liquidation.js +6 -0
  133. package/dist/types/liquidation.js.map +1 -0
  134. package/dist/types/margin.d.ts +29 -0
  135. package/dist/types/margin.d.ts.map +1 -0
  136. package/dist/types/margin.js +6 -0
  137. package/dist/types/margin.js.map +1 -0
  138. package/dist/types/oracle.d.ts +21 -0
  139. package/dist/types/oracle.d.ts.map +1 -0
  140. package/dist/types/oracle.js +6 -0
  141. package/dist/types/oracle.js.map +1 -0
  142. package/dist/types/positions.d.ts +43 -0
  143. package/dist/types/positions.d.ts.map +1 -0
  144. package/dist/types/positions.js +13 -0
  145. package/dist/types/positions.js.map +1 -0
  146. package/dist/utils/calculations.d.ts +84 -0
  147. package/dist/utils/calculations.d.ts.map +1 -0
  148. package/dist/utils/calculations.js +155 -0
  149. package/dist/utils/calculations.js.map +1 -0
  150. package/dist/utils/errors.d.ts +24 -0
  151. package/dist/utils/errors.d.ts.map +1 -0
  152. package/dist/utils/errors.js +129 -0
  153. package/dist/utils/errors.js.map +1 -0
  154. package/dist/utils/events.d.ts +40 -0
  155. package/dist/utils/events.d.ts.map +1 -0
  156. package/dist/utils/events.js +73 -0
  157. package/dist/utils/events.js.map +1 -0
  158. package/dist/utils/format.d.ts +40 -0
  159. package/dist/utils/format.d.ts.map +1 -0
  160. package/dist/utils/format.js +86 -0
  161. package/dist/utils/format.js.map +1 -0
  162. package/dist/utils/index.d.ts +10 -0
  163. package/dist/utils/index.d.ts.map +1 -0
  164. package/dist/utils/index.js +26 -0
  165. package/dist/utils/index.js.map +1 -0
  166. package/dist/utils/network.d.ts +52 -0
  167. package/dist/utils/network.d.ts.map +1 -0
  168. package/dist/utils/network.js +192 -0
  169. package/dist/utils/network.js.map +1 -0
  170. package/dist/utils/positionCalculations.d.ts +145 -0
  171. package/dist/utils/positionCalculations.d.ts.map +1 -0
  172. package/dist/utils/positionCalculations.js +278 -0
  173. package/dist/utils/positionCalculations.js.map +1 -0
  174. package/dist/utils/validation.d.ts +28 -0
  175. package/dist/utils/validation.d.ts.map +1 -0
  176. package/dist/utils/validation.js +68 -0
  177. package/dist/utils/validation.js.map +1 -0
  178. package/docs/README.md +40 -0
  179. package/docs/api/API.md +831 -0
  180. package/docs/guides/GETTING_STARTED.md +316 -0
  181. package/docs/guides/TRADING_GUIDE.md +677 -0
  182. package/docs/integration/INTEGRATION_GUIDE.md +1679 -0
  183. package/docs/integration/VIEM_INTEGRATION.md +294 -0
  184. package/docs/reference/CLI_QUICK_REFERENCE.md +197 -0
  185. package/docs/reference/TROUBLESHOOTING.md +922 -0
  186. package/package.json +113 -0
  187. package/src/AlphaFuturesClient.ts +158 -0
  188. package/src/abi/.gitkeep +1 -0
  189. package/src/abi/Alpha.json +5987 -0
  190. package/src/abi/README.md +99 -0
  191. package/src/abi/abis.ts +131 -0
  192. package/src/abi/index.ts +13 -0
  193. package/src/config/contracts.config.ts +186 -0
  194. package/src/config/environments/alpha.config.ts +139 -0
  195. package/src/config/environments/beta.config.ts +130 -0
  196. package/src/config/environments/dev.config.ts +122 -0
  197. package/src/config/environments/index.ts +87 -0
  198. package/src/config/environments/localhost.config.ts +153 -0
  199. package/src/config/environments/prod.config.ts +142 -0
  200. package/src/config/index.ts +29 -0
  201. package/src/constants/assets.ts +299 -0
  202. package/src/constants/contracts.ts +64 -0
  203. package/src/constants/index.ts +69 -0
  204. package/src/constants/networks.ts +182 -0
  205. package/src/contracts/index.ts +5 -0
  206. package/src/contracts/viem/AlphaViem.ts +1615 -0
  207. package/src/contracts/viem/PriceOracleViem.ts +272 -0
  208. package/src/contracts/viem/index.ts +11 -0
  209. package/src/errors/index.ts +87 -0
  210. package/src/index.ts +59 -0
  211. package/src/types/VIEM_TYPES_README.md +70 -0
  212. package/src/types/alpha.ts +358 -0
  213. package/src/types/client.ts +27 -0
  214. package/src/types/contracts.ts +74 -0
  215. package/src/types/funding.ts +31 -0
  216. package/src/types/index.ts +108 -0
  217. package/src/types/liquidation.ts +23 -0
  218. package/src/types/margin.ts +34 -0
  219. package/src/types/oracle.ts +24 -0
  220. package/src/types/positions.ts +48 -0
  221. package/src/utils/calculations.ts +175 -0
  222. package/src/utils/errors.ts +147 -0
  223. package/src/utils/events.ts +98 -0
  224. package/src/utils/format.ts +84 -0
  225. package/src/utils/index.ts +10 -0
  226. package/src/utils/network.ts +212 -0
  227. package/src/utils/positionCalculations.ts +317 -0
  228. package/src/utils/validation.ts +76 -0
@@ -0,0 +1,137 @@
1
+ "use strict";
2
+ /**
3
+ * Contract configuration management for Alpha Futures SDK
4
+ * Handles loading and managing contract addresses across different networks
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.contractsConfig = exports.ContractsConfig = void 0;
8
+ // Contract configuration management
9
+ const networks_1 = require("../constants/networks");
10
+ class ContractsConfig {
11
+ constructor() {
12
+ this.deployments = new Map();
13
+ this.overrides = new Map();
14
+ // No filesystem loading - use static network configurations only
15
+ }
16
+ /**
17
+ * Gets the singleton instance
18
+ */
19
+ static getInstance() {
20
+ if (!ContractsConfig.instance) {
21
+ ContractsConfig.instance = new ContractsConfig();
22
+ }
23
+ return ContractsConfig.instance;
24
+ }
25
+ /**
26
+ * Gets contract addresses for a network
27
+ */
28
+ getContractAddresses(network) {
29
+ if (!(0, networks_1.isValidNetwork)(network)) {
30
+ throw new Error(`Invalid network: ${network}`);
31
+ }
32
+ // Start with default addresses from network config
33
+ const networkConfig = networks_1.NETWORK_CONFIGS[network];
34
+ const addresses = {
35
+ alpha: networkConfig.contracts.alpha || '0x0000000000000000000000000000000000000000',
36
+ priceOracle: networkConfig.contracts.priceOracle ||
37
+ '0x0000000000000000000000000000000000000000',
38
+ collateralToken: networkConfig.contracts.collateralToken ||
39
+ '0x0000000000000000000000000000000000000000',
40
+ };
41
+ // Apply deployment addresses if available
42
+ const deployment = this.deployments.get(network);
43
+ if (deployment) {
44
+ for (const [contractName, contractData] of Object.entries(deployment.contracts)) {
45
+ const key = this.normalizeContractName(contractName);
46
+ if (key in addresses) {
47
+ addresses[key] = contractData.address;
48
+ }
49
+ }
50
+ }
51
+ // Apply any overrides
52
+ const overrides = this.overrides.get(network);
53
+ if (overrides) {
54
+ Object.assign(addresses, overrides);
55
+ }
56
+ return addresses;
57
+ }
58
+ /**
59
+ * Normalizes contract names to match the expected format
60
+ */
61
+ normalizeContractName(name) {
62
+ // Convert from PascalCase to camelCase
63
+ const camelCase = name.charAt(0).toLowerCase() + name.slice(1);
64
+ // Handle special cases
65
+ const mappings = {
66
+ collateralToken: 'collateralToken',
67
+ CollateralToken: 'collateralToken',
68
+ };
69
+ return mappings[camelCase] || camelCase;
70
+ }
71
+ /**
72
+ * Sets contract address overrides for a network
73
+ */
74
+ setContractOverrides(network, overrides) {
75
+ if (!(0, networks_1.isValidNetwork)(network)) {
76
+ throw new Error(`Invalid network: ${network}`);
77
+ }
78
+ this.overrides.set(network, overrides);
79
+ }
80
+ /**
81
+ * Clears contract address overrides for a network
82
+ */
83
+ clearContractOverrides(network) {
84
+ this.overrides.delete(network);
85
+ }
86
+ /**
87
+ * Gets deployment information for a network
88
+ */
89
+ getDeploymentInfo(network) {
90
+ return this.deployments.get(network);
91
+ }
92
+ /**
93
+ * Updates contract configuration with new addresses
94
+ */
95
+ updateNetworkConfig(network, addresses) {
96
+ if (!(0, networks_1.isValidNetwork)(network)) {
97
+ throw new Error(`Invalid network: ${network}`);
98
+ }
99
+ // Update the network config
100
+ networks_1.NETWORK_CONFIGS[network].contracts = addresses;
101
+ // Also update in deployments if exists
102
+ const deployment = this.deployments.get(network);
103
+ if (deployment) {
104
+ for (const [key, address] of Object.entries(addresses)) {
105
+ const contractName = key.charAt(0).toUpperCase() + key.slice(1);
106
+ if (!deployment.contracts[contractName]) {
107
+ deployment.contracts[contractName] = {
108
+ address,
109
+ transactionHash: '0x0',
110
+ blockNumber: 0,
111
+ };
112
+ }
113
+ else {
114
+ deployment.contracts[contractName].address = address;
115
+ }
116
+ }
117
+ }
118
+ }
119
+ /**
120
+ * Validates that all required contracts are deployed for a network
121
+ */
122
+ validateDeployment(network) {
123
+ const addresses = this.getContractAddresses(network);
124
+ const required = ['alpha', 'priceOracle', 'collateralToken'];
125
+ const missing = required.filter((contract) => !addresses[contract] ||
126
+ addresses[contract] ===
127
+ '0x0000000000000000000000000000000000000000');
128
+ return {
129
+ valid: missing.length === 0,
130
+ missing,
131
+ };
132
+ }
133
+ }
134
+ exports.ContractsConfig = ContractsConfig;
135
+ // Export singleton instance
136
+ exports.contractsConfig = ContractsConfig.getInstance();
137
+ //# sourceMappingURL=contracts.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contracts.config.js","sourceRoot":"","sources":["../../src/config/contracts.config.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,oCAAoC;AACpC,oDAAwE;AA4BxE,MAAa,eAAe;IAK1B;QAHQ,gBAAW,GAAgC,IAAI,GAAG,EAAE,CAAC;QACrD,cAAS,GAA4C,IAAI,GAAG,EAAE,CAAC;QAGrE,iEAAiE;IACnE,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,WAAW;QACvB,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;YAC9B,eAAe,CAAC,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;QACnD,CAAC;QACD,OAAO,eAAe,CAAC,QAAQ,CAAC;IAClC,CAAC;IAED;;OAEG;IACI,oBAAoB,CAAC,OAAe;QACzC,IAAI,CAAC,IAAA,yBAAc,EAAC,OAAO,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;QACjD,CAAC;QAED,mDAAmD;QACnD,MAAM,aAAa,GAAG,0BAAe,CAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,SAAS,GAAsB;YACnC,KAAK,EACH,aAAa,CAAC,SAAS,CAAC,KAAK,IAAK,4CAAwD;YAC5F,WAAW,EACT,aAAa,CAAC,SAAS,CAAC,WAAW;gBAClC,4CAAwD;YAC3D,eAAe,EACb,aAAa,CAAC,SAAS,CAAC,eAAe;gBACtC,4CAAwD;SAC5D,CAAC;QAEF,0CAA0C;QAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACjD,IAAI,UAAU,EAAE,CAAC;YACf,KAAK,MAAM,CAAC,YAAY,EAAE,YAAY,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAChF,MAAM,GAAG,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;gBACrD,IAAI,GAAG,IAAI,SAAS,EAAE,CAAC;oBACpB,SAAiB,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC;gBACjD,CAAC;YACH,CAAC;QACH,CAAC;QAED,sBAAsB;QACtB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACtC,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACK,qBAAqB,CAAC,IAAY;QACxC,uCAAuC;QACvC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAE/D,uBAAuB;QACvB,MAAM,QAAQ,GAA8B;YAC1C,eAAe,EAAE,iBAAiB;YAClC,eAAe,EAAE,iBAAiB;SACnC,CAAC;QAEF,OAAO,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC;IAC1C,CAAC;IAED;;OAEG;IACI,oBAAoB,CAAC,OAAe,EAAE,SAAqC;QAChF,IAAI,CAAC,IAAA,yBAAc,EAAC,OAAO,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;QACjD,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACI,sBAAsB,CAAC,OAAe;QAC3C,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACI,iBAAiB,CAAC,OAAe;QACtC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACI,mBAAmB,CAAC,OAAe,EAAE,SAA4B;QACtE,IAAI,CAAC,IAAA,yBAAc,EAAC,OAAO,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;QACjD,CAAC;QAED,4BAA4B;QAC5B,0BAAe,CAAC,OAAO,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC;QAE/C,uCAAuC;QACvC,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACjD,IAAI,UAAU,EAAE,CAAC;YACf,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gBACvD,MAAM,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAChE,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC;oBACxC,UAAU,CAAC,SAAS,CAAC,YAAY,CAAC,GAAG;wBACnC,OAAO;wBACP,eAAe,EAAE,KAAK;wBACtB,WAAW,EAAE,CAAC;qBACf,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,UAAU,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC;gBACvD,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACI,kBAAkB,CAAC,OAAe;QACvC,MAAM,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACrD,MAAM,QAAQ,GAAG,CAAC,OAAO,EAAE,aAAa,EAAE,iBAAiB,CAAC,CAAC;QAE7D,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAC7B,CAAC,QAAQ,EAAE,EAAE,CACX,CAAC,SAAS,CAAC,QAAmC,CAAC;YAC/C,SAAS,CAAC,QAAmC,CAAC;gBAC5C,4CAA4C,CACjD,CAAC;QAEF,OAAO;YACL,KAAK,EAAE,OAAO,CAAC,MAAM,KAAK,CAAC;YAC3B,OAAO;SACR,CAAC;IACJ,CAAC;CACF;AApJD,0CAoJC;AAED,4BAA4B;AACf,QAAA,eAAe,GAAG,eAAe,CAAC,WAAW,EAAE,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Alpha Environment Configuration (Bittensor Mainnet - Testing)
3
+ *
4
+ * Collateral: Mock wTAO with 18 decimals
5
+ * Markets: 12 Bittensor subnets
6
+ * Network: Bittensor Finney (Chain ID: 964)
7
+ *
8
+ * LAST SYNCED: 2026-02-13
9
+ * DEPLOYMENT: deployments/alpha/deployment.json
10
+ *
11
+ * NOTE: This environment is deployed on Bittensor mainnet.
12
+ * Deployment Timestamp: 1769197297 (January 2026)
13
+ * Deployer: 0xa3A00185748B64eDA4149745415080cBA720E720
14
+ */
15
+ import { NetworkConfig } from '../../types';
16
+ export declare const ALPHA_CONFIG: NetworkConfig;
17
+ //# sourceMappingURL=alpha.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alpha.config.d.ts","sourceRoot":"","sources":["../../../src/config/environments/alpha.config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,eAAO,MAAM,YAAY,EAAE,aAyH1B,CAAC"}
@@ -0,0 +1,140 @@
1
+ "use strict";
2
+ /**
3
+ * Alpha Environment Configuration (Bittensor Mainnet - Testing)
4
+ *
5
+ * Collateral: Mock wTAO with 18 decimals
6
+ * Markets: 12 Bittensor subnets
7
+ * Network: Bittensor Finney (Chain ID: 964)
8
+ *
9
+ * LAST SYNCED: 2026-02-13
10
+ * DEPLOYMENT: deployments/alpha/deployment.json
11
+ *
12
+ * NOTE: This environment is deployed on Bittensor mainnet.
13
+ * Deployment Timestamp: 1769197297 (January 2026)
14
+ * Deployer: 0xa3A00185748B64eDA4149745415080cBA720E720
15
+ */
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.ALPHA_CONFIG = void 0;
18
+ exports.ALPHA_CONFIG = {
19
+ chainId: 964,
20
+ name: 'Alpha Futures - Bittensor Mainnet',
21
+ rpcUrl: 'https://bittensor-finney.api.onfinality.io/public', // Primary RPC
22
+ blockExplorer: 'https://evm.taostats.io/',
23
+ contracts: {
24
+ alpha: '0x5E29Ac73dFbc5906971343a191c1fc37C41286f7', // Alpha Futures Protocol (Proxy)
25
+ priceOracle: '0x30583DDB209128566A5433DA3384023d3575b20d',
26
+ collateralToken: '0x0000000000000000000000000000000000000000', // Mock wTAO Token
27
+ },
28
+ collateralTokenInfo: {
29
+ symbol: 'TAO',
30
+ decimals: 18,
31
+ name: 'TAO',
32
+ },
33
+ markets: [
34
+ {
35
+ id: 64,
36
+ name: 'Chutes',
37
+ marketAddress: '0x0000000000000000000000000000000000000040',
38
+ symbol: 'CHUTES',
39
+ displayName: 'Chutes (SN64)',
40
+ hasOraclePrice: true,
41
+ },
42
+ {
43
+ id: 51,
44
+ name: 'lium.io',
45
+ marketAddress: '0x0000000000000000000000000000000000000033',
46
+ symbol: 'LIUM',
47
+ displayName: 'lium.io (SN51)',
48
+ hasOraclePrice: true,
49
+ },
50
+ {
51
+ id: 62,
52
+ name: 'Ridges',
53
+ marketAddress: '0x000000000000000000000000000000000000003e',
54
+ symbol: 'RIDGES',
55
+ displayName: 'Ridges (SN62)',
56
+ hasOraclePrice: true,
57
+ },
58
+ {
59
+ id: 4,
60
+ name: 'Targon',
61
+ marketAddress: '0x0000000000000000000000000000000000000004',
62
+ symbol: 'TARGON',
63
+ displayName: 'Targon (SN4)',
64
+ hasOraclePrice: true,
65
+ },
66
+ {
67
+ id: 8,
68
+ name: 'Vanta',
69
+ marketAddress: '0x0000000000000000000000000000000000000008',
70
+ symbol: 'VANTA',
71
+ displayName: 'Vanta (SN8)',
72
+ hasOraclePrice: true,
73
+ },
74
+ {
75
+ id: 120,
76
+ name: 'Affine',
77
+ marketAddress: '0x0000000000000000000000000000000000000078',
78
+ symbol: 'AFFINE',
79
+ displayName: 'Affine (SN120)',
80
+ hasOraclePrice: true,
81
+ },
82
+ {
83
+ id: 3,
84
+ name: 'templar',
85
+ marketAddress: '0x0000000000000000000000000000000000000003',
86
+ symbol: 'TEMPLAR',
87
+ displayName: 'templar (SN3)',
88
+ hasOraclePrice: true,
89
+ },
90
+ {
91
+ id: 44,
92
+ name: 'Score',
93
+ marketAddress: '0x000000000000000000000000000000000000002c',
94
+ symbol: 'SCORE',
95
+ displayName: 'Score (SN44)',
96
+ hasOraclePrice: true,
97
+ },
98
+ {
99
+ id: 9,
100
+ name: 'iota',
101
+ marketAddress: '0x0000000000000000000000000000000000000009',
102
+ symbol: 'IOTA',
103
+ displayName: 'iota (SN9)',
104
+ hasOraclePrice: true,
105
+ },
106
+ {
107
+ id: 56,
108
+ name: 'Gradients',
109
+ marketAddress: '0x0000000000000000000000000000000000000038',
110
+ symbol: 'GRADIENTS',
111
+ displayName: 'Gradients (SN56)',
112
+ hasOraclePrice: true,
113
+ },
114
+ {
115
+ id: 75,
116
+ name: 'Hippius',
117
+ marketAddress: '0x000000000000000000000000000000000000004b',
118
+ symbol: 'HIPPIUS',
119
+ displayName: 'Hippius (SN75)',
120
+ hasOraclePrice: true,
121
+ },
122
+ {
123
+ id: 34,
124
+ name: 'BitMind',
125
+ marketAddress: '0x0000000000000000000000000000000000000022',
126
+ symbol: 'BITMIND',
127
+ displayName: 'BitMind (SN34)',
128
+ hasOraclePrice: true,
129
+ },
130
+ {
131
+ id: 65534,
132
+ name: 'MTSOS',
133
+ marketAddress: '0x000000000000000000000000000000000000FFFE',
134
+ symbol: 'MTSOS',
135
+ displayName: 'MegaTAO Sum-of-Subnets Index',
136
+ hasOraclePrice: true,
137
+ },
138
+ ],
139
+ };
140
+ //# sourceMappingURL=alpha.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alpha.config.js","sourceRoot":"","sources":["../../../src/config/environments/alpha.config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Beta Environment Configuration (Staging)
3
+ *
4
+ * Uses Mock USDC with 6 decimals
5
+ * 2 generic markets: ALPHA_BTC, ALPHA_ETH
6
+ * Initial vault: 1,000 USDC
7
+ *
8
+ * LAST SYNCED: 2025-12-09
9
+ * DEPLOYMENT: deployments/beta/deployment.json
10
+ *
11
+ * Deployed: 2025-12-08
12
+ * Same collateral/oracle as alpha environment
13
+ */
14
+ import { NetworkConfig } from '../../types';
15
+ export declare const BETA_CONFIG: NetworkConfig;
16
+ //# sourceMappingURL=beta.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"beta.config.d.ts","sourceRoot":"","sources":["../../../src/config/environments/beta.config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,eAAO,MAAM,WAAW,EAAE,aAiHzB,CAAC"}
@@ -0,0 +1,131 @@
1
+ "use strict";
2
+ /**
3
+ * Beta Environment Configuration (Staging)
4
+ *
5
+ * Uses Mock USDC with 6 decimals
6
+ * 2 generic markets: ALPHA_BTC, ALPHA_ETH
7
+ * Initial vault: 1,000 USDC
8
+ *
9
+ * LAST SYNCED: 2025-12-09
10
+ * DEPLOYMENT: deployments/beta/deployment.json
11
+ *
12
+ * Deployed: 2025-12-08
13
+ * Same collateral/oracle as alpha environment
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.BETA_CONFIG = void 0;
17
+ exports.BETA_CONFIG = {
18
+ chainId: 964,
19
+ name: 'Alpha Futures - Beta Staging',
20
+ rpcUrl: 'https://bittensor-finney.api.onfinality.io/public',
21
+ blockExplorer: 'https://evm.taostats.io/',
22
+ contracts: {
23
+ alpha: '0xa57D785194De368d8944c39b4c2d2F7A3F548132',
24
+ priceOracle: '0x6541318525de2FBB108a35Ecd57b14E9A5418fCC',
25
+ collateralToken: '0x26804e3F75e7ABA449FD0B46479E0a196417bFA6', // Mock USDC
26
+ },
27
+ collateralTokenInfo: {
28
+ symbol: 'USDC',
29
+ decimals: 6,
30
+ name: 'Mock USDC',
31
+ },
32
+ markets: [
33
+ {
34
+ id: 64,
35
+ name: 'Chutes',
36
+ marketAddress: '0x0000000000000000000000000000000000000040',
37
+ symbol: 'CHUTES',
38
+ displayName: 'Chutes (SN64)',
39
+ hasOraclePrice: true,
40
+ },
41
+ {
42
+ id: 51,
43
+ name: 'lium.io',
44
+ marketAddress: '0x0000000000000000000000000000000000000033',
45
+ symbol: 'LIUM',
46
+ displayName: 'lium.io (SN51)',
47
+ hasOraclePrice: true,
48
+ },
49
+ {
50
+ id: 62,
51
+ name: 'Ridges',
52
+ marketAddress: '0x000000000000000000000000000000000000003e',
53
+ symbol: 'RIDGES',
54
+ displayName: 'Ridges (SN62)',
55
+ hasOraclePrice: true,
56
+ },
57
+ {
58
+ id: 4,
59
+ name: 'Targon',
60
+ marketAddress: '0x0000000000000000000000000000000000000004',
61
+ symbol: 'TARGON',
62
+ displayName: 'Targon (SN4)',
63
+ hasOraclePrice: true,
64
+ },
65
+ {
66
+ id: 8,
67
+ name: 'Vanta',
68
+ marketAddress: '0x0000000000000000000000000000000000000008',
69
+ symbol: 'VANTA',
70
+ displayName: 'Vanta (SN8)',
71
+ hasOraclePrice: true,
72
+ },
73
+ {
74
+ id: 120,
75
+ name: 'Affine',
76
+ marketAddress: '0x0000000000000000000000000000000000000078',
77
+ symbol: 'AFFINE',
78
+ displayName: 'Affine (SN120)',
79
+ hasOraclePrice: true,
80
+ },
81
+ {
82
+ id: 3,
83
+ name: 'templar',
84
+ marketAddress: '0x0000000000000000000000000000000000000003',
85
+ symbol: 'TEMPLAR',
86
+ displayName: 'templar (SN3)',
87
+ hasOraclePrice: true,
88
+ },
89
+ {
90
+ id: 44,
91
+ name: 'Score',
92
+ marketAddress: '0x000000000000000000000000000000000000002c',
93
+ symbol: 'SCORE',
94
+ displayName: 'Score (SN44)',
95
+ hasOraclePrice: true,
96
+ },
97
+ {
98
+ id: 9,
99
+ name: 'iota',
100
+ marketAddress: '0x0000000000000000000000000000000000000009',
101
+ symbol: 'IOTA',
102
+ displayName: 'iota (SN9)',
103
+ hasOraclePrice: true,
104
+ },
105
+ {
106
+ id: 56,
107
+ name: 'Gradients',
108
+ marketAddress: '0x0000000000000000000000000000000000000038',
109
+ symbol: 'GRADIENTS',
110
+ displayName: 'Gradients (SN56)',
111
+ hasOraclePrice: true,
112
+ },
113
+ {
114
+ id: 75,
115
+ name: 'Hippius',
116
+ marketAddress: '0x000000000000000000000000000000000000004b',
117
+ symbol: 'HIPPIUS',
118
+ displayName: 'Hippius (SN75)',
119
+ hasOraclePrice: true,
120
+ },
121
+ {
122
+ id: 34,
123
+ name: 'BitMind',
124
+ marketAddress: '0x0000000000000000000000000000000000000022',
125
+ symbol: 'BITMIND',
126
+ displayName: 'BitMind (SN34)',
127
+ hasOraclePrice: true,
128
+ },
129
+ ],
130
+ };
131
+ //# sourceMappingURL=beta.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"beta.config.js","sourceRoot":"","sources":["../../../src/config/environments/beta.config.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;;;AAIU,QAAA,WAAW,GAAkB;IACxC,OAAO,EAAE,GAAG;IACZ,IAAI,EAAE,8BAA8B;IACpC,MAAM,EAAE,mDAAmD;IAC3D,aAAa,EAAE,0BAA0B;IACzC,SAAS,EAAE;QACT,KAAK,EAAE,4CAA4C;QACnD,WAAW,EAAE,4CAA4C;QACzD,eAAe,EAAE,4CAA4C,EAAE,YAAY;KAC5E;IACD,mBAAmB,EAAE;QACnB,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,CAAC;QACX,IAAI,EAAE,WAAW;KAClB;IACD,OAAO,EAAE;QACP;YACE,EAAE,EAAE,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,QAAQ;YAChB,WAAW,EAAE,eAAe;YAC5B,cAAc,EAAE,IAAI;SACrB;QACD;YACE,EAAE,EAAE,EAAE;YACN,IAAI,EAAE,SAAS;YACf,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,MAAM;YACd,WAAW,EAAE,gBAAgB;YAC7B,cAAc,EAAE,IAAI;SACrB;QACD;YACE,EAAE,EAAE,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,QAAQ;YAChB,WAAW,EAAE,eAAe;YAC5B,cAAc,EAAE,IAAI;SACrB;QACD;YACE,EAAE,EAAE,CAAC;YACL,IAAI,EAAE,QAAQ;YACd,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,QAAQ;YAChB,WAAW,EAAE,cAAc;YAC3B,cAAc,EAAE,IAAI;SACrB;QACD;YACE,EAAE,EAAE,CAAC;YACL,IAAI,EAAE,OAAO;YACb,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,OAAO;YACf,WAAW,EAAE,aAAa;YAC1B,cAAc,EAAE,IAAI;SACrB;QACD;YACE,EAAE,EAAE,GAAG;YACP,IAAI,EAAE,QAAQ;YACd,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,QAAQ;YAChB,WAAW,EAAE,gBAAgB;YAC7B,cAAc,EAAE,IAAI;SACrB;QACD;YACE,EAAE,EAAE,CAAC;YACL,IAAI,EAAE,SAAS;YACf,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,SAAS;YACjB,WAAW,EAAE,eAAe;YAC5B,cAAc,EAAE,IAAI;SACrB;QACD;YACE,EAAE,EAAE,EAAE;YACN,IAAI,EAAE,OAAO;YACb,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,OAAO;YACf,WAAW,EAAE,cAAc;YAC3B,cAAc,EAAE,IAAI;SACrB;QACD;YACE,EAAE,EAAE,CAAC;YACL,IAAI,EAAE,MAAM;YACZ,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,MAAM;YACd,WAAW,EAAE,YAAY;YACzB,cAAc,EAAE,IAAI;SACrB;QACD;YACE,EAAE,EAAE,EAAE;YACN,IAAI,EAAE,WAAW;YACjB,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,WAAW;YACnB,WAAW,EAAE,kBAAkB;YAC/B,cAAc,EAAE,IAAI;SACrB;QACD;YACE,EAAE,EAAE,EAAE;YACN,IAAI,EAAE,SAAS;YACf,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,SAAS;YACjB,WAAW,EAAE,gBAAgB;YAC7B,cAAc,EAAE,IAAI;SACrB;QACD;YACE,EAAE,EAAE,EAAE;YACN,IAAI,EAAE,SAAS;YACf,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,SAAS;YACjB,WAAW,EAAE,gBAAgB;YAC7B,cAAc,EAAE,IAAI;SACrB;KACF;CACF,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Development Environment Configuration
3
+ *
4
+ * Uses Mock TAO (WTAO) with 18 decimals
5
+ * 4 subnet markets: BitMind, Chutes, Affine, Ridges
6
+ * Initial vault: 3,103.45 TAO
7
+ *
8
+ * LAST SYNCED: 2025-11-05
9
+ * DEPLOYMENT: deployments/dev/deployment.json
10
+ */
11
+ import { NetworkConfig } from '../../types';
12
+ export declare const DEV_CONFIG: NetworkConfig;
13
+ //# sourceMappingURL=dev.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev.config.d.ts","sourceRoot":"","sources":["../../../src/config/environments/dev.config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,eAAO,MAAM,UAAU,EAAE,aA4GxB,CAAC"}
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+ /**
3
+ * Development Environment Configuration
4
+ *
5
+ * Uses Mock TAO (WTAO) with 18 decimals
6
+ * 4 subnet markets: BitMind, Chutes, Affine, Ridges
7
+ * Initial vault: 3,103.45 TAO
8
+ *
9
+ * LAST SYNCED: 2025-11-05
10
+ * DEPLOYMENT: deployments/dev/deployment.json
11
+ */
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.DEV_CONFIG = void 0;
14
+ exports.DEV_CONFIG = {
15
+ chainId: 964,
16
+ name: 'Alpha Futures - Development',
17
+ rpcUrl: 'https://bittensor-finney.api.onfinality.io/public',
18
+ blockExplorer: 'https://evm.taostats.io/',
19
+ contracts: {
20
+ alpha: '0x04C1E717BBD3A18353b1f2D426c0E3B96514794B',
21
+ priceOracle: '0x6541318525de2FBB108a35Ecd57b14E9A5418fCC',
22
+ collateralToken: '0xA4B080fd023249170e759dcA1C2Ae23792DD6b66', // Mock TAO (WTAO)
23
+ },
24
+ markets: [
25
+ {
26
+ id: 64,
27
+ name: 'Chutes',
28
+ marketAddress: '0x0000000000000000000000000000000000000040',
29
+ symbol: 'CHUTES',
30
+ displayName: 'Chutes (SN64)',
31
+ hasOraclePrice: false,
32
+ },
33
+ {
34
+ id: 51,
35
+ name: 'lium.io',
36
+ marketAddress: '0x0000000000000000000000000000000000000033',
37
+ symbol: 'LIUM',
38
+ displayName: 'lium.io (SN51)',
39
+ hasOraclePrice: false,
40
+ },
41
+ {
42
+ id: 62,
43
+ name: 'Ridges',
44
+ marketAddress: '0x000000000000000000000000000000000000003e',
45
+ symbol: 'RIDGES',
46
+ displayName: 'Ridges (SN62)',
47
+ hasOraclePrice: false,
48
+ },
49
+ {
50
+ id: 4,
51
+ name: 'Targon',
52
+ marketAddress: '0x0000000000000000000000000000000000000004',
53
+ symbol: 'TARGON',
54
+ displayName: 'Targon (SN4)',
55
+ hasOraclePrice: false,
56
+ },
57
+ {
58
+ id: 8,
59
+ name: 'Vanta',
60
+ marketAddress: '0x0000000000000000000000000000000000000008',
61
+ symbol: 'VANTA',
62
+ displayName: 'Vanta (SN8)',
63
+ hasOraclePrice: false,
64
+ },
65
+ {
66
+ id: 120,
67
+ name: 'Affine',
68
+ marketAddress: '0x0000000000000000000000000000000000000078',
69
+ symbol: 'AFFINE',
70
+ displayName: 'Affine (SN120)',
71
+ hasOraclePrice: false,
72
+ },
73
+ {
74
+ id: 3,
75
+ name: 'templar',
76
+ marketAddress: '0x0000000000000000000000000000000000000003',
77
+ symbol: 'TEMPLAR',
78
+ displayName: 'templar (SN3)',
79
+ hasOraclePrice: false,
80
+ },
81
+ {
82
+ id: 44,
83
+ name: 'Score',
84
+ marketAddress: '0x000000000000000000000000000000000000002c',
85
+ symbol: 'SCORE',
86
+ displayName: 'Score (SN44)',
87
+ hasOraclePrice: false,
88
+ },
89
+ {
90
+ id: 9,
91
+ name: 'iota',
92
+ marketAddress: '0x0000000000000000000000000000000000000009',
93
+ symbol: 'IOTA',
94
+ displayName: 'iota (SN9)',
95
+ hasOraclePrice: false,
96
+ },
97
+ {
98
+ id: 56,
99
+ name: 'Gradients',
100
+ marketAddress: '0x0000000000000000000000000000000000000038',
101
+ symbol: 'GRADIENTS',
102
+ displayName: 'Gradients (SN56)',
103
+ hasOraclePrice: false,
104
+ },
105
+ {
106
+ id: 75,
107
+ name: 'Hippius',
108
+ marketAddress: '0x000000000000000000000000000000000000004b',
109
+ symbol: 'HIPPIUS',
110
+ displayName: 'Hippius (SN75)',
111
+ hasOraclePrice: false,
112
+ },
113
+ {
114
+ id: 34,
115
+ name: 'BitMind',
116
+ marketAddress: '0x0000000000000000000000000000000000000022',
117
+ symbol: 'BITMIND',
118
+ displayName: 'BitMind (SN34)',
119
+ hasOraclePrice: false,
120
+ },
121
+ ],
122
+ };
123
+ //# sourceMappingURL=dev.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev.config.js","sourceRoot":"","sources":["../../../src/config/environments/dev.config.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAIU,QAAA,UAAU,GAAkB;IACvC,OAAO,EAAE,GAAG;IACZ,IAAI,EAAE,6BAA6B;IACnC,MAAM,EAAE,mDAAmD;IAC3D,aAAa,EAAE,0BAA0B;IACzC,SAAS,EAAE;QACT,KAAK,EAAE,4CAA4C;QACnD,WAAW,EAAE,4CAA4C;QACzD,eAAe,EAAE,4CAA4C,EAAE,kBAAkB;KAClF;IACD,OAAO,EAAE;QACP;YACE,EAAE,EAAE,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,QAAQ;YAChB,WAAW,EAAE,eAAe;YAC5B,cAAc,EAAE,KAAK;SACtB;QACD;YACE,EAAE,EAAE,EAAE;YACN,IAAI,EAAE,SAAS;YACf,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,MAAM;YACd,WAAW,EAAE,gBAAgB;YAC7B,cAAc,EAAE,KAAK;SACtB;QACD;YACE,EAAE,EAAE,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,QAAQ;YAChB,WAAW,EAAE,eAAe;YAC5B,cAAc,EAAE,KAAK;SACtB;QACD;YACE,EAAE,EAAE,CAAC;YACL,IAAI,EAAE,QAAQ;YACd,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,QAAQ;YAChB,WAAW,EAAE,cAAc;YAC3B,cAAc,EAAE,KAAK;SACtB;QACD;YACE,EAAE,EAAE,CAAC;YACL,IAAI,EAAE,OAAO;YACb,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,OAAO;YACf,WAAW,EAAE,aAAa;YAC1B,cAAc,EAAE,KAAK;SACtB;QACD;YACE,EAAE,EAAE,GAAG;YACP,IAAI,EAAE,QAAQ;YACd,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,QAAQ;YAChB,WAAW,EAAE,gBAAgB;YAC7B,cAAc,EAAE,KAAK;SACtB;QACD;YACE,EAAE,EAAE,CAAC;YACL,IAAI,EAAE,SAAS;YACf,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,SAAS;YACjB,WAAW,EAAE,eAAe;YAC5B,cAAc,EAAE,KAAK;SACtB;QACD;YACE,EAAE,EAAE,EAAE;YACN,IAAI,EAAE,OAAO;YACb,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,OAAO;YACf,WAAW,EAAE,cAAc;YAC3B,cAAc,EAAE,KAAK;SACtB;QACD;YACE,EAAE,EAAE,CAAC;YACL,IAAI,EAAE,MAAM;YACZ,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,MAAM;YACd,WAAW,EAAE,YAAY;YACzB,cAAc,EAAE,KAAK;SACtB;QACD;YACE,EAAE,EAAE,EAAE;YACN,IAAI,EAAE,WAAW;YACjB,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,WAAW;YACnB,WAAW,EAAE,kBAAkB;YAC/B,cAAc,EAAE,KAAK;SACtB;QACD;YACE,EAAE,EAAE,EAAE;YACN,IAAI,EAAE,SAAS;YACf,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,SAAS;YACjB,WAAW,EAAE,gBAAgB;YAC7B,cAAc,EAAE,KAAK;SACtB;QACD;YACE,EAAE,EAAE,EAAE;YACN,IAAI,EAAE,SAAS;YACf,aAAa,EAAE,4CAA4C;YAC3D,MAAM,EAAE,SAAS;YACjB,WAAW,EAAE,gBAAgB;YAC7B,cAAc,EAAE,KAAK;SACtB;KACF;CACF,CAAC"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Environment configurations for Alpha Futures Protocol
3
+ *
4
+ * Provides environment-specific configurations for different deployment stages:
5
+ * - dev: Development environment with Mock TAO
6
+ * - alpha: Internal testing with Mock USDC
7
+ * - beta: Staging environment with Mock USDC
8
+ * - prod: Production environment with Real USDC
9
+ */
10
+ import { NetworkConfig } from '../../types';
11
+ import { DEV_CONFIG } from './dev.config';
12
+ import { ALPHA_CONFIG } from './alpha.config';
13
+ import { BETA_CONFIG } from './beta.config';
14
+ import { PROD_CONFIG } from './prod.config';
15
+ import { LOCALHOST_CONFIG } from './localhost.config';
16
+ export type Environment = 'localhost' | 'dev' | 'alpha' | 'beta' | 'prod';
17
+ /**
18
+ * Environment configurations mapped by environment name
19
+ */
20
+ export declare const ENVIRONMENT_CONFIGS: Record<Environment, NetworkConfig>;
21
+ /**
22
+ * Get configuration for a specific environment
23
+ * @param environment - The environment to get configuration for
24
+ * @returns Network configuration for the specified environment
25
+ * @throws Error if environment is invalid
26
+ */
27
+ export declare function getEnvironmentConfig(environment: Environment): NetworkConfig;
28
+ /**
29
+ * Check if an environment name is valid
30
+ * @param environment - The environment name to validate
31
+ * @returns True if the environment is valid
32
+ */
33
+ export declare function isValidEnvironment(environment: string): environment is Environment;
34
+ /**
35
+ * Get all available environments
36
+ * @returns Array of all valid environment names
37
+ */
38
+ export declare function getAvailableEnvironments(): Environment[];
39
+ /**
40
+ * Get environment name by chain ID and contract address
41
+ * Useful for determining which environment a user is connected to
42
+ * @param chainId - The chain ID to match
43
+ * @param alphaAddress - The alpha contract address to match
44
+ * @returns The environment name or undefined if not found
45
+ */
46
+ export declare function getEnvironmentByAddress(chainId: number, alphaAddress: string): Environment | undefined;
47
+ export { LOCALHOST_CONFIG, DEV_CONFIG, ALPHA_CONFIG, BETA_CONFIG, PROD_CONFIG };
48
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/config/environments/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAE1E;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,WAAW,EAAE,aAAa,CAMlE,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,WAAW,GAAG,aAAa,CAQ5E;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,WAAW,IAAI,WAAW,CAElF;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,WAAW,EAAE,CAExD;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,GACnB,WAAW,GAAG,SAAS,CAUzB;AAGD,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC"}