agentwallet-sdk 3.3.0 → 3.4.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 (320) hide show
  1. package/README.md +2 -536
  2. package/dist/bridge/abis.d.ts +48 -171
  3. package/dist/bridge/abis.d.ts.map +1 -1
  4. package/dist/bridge/abis.js.map +1 -1
  5. package/dist/bridge/client.d.ts +2 -41
  6. package/dist/bridge/client.d.ts.map +1 -1
  7. package/dist/bridge/client.js +35 -168
  8. package/dist/bridge/client.js.map +1 -1
  9. package/dist/bridge/index.d.ts +2 -4
  10. package/dist/bridge/index.d.ts.map +1 -1
  11. package/dist/bridge/index.js +1 -8
  12. package/dist/bridge/index.js.map +1 -1
  13. package/dist/bridge/types.d.ts +15 -134
  14. package/dist/bridge/types.d.ts.map +1 -1
  15. package/dist/bridge/types.js +16 -170
  16. package/dist/bridge/types.js.map +1 -1
  17. package/dist/identity/erc8004.d.ts +2 -240
  18. package/dist/identity/erc8004.d.ts.map +1 -1
  19. package/dist/identity/erc8004.js +58 -334
  20. package/dist/identity/erc8004.js.map +1 -1
  21. package/dist/index.d.ts +313 -136
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +11 -59
  24. package/dist/index.js.map +1 -1
  25. package/dist/swap/SwapModule.d.ts +6 -50
  26. package/dist/swap/SwapModule.d.ts.map +1 -1
  27. package/dist/swap/SwapModule.js +25 -153
  28. package/dist/swap/SwapModule.js.map +1 -1
  29. package/dist/swap/abi.d.ts +47 -165
  30. package/dist/swap/abi.d.ts.map +1 -1
  31. package/dist/swap/abi.js.map +1 -1
  32. package/dist/swap/index.d.ts +2 -3
  33. package/dist/swap/index.d.ts.map +1 -1
  34. package/dist/swap/index.js +1 -4
  35. package/dist/swap/index.js.map +1 -1
  36. package/dist/swap/types.d.ts +6 -36
  37. package/dist/swap/types.d.ts.map +1 -1
  38. package/dist/swap/types.js +0 -1
  39. package/dist/swap/types.js.map +1 -1
  40. package/dist/types.d.ts +1 -2
  41. package/dist/types.d.ts.map +1 -1
  42. package/dist/types.js +0 -1
  43. package/dist/types.js.map +1 -1
  44. package/dist/x402/__tests__/budget.test.d.ts +2 -0
  45. package/dist/x402/__tests__/budget.test.d.ts.map +1 -0
  46. package/dist/x402/__tests__/budget.test.js +114 -0
  47. package/dist/x402/__tests__/budget.test.js.map +1 -0
  48. package/dist/x402/__tests__/client.test.d.ts +2 -0
  49. package/dist/x402/__tests__/client.test.d.ts.map +1 -0
  50. package/dist/x402/__tests__/client.test.js +107 -0
  51. package/dist/x402/__tests__/client.test.js.map +1 -0
  52. package/dist/x402/chains/abstract/index.d.ts +135 -0
  53. package/dist/x402/chains/abstract/index.d.ts.map +1 -0
  54. package/dist/x402/chains/abstract/index.js +190 -0
  55. package/dist/x402/chains/abstract/index.js.map +1 -0
  56. package/dist/x402/client.d.ts +1 -4
  57. package/dist/x402/client.d.ts.map +1 -1
  58. package/dist/x402/client.js +2 -16
  59. package/dist/x402/client.js.map +1 -1
  60. package/dist/x402/index.d.ts +3 -1
  61. package/dist/x402/index.d.ts.map +1 -1
  62. package/dist/x402/index.js +3 -1
  63. package/dist/x402/index.js.map +1 -1
  64. package/dist/x402/types.d.ts +3 -5
  65. package/dist/x402/types.d.ts.map +1 -1
  66. package/dist/x402/types.js +2 -17
  67. package/dist/x402/types.js.map +1 -1
  68. package/package.json +12 -32
  69. package/dist/ap2/index.d.ts +0 -185
  70. package/dist/ap2/index.d.ts.map +0 -1
  71. package/dist/ap2/index.js +0 -255
  72. package/dist/ap2/index.js.map +0 -1
  73. package/dist/bridge/unified.d.ts +0 -101
  74. package/dist/bridge/unified.d.ts.map +0 -1
  75. package/dist/bridge/unified.js +0 -284
  76. package/dist/bridge/unified.js.map +0 -1
  77. package/dist/chains.d.ts +0 -62
  78. package/dist/chains.d.ts.map +0 -1
  79. package/dist/chains.js +0 -108
  80. package/dist/chains.js.map +0 -1
  81. package/dist/fiat/index.d.ts +0 -10
  82. package/dist/fiat/index.d.ts.map +0 -1
  83. package/dist/fiat/index.js +0 -9
  84. package/dist/fiat/index.js.map +0 -1
  85. package/dist/fiat/onramp.d.ts +0 -101
  86. package/dist/fiat/onramp.d.ts.map +0 -1
  87. package/dist/fiat/onramp.js +0 -155
  88. package/dist/fiat/onramp.js.map +0 -1
  89. package/dist/fiat/providers/index.d.ts +0 -16
  90. package/dist/fiat/providers/index.d.ts.map +0 -1
  91. package/dist/fiat/providers/index.js +0 -30
  92. package/dist/fiat/providers/index.js.map +0 -1
  93. package/dist/fiat/providers/moonpay.d.ts +0 -22
  94. package/dist/fiat/providers/moonpay.d.ts.map +0 -1
  95. package/dist/fiat/providers/moonpay.js +0 -107
  96. package/dist/fiat/providers/moonpay.js.map +0 -1
  97. package/dist/fiat/providers/stripe.d.ts +0 -26
  98. package/dist/fiat/providers/stripe.d.ts.map +0 -1
  99. package/dist/fiat/providers/stripe.js +0 -135
  100. package/dist/fiat/providers/stripe.js.map +0 -1
  101. package/dist/fiat/providers/transak.d.ts +0 -26
  102. package/dist/fiat/providers/transak.d.ts.map +0 -1
  103. package/dist/fiat/providers/transak.js +0 -119
  104. package/dist/fiat/providers/transak.js.map +0 -1
  105. package/dist/fiat/types.d.ts +0 -106
  106. package/dist/fiat/types.d.ts.map +0 -1
  107. package/dist/fiat/types.js +0 -13
  108. package/dist/fiat/types.js.map +0 -1
  109. package/dist/flash/executor.d.ts +0 -119
  110. package/dist/flash/executor.d.ts.map +0 -1
  111. package/dist/flash/executor.js +0 -195
  112. package/dist/flash/executor.js.map +0 -1
  113. package/dist/flash/index.d.ts +0 -28
  114. package/dist/flash/index.d.ts.map +0 -1
  115. package/dist/flash/index.js +0 -25
  116. package/dist/flash/index.js.map +0 -1
  117. package/dist/flash/scanner.d.ts +0 -133
  118. package/dist/flash/scanner.d.ts.map +0 -1
  119. package/dist/flash/scanner.js +0 -212
  120. package/dist/flash/scanner.js.map +0 -1
  121. package/dist/flash/types.d.ts +0 -136
  122. package/dist/flash/types.d.ts.map +0 -1
  123. package/dist/flash/types.js +0 -23
  124. package/dist/flash/types.js.map +0 -1
  125. package/dist/gas/index.d.ts +0 -4
  126. package/dist/gas/index.d.ts.map +0 -1
  127. package/dist/gas/index.js +0 -3
  128. package/dist/gas/index.js.map +0 -1
  129. package/dist/gas/sponsor.d.ts +0 -70
  130. package/dist/gas/sponsor.d.ts.map +0 -1
  131. package/dist/gas/sponsor.js +0 -193
  132. package/dist/gas/sponsor.js.map +0 -1
  133. package/dist/gas/types.d.ts +0 -76
  134. package/dist/gas/types.d.ts.map +0 -1
  135. package/dist/gas/types.js +0 -21
  136. package/dist/gas/types.js.map +0 -1
  137. package/dist/identity/agent-identity.d.ts +0 -276
  138. package/dist/identity/agent-identity.d.ts.map +0 -1
  139. package/dist/identity/agent-identity.js +0 -300
  140. package/dist/identity/agent-identity.js.map +0 -1
  141. package/dist/identity/erc6551.d.ts +0 -441
  142. package/dist/identity/erc6551.d.ts.map +0 -1
  143. package/dist/identity/erc6551.js +0 -517
  144. package/dist/identity/erc6551.js.map +0 -1
  145. package/dist/mev/index.d.ts +0 -4
  146. package/dist/mev/index.d.ts.map +0 -1
  147. package/dist/mev/index.js +0 -4
  148. package/dist/mev/index.js.map +0 -1
  149. package/dist/mev/protection.d.ts +0 -54
  150. package/dist/mev/protection.d.ts.map +0 -1
  151. package/dist/mev/protection.js +0 -185
  152. package/dist/mev/protection.js.map +0 -1
  153. package/dist/mev/risk.d.ts +0 -19
  154. package/dist/mev/risk.d.ts.map +0 -1
  155. package/dist/mev/risk.js +0 -95
  156. package/dist/mev/risk.js.map +0 -1
  157. package/dist/mev/types.d.ts +0 -49
  158. package/dist/mev/types.d.ts.map +0 -1
  159. package/dist/mev/types.js +0 -2
  160. package/dist/mev/types.js.map +0 -1
  161. package/dist/settlement/index.d.ts +0 -4
  162. package/dist/settlement/index.d.ts.map +0 -1
  163. package/dist/settlement/index.js +0 -3
  164. package/dist/settlement/index.js.map +0 -1
  165. package/dist/settlement/types.d.ts +0 -66
  166. package/dist/settlement/types.d.ts.map +0 -1
  167. package/dist/settlement/types.js +0 -37
  168. package/dist/settlement/types.js.map +0 -1
  169. package/dist/settlement/verifier.d.ts +0 -75
  170. package/dist/settlement/verifier.d.ts.map +0 -1
  171. package/dist/settlement/verifier.js +0 -354
  172. package/dist/settlement/verifier.js.map +0 -1
  173. package/dist/solana/bridge.d.ts +0 -144
  174. package/dist/solana/bridge.d.ts.map +0 -1
  175. package/dist/solana/bridge.js +0 -352
  176. package/dist/solana/bridge.js.map +0 -1
  177. package/dist/solana/index.d.ts +0 -8
  178. package/dist/solana/index.d.ts.map +0 -1
  179. package/dist/solana/index.js +0 -6
  180. package/dist/solana/index.js.map +0 -1
  181. package/dist/solana/swap.d.ts +0 -85
  182. package/dist/solana/swap.d.ts.map +0 -1
  183. package/dist/solana/swap.js +0 -173
  184. package/dist/solana/swap.js.map +0 -1
  185. package/dist/solana/types.d.ts +0 -126
  186. package/dist/solana/types.d.ts.map +0 -1
  187. package/dist/solana/types.js +0 -10
  188. package/dist/solana/types.js.map +0 -1
  189. package/dist/solana/wallet.d.ts +0 -83
  190. package/dist/solana/wallet.d.ts.map +0 -1
  191. package/dist/solana/wallet.js +0 -164
  192. package/dist/solana/wallet.js.map +0 -1
  193. package/dist/solana/x402.d.ts +0 -69
  194. package/dist/solana/x402.d.ts.map +0 -1
  195. package/dist/solana/x402.js +0 -154
  196. package/dist/solana/x402.js.map +0 -1
  197. package/dist/solver/adapter.d.ts +0 -47
  198. package/dist/solver/adapter.d.ts.map +0 -1
  199. package/dist/solver/adapter.js +0 -138
  200. package/dist/solver/adapter.js.map +0 -1
  201. package/dist/solver/analyzer.d.ts +0 -48
  202. package/dist/solver/analyzer.d.ts.map +0 -1
  203. package/dist/solver/analyzer.js +0 -89
  204. package/dist/solver/analyzer.js.map +0 -1
  205. package/dist/solver/builder.d.ts +0 -31
  206. package/dist/solver/builder.d.ts.map +0 -1
  207. package/dist/solver/builder.js +0 -60
  208. package/dist/solver/builder.js.map +0 -1
  209. package/dist/solver/index.d.ts +0 -22
  210. package/dist/solver/index.d.ts.map +0 -1
  211. package/dist/solver/index.js +0 -21
  212. package/dist/solver/index.js.map +0 -1
  213. package/dist/solver/types.d.ts +0 -115
  214. package/dist/solver/types.d.ts.map +0 -1
  215. package/dist/solver/types.js +0 -10
  216. package/dist/solver/types.js.map +0 -1
  217. package/dist/spend-guard/index.d.ts +0 -125
  218. package/dist/spend-guard/index.d.ts.map +0 -1
  219. package/dist/spend-guard/index.js +0 -150
  220. package/dist/spend-guard/index.js.map +0 -1
  221. package/dist/swap/router/cache.d.ts +0 -13
  222. package/dist/swap/router/cache.d.ts.map +0 -1
  223. package/dist/swap/router/cache.js +0 -30
  224. package/dist/swap/router/cache.js.map +0 -1
  225. package/dist/swap/router/flashbots.d.ts +0 -10
  226. package/dist/swap/router/flashbots.d.ts.map +0 -1
  227. package/dist/swap/router/flashbots.js +0 -43
  228. package/dist/swap/router/flashbots.js.map +0 -1
  229. package/dist/swap/router/health.d.ts +0 -17
  230. package/dist/swap/router/health.d.ts.map +0 -1
  231. package/dist/swap/router/health.js +0 -38
  232. package/dist/swap/router/health.js.map +0 -1
  233. package/dist/swap/router/index.d.ts +0 -10
  234. package/dist/swap/router/index.d.ts.map +0 -1
  235. package/dist/swap/router/index.js +0 -10
  236. package/dist/swap/router/index.js.map +0 -1
  237. package/dist/swap/router/providers/cowswap.d.ts +0 -11
  238. package/dist/swap/router/providers/cowswap.d.ts.map +0 -1
  239. package/dist/swap/router/providers/cowswap.js +0 -79
  240. package/dist/swap/router/providers/cowswap.js.map +0 -1
  241. package/dist/swap/router/providers/index.d.ts +0 -20
  242. package/dist/swap/router/providers/index.d.ts.map +0 -1
  243. package/dist/swap/router/providers/index.js +0 -32
  244. package/dist/swap/router/providers/index.js.map +0 -1
  245. package/dist/swap/router/providers/jupiter.d.ts +0 -12
  246. package/dist/swap/router/providers/jupiter.d.ts.map +0 -1
  247. package/dist/swap/router/providers/jupiter.js +0 -73
  248. package/dist/swap/router/providers/jupiter.js.map +0 -1
  249. package/dist/swap/router/providers/lifi.d.ts +0 -11
  250. package/dist/swap/router/providers/lifi.d.ts.map +0 -1
  251. package/dist/swap/router/providers/lifi.js +0 -123
  252. package/dist/swap/router/providers/lifi.js.map +0 -1
  253. package/dist/swap/router/providers/oneinch.d.ts +0 -13
  254. package/dist/swap/router/providers/oneinch.d.ts.map +0 -1
  255. package/dist/swap/router/providers/oneinch.js +0 -71
  256. package/dist/swap/router/providers/oneinch.js.map +0 -1
  257. package/dist/swap/router/providers/paraswap.d.ts +0 -11
  258. package/dist/swap/router/providers/paraswap.d.ts.map +0 -1
  259. package/dist/swap/router/providers/paraswap.js +0 -73
  260. package/dist/swap/router/providers/paraswap.js.map +0 -1
  261. package/dist/swap/router/providers/uniswap.d.ts +0 -31
  262. package/dist/swap/router/providers/uniswap.d.ts.map +0 -1
  263. package/dist/swap/router/providers/uniswap.js +0 -116
  264. package/dist/swap/router/providers/uniswap.js.map +0 -1
  265. package/dist/swap/router/providers/zerox.d.ts +0 -13
  266. package/dist/swap/router/providers/zerox.d.ts.map +0 -1
  267. package/dist/swap/router/providers/zerox.js +0 -94
  268. package/dist/swap/router/providers/zerox.js.map +0 -1
  269. package/dist/swap/router/router.d.ts +0 -86
  270. package/dist/swap/router/router.d.ts.map +0 -1
  271. package/dist/swap/router/router.js +0 -224
  272. package/dist/swap/router/router.js.map +0 -1
  273. package/dist/swap/router/rsi/engine.d.ts +0 -60
  274. package/dist/swap/router/rsi/engine.d.ts.map +0 -1
  275. package/dist/swap/router/rsi/engine.js +0 -483
  276. package/dist/swap/router/rsi/engine.js.map +0 -1
  277. package/dist/swap/router/rsi/index.d.ts +0 -3
  278. package/dist/swap/router/rsi/index.d.ts.map +0 -1
  279. package/dist/swap/router/rsi/index.js +0 -3
  280. package/dist/swap/router/rsi/index.js.map +0 -1
  281. package/dist/swap/router/rsi/types.d.ts +0 -106
  282. package/dist/swap/router/rsi/types.d.ts.map +0 -1
  283. package/dist/swap/router/rsi/types.js +0 -3
  284. package/dist/swap/router/rsi/types.js.map +0 -1
  285. package/dist/swap/router/types.d.ts +0 -120
  286. package/dist/swap/router/types.d.ts.map +0 -1
  287. package/dist/swap/router/types.js +0 -16
  288. package/dist/swap/router/types.js.map +0 -1
  289. package/dist/tax/engine.d.ts +0 -131
  290. package/dist/tax/engine.d.ts.map +0 -1
  291. package/dist/tax/engine.js +0 -307
  292. package/dist/tax/engine.js.map +0 -1
  293. package/dist/tax/index.d.ts +0 -9
  294. package/dist/tax/index.d.ts.map +0 -1
  295. package/dist/tax/index.js +0 -8
  296. package/dist/tax/index.js.map +0 -1
  297. package/dist/tax/lots.d.ts +0 -60
  298. package/dist/tax/lots.d.ts.map +0 -1
  299. package/dist/tax/lots.js +0 -129
  300. package/dist/tax/lots.js.map +0 -1
  301. package/dist/tax/types.d.ts +0 -113
  302. package/dist/tax/types.d.ts.map +0 -1
  303. package/dist/tax/types.js +0 -18
  304. package/dist/tax/types.js.map +0 -1
  305. package/dist/yield/index.d.ts +0 -26
  306. package/dist/yield/index.d.ts.map +0 -1
  307. package/dist/yield/index.js +0 -25
  308. package/dist/yield/index.js.map +0 -1
  309. package/dist/yield/rates.d.ts +0 -114
  310. package/dist/yield/rates.d.ts.map +0 -1
  311. package/dist/yield/rates.js +0 -351
  312. package/dist/yield/rates.js.map +0 -1
  313. package/dist/yield/types.d.ts +0 -134
  314. package/dist/yield/types.d.ts.map +0 -1
  315. package/dist/yield/types.js +0 -24
  316. package/dist/yield/types.js.map +0 -1
  317. package/dist/yield/vault.d.ts +0 -112
  318. package/dist/yield/vault.d.ts.map +0 -1
  319. package/dist/yield/vault.js +0 -264
  320. package/dist/yield/vault.js.map +0 -1
@@ -1,106 +0,0 @@
1
- /** Goals — what the agent is optimizing for */
2
- export interface WalletGoals {
3
- /** Primary optimization target */
4
- primary: 'maximize-net-output' | 'minimize-gas' | 'maximize-speed' | 'minimize-risk';
5
- /** Hard constraints — never violated */
6
- constraints: {
7
- maxSlippageBps?: number;
8
- maxGasUsd?: number;
9
- mevProtectionRequired?: boolean;
10
- maxSingleSwapUsd?: number;
11
- };
12
- /** Soft targets — tracked and optimized toward */
13
- targets?: {
14
- minSavingsVsBaselineBps?: number;
15
- };
16
- }
17
- /** Directives — standing orders the agent follows */
18
- export interface WalletDirective {
19
- rule: string;
20
- enabled: boolean;
21
- params: Record<string, number | string | boolean>;
22
- }
23
- /** Built-in directive rules */
24
- export type DirectiveRule = 'prefer-mev-protected' | 'avoid-high-gas' | 'time-based-routing' | 'pair-specific-routing' | 'alert-on-arb-opportunity';
25
- /** RSI Configuration */
26
- export interface RSIConfig {
27
- enabled: boolean;
28
- /** How many outcomes before running a mutation cycle */
29
- learningWindow?: number;
30
- /** Maximum parameter change per cycle (0-1) */
31
- mutationRate?: number;
32
- /** Metrics to track */
33
- metrics?: RSIMetric[];
34
- /** File path or key for persisting state */
35
- storageKey?: string;
36
- }
37
- export type RSIMetric = 'provider-win-rate' | 'quote-accuracy' | 'latency' | 'failure-rate' | 'gas-accuracy' | 'fill-rate' | 'time-of-day-patterns';
38
- /** A single recorded swap outcome */
39
- export interface SwapOutcome {
40
- timestamp: number;
41
- chain: string;
42
- fromToken: string;
43
- toToken: string;
44
- amount: string;
45
- /** All quotes received (not just the winner) */
46
- allQuotes: Array<{
47
- provider: string;
48
- toAmount: string;
49
- gasEstimateUsd: number;
50
- estimatedTimeMs: number;
51
- mevProtected: boolean;
52
- }>;
53
- /** The provider that was selected */
54
- selectedProvider: string;
55
- /** Quoted output amount */
56
- quotedOutput: string;
57
- /** Actual output received (after execution) */
58
- actualOutput?: string;
59
- /** Actual gas paid in USD */
60
- actualGasUsd?: number;
61
- /** Whether the swap succeeded */
62
- success: boolean;
63
- /** Execution time in ms */
64
- executionTimeMs?: number;
65
- }
66
- /** Learned provider weight adjustments */
67
- export interface ProviderWeights {
68
- /** Global weights (across all pairs) */
69
- global: Record<string, number>;
70
- /** Per-chain weights */
71
- byChain: Record<string, Record<string, number>>;
72
- /** Per-pair weights (most specific) */
73
- byPair: Record<string, Record<string, number>>;
74
- }
75
- /** Result of a mutation cycle */
76
- export interface MutationResult {
77
- cycle: number;
78
- timestamp: number;
79
- outcomesAnalyzed: number;
80
- mutations: Array<{
81
- type: string;
82
- provider: string;
83
- field: string;
84
- oldValue: number;
85
- newValue: number;
86
- reason: string;
87
- }>;
88
- metrics: {
89
- avgSavingsVsBaselineBps: number;
90
- providerWinRates: Record<string, number>;
91
- avgQuoteAccuracy: number;
92
- avgLatencyMs: Record<string, number>;
93
- };
94
- }
95
- /** Full persisted RSI state */
96
- export interface RSIState {
97
- version: number;
98
- lastMutationCycle: number;
99
- totalOutcomes: number;
100
- providerWeights: ProviderWeights;
101
- outcomes: SwapOutcome[];
102
- mutationHistory: MutationResult[];
103
- directives: WalletDirective[];
104
- goals: WalletGoals;
105
- }
106
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/swap/router/rsi/types.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- // [MAX-ADDED] SwapRSIEngine types — Recursively Self-Improving swap routing brain
2
- export {};
3
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/swap/router/rsi/types.ts"],"names":[],"mappings":"AAAA,kFAAkF"}
@@ -1,120 +0,0 @@
1
- export type SwapStrategy = 'best-net-output' | 'fastest' | 'lowest-gas' | 'mev-protected';
2
- /** Unified quote format returned by every provider */
3
- export interface AggregatorQuote {
4
- /** Provider name (e.g. '1inch', '0x', 'paraswap', 'cowswap', 'lifi', 'uniswap', 'jupiter') */
5
- provider: string;
6
- /** Input token symbol or address */
7
- fromToken: string;
8
- /** Output token symbol or address */
9
- toToken: string;
10
- /** Input amount in smallest unit (e.g. wei, lamports) */
11
- fromAmount: bigint;
12
- /** Expected output amount in smallest unit */
13
- toAmount: bigint;
14
- /** Gas estimate in wei (0 for Solana/gasless) */
15
- gasEstimate: bigint;
16
- /** Gas cost in USD */
17
- gasEstimateUsd: number;
18
- /** Provider platform fee in basis points */
19
- platformFee: number;
20
- /** toAmount adjusted for gas cost — used for ranking */
21
- netOutput: bigint;
22
- /** Price impact as percentage (e.g. 0.3 = 0.3%) */
23
- priceImpact: number;
24
- /** DEX route path (e.g. ['Uniswap V3', 'Curve']) */
25
- route: string[];
26
- /** Estimated execution time in milliseconds */
27
- estimatedTimeMs: number;
28
- /** Whether this quote is MEV-protected (CowSwap, 1inch Fusion) */
29
- mevProtected: boolean;
30
- /** Ready-to-submit transaction data (if provided by aggregator) */
31
- txData?: {
32
- to: string;
33
- data: string;
34
- value: bigint;
35
- gasLimit: bigint;
36
- };
37
- /** Token decimals for the output token (needed for USD normalization) */
38
- toTokenDecimals?: number;
39
- /** USD price of one unit of the output token */
40
- toTokenPriceUsd?: number;
41
- /** Raw provider response for debugging */
42
- metadata?: Record<string, unknown>;
43
- }
44
- /** Receipt from waitForTransaction */
45
- export interface TransactionReceipt {
46
- status: 'success' | 'reverted';
47
- blockNumber?: number;
48
- gasUsed?: bigint;
49
- [key: string]: unknown;
50
- }
51
- /** Result after executing a swap */
52
- export interface AggregatorSwapResult {
53
- /** Transaction hash (EVM) or signature (Solana) */
54
- txHash: string;
55
- /** Quote that was executed */
56
- quote: AggregatorQuote;
57
- /** Chain the swap was executed on */
58
- chain: string;
59
- /** Receipt (populated when waitForReceipt: true) */
60
- receipt?: TransactionReceipt;
61
- /** Whether the transaction succeeded (populated when waitForReceipt: true) */
62
- success?: boolean;
63
- }
64
- /** Parameters for requesting a quote */
65
- export interface QuoteParams {
66
- /** Token symbol or address (e.g. 'USDC' or '0x833589...') */
67
- fromToken: string;
68
- /** Token symbol or address */
69
- toToken: string;
70
- /** Human-readable amount (e.g. '100' for 100 USDC) */
71
- amount: string;
72
- /** Chain name: 'ethereum', 'base', 'arbitrum', 'optimism', 'polygon', 'solana', etc. */
73
- chain: string;
74
- /** Sender address (required by some providers for accurate quotes) */
75
- fromAddress?: string;
76
- /** Slippage tolerance in bps (default: 50 = 0.5%) */
77
- slippageBps?: number;
78
- }
79
- /** Provider interface — each aggregator implements this */
80
- export interface ISwapProvider {
81
- /** Provider identifier */
82
- readonly name: string;
83
- /** Chains this provider supports (lowercase) */
84
- readonly supportedChains: string[];
85
- /** Fetch a quote; returns null if unsupported or on error */
86
- getQuote(params: QuoteParams, timeoutMs: number): Promise<AggregatorQuote | null>;
87
- }
88
- /** SmartSwapRouter configuration */
89
- export interface SmartSwapConfig {
90
- /** Providers to query (default: all available for chain) */
91
- providers?: string[];
92
- /** Ranking strategy (default: 'best-net-output') */
93
- strategy?: SwapStrategy;
94
- /** Per-provider timeout in ms (default: 5000) */
95
- timeoutMs?: number;
96
- /** Default slippage in bps (default: 50) */
97
- slippageBps?: number;
98
- /** Providers to exclude */
99
- excludeProviders?: string[];
100
- /** API keys for providers that require them */
101
- apiKeys?: {
102
- oneInch?: string;
103
- zerox?: string;
104
- };
105
- /** Quote cache TTL in ms (default: 3000, set to 0 to disable) */
106
- cacheTtlMs?: number;
107
- /** Max consecutive failures before a provider is marked unhealthy (default: 3) */
108
- healthMaxFailures?: number;
109
- /** Cooldown in ms before retrying an unhealthy provider (default: 60000) */
110
- healthCooldownMs?: number;
111
- /** [MAX-ADDED] RSI engine config — opt-in self-improvement (default: disabled) */
112
- rsi?: import('./rsi/types.js').RSIConfig;
113
- /** [MAX-ADDED] Wallet goals for RSI optimization */
114
- goals?: import('./rsi/types.js').WalletGoals;
115
- }
116
- /** Chain name → chain ID mapping for EVM chains */
117
- export declare const CHAIN_IDS: Record<string, number>;
118
- /** Reverse mapping: chain ID → name */
119
- export declare const CHAIN_NAMES: Record<number, string>;
120
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/swap/router/types.ts"],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- // [MAX-ADDED] SmartSwapRouter types — multi-DEX meta-aggregation for agentwallet-sdk
2
- // Separate from the existing Uniswap-specific SwapQuote in ../types.ts
3
- /** Chain name → chain ID mapping for EVM chains */
4
- export const CHAIN_IDS = {
5
- ethereum: 1,
6
- base: 8453,
7
- arbitrum: 42161,
8
- optimism: 10,
9
- polygon: 137,
10
- avalanche: 43114,
11
- bnb: 56,
12
- gnosis: 100,
13
- };
14
- /** Reverse mapping: chain ID → name */
15
- export const CHAIN_NAMES = Object.fromEntries(Object.entries(CHAIN_IDS).map(([k, v]) => [v, k]));
16
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/swap/router/types.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,uEAAuE;AA4HvE,mDAAmD;AACnD,MAAM,CAAC,MAAM,SAAS,GAA2B;IAC/C,QAAQ,EAAE,CAAC;IACX,IAAI,EAAE,IAAI;IACV,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE,EAAE;IACZ,OAAO,EAAE,GAAG;IACZ,SAAS,EAAE,KAAK;IAChB,GAAG,EAAE,EAAE;IACP,MAAM,EAAE,GAAG;CACZ,CAAC;AAEF,uCAAuC;AACvC,MAAM,CAAC,MAAM,WAAW,GAA2B,MAAM,CAAC,WAAW,CACnE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAClD,CAAC"}
@@ -1,131 +0,0 @@
1
- /**
2
- * Tax / P&L Engine — Core Engine
3
- *
4
- * ⚠️ DISCLAIMER: This module is for informational purposes only.
5
- * Tax laws are complex, jurisdiction-specific, and change frequently.
6
- * Always consult a qualified tax professional before filing. This is NOT tax advice.
7
- *
8
- * Key rules modeled (US-centric):
9
- * - Every token swap = taxable disposal of fromToken + acquisition of toToken
10
- * - Short-term gain: held < 365 days → taxed as ordinary income
11
- * - Long-term gain: held ≥ 365 days → preferential capital gains rates
12
- * - Yield received = ordinary income (full rate)
13
- * - Gas fees = reduce net gain (treated as selling expense)
14
- * - Wash sale rule: NOT applicable to crypto as of 2024 (no legislation yet)
15
- * - Fiat on-ramp = establishes cost basis, NOT a taxable event
16
- * - Bridge (cross-chain move) = generally NOT taxable (same owner, same asset)
17
- */
18
- import type { TaxEngineConfig, TaxEvent, TaxLot, RealizedGain, TaxSummary } from './types.js';
19
- export declare class TaxEngine {
20
- private config;
21
- private lotManager;
22
- private events;
23
- private gains;
24
- constructor(config?: TaxEngineConfig);
25
- /**
26
- * Record a swap — the most common taxable event in DeFi.
27
- *
28
- * A swap creates two sub-events:
29
- * 1. Disposal of fromToken (taxable — creates realized gain/loss)
30
- * 2. Acquisition of toToken (establishes new cost basis)
31
- *
32
- * Returns the RealizedGain record, or null if no lots were tracked
33
- * (zero cost basis scenario — gain equals full proceeds).
34
- */
35
- recordSwap(params: {
36
- txHash: string;
37
- chain: string;
38
- timestamp: number;
39
- fromToken: string;
40
- fromTokenAddress: string;
41
- fromAmount: bigint;
42
- fromValueUsd: number;
43
- toToken: string;
44
- toTokenAddress: string;
45
- toAmount: bigint;
46
- toValueUsd: number;
47
- gasPaidUsd?: number;
48
- }): RealizedGain | null;
49
- /**
50
- * Record yield received from a DeFi protocol (taxable as ordinary income).
51
- *
52
- * Yield is treated as income at the fair market value when received.
53
- * The cost basis of the new lot = market value at receipt.
54
- */
55
- recordYieldReceived(params: {
56
- txHash?: string;
57
- chain: string;
58
- timestamp: number;
59
- token: string;
60
- tokenAddress: string;
61
- amount: bigint;
62
- valueUsd: number;
63
- protocol: string;
64
- }): void;
65
- /**
66
- * Record a fiat on-ramp (buying crypto with fiat currency).
67
- *
68
- * This is NOT a taxable event — it establishes the cost basis for future disposals.
69
- * The cost basis = amount paid in fiat (USD).
70
- */
71
- recordFiatOnRamp(params: {
72
- txHash?: string;
73
- chain: string;
74
- timestamp: number;
75
- token: string;
76
- tokenAddress: string;
77
- amount: bigint;
78
- paidUsd: number;
79
- }): void;
80
- /**
81
- * Generate an annual tax summary.
82
- *
83
- * ⚠️ For informational purposes only. Consult a tax professional.
84
- */
85
- getSummary(year?: number): TaxSummary;
86
- /**
87
- * Export to CSV format compatible with TurboTax, Koinly, CoinTracker, and similar tools.
88
- *
89
- * ⚠️ For informational purposes only. Consult a tax professional.
90
- * All USD values are formatted to 2 decimal places to prevent CSV parsing issues.
91
- */
92
- exportCSV(year?: number): string;
93
- /**
94
- * Export to JSON (for programmatic use, custom reporting, CPA handoff).
95
- *
96
- * ⚠️ For informational purposes only. Consult a tax professional.
97
- */
98
- exportJSON(year?: number): {
99
- summary: TaxSummary;
100
- gains: RealizedGain[];
101
- events: TaxEvent[];
102
- };
103
- /**
104
- * Export full engine state for persistence across sessions.
105
- */
106
- exportState(): {
107
- lots: Record<string, TaxLot[]>;
108
- events: TaxEvent[];
109
- gains: RealizedGain[];
110
- };
111
- /**
112
- * Load state from a previous session (e.g., from database or JSON file).
113
- * After loading, new swaps will correctly build on existing lot inventory.
114
- */
115
- loadState(state: {
116
- lots: Record<string, TaxLot[]>;
117
- events: TaxEvent[];
118
- gains: RealizedGain[];
119
- }): void;
120
- /**
121
- * Determine if a disposal is short-term or long-term.
122
- *
123
- * Uses the acquisition timestamp of the earliest lot consumed (conservative
124
- * for FIFO; oldest lot determines the holding period of the bulk of the disposal).
125
- *
126
- * Rule: held ≥ 365 days = long-term; held < 365 days = short-term.
127
- * If no lots were tracked, defaults to short-term (conservative).
128
- */
129
- private determineGainType;
130
- }
131
- //# sourceMappingURL=engine.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/tax/engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,QAAQ,EACR,MAAM,EACN,YAAY,EACZ,UAAU,EAEX,MAAM,YAAY,CAAC;AAMpB,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,KAAK,CAAsB;gBAEvB,MAAM,GAAE,eAAoB;IAWxC;;;;;;;;;OASG;IACH,UAAU,CAAC,MAAM,EAAE;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,gBAAgB,EAAE,MAAM,CAAC;QACzB,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,GAAG,YAAY,GAAG,IAAI;IA4EvB;;;;;OAKG;IACH,mBAAmB,CAAC,MAAM,EAAE;QAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,YAAY,EAAE,MAAM,CAAC;QACrB,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;KAClB,GAAG,IAAI;IAiCR;;;;;OAKG;IACH,gBAAgB,CAAC,MAAM,EAAE;QACvB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,YAAY,EAAE,MAAM,CAAC;QACrB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;KACjB,GAAG,IAAI;IAgCR;;;;OAIG;IACH,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,UAAU;IAwCrC;;;;;OAKG;IACH,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM;IAoChC;;;;OAIG;IACH,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG;QACzB,OAAO,EAAE,UAAU,CAAC;QACpB,KAAK,EAAE,YAAY,EAAE,CAAC;QACtB,MAAM,EAAE,QAAQ,EAAE,CAAC;KACpB;IAiBD;;OAEG;IACH,WAAW,IAAI;QACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/B,MAAM,EAAE,QAAQ,EAAE,CAAC;QACnB,KAAK,EAAE,YAAY,EAAE,CAAC;KACvB;IAQD;;;OAGG;IACH,SAAS,CAAC,KAAK,EAAE;QACf,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/B,MAAM,EAAE,QAAQ,EAAE,CAAC;QACnB,KAAK,EAAE,YAAY,EAAE,CAAC;KACvB,GAAG,IAAI;IAQR;;;;;;;;OAQG;IACH,OAAO,CAAC,iBAAiB;CAiB1B"}