@reown/appkit-controllers 1.7.0-rc.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 (241) hide show
  1. package/LICENSE +190 -0
  2. package/dist/esm/exports/index.js +32 -0
  3. package/dist/esm/exports/index.js.map +1 -0
  4. package/dist/esm/exports/modal.js +2 -0
  5. package/dist/esm/exports/modal.js.map +1 -0
  6. package/dist/esm/exports/react.js +52 -0
  7. package/dist/esm/exports/react.js.map +1 -0
  8. package/dist/esm/exports/vue.js +63 -0
  9. package/dist/esm/exports/vue.js.map +1 -0
  10. package/dist/esm/src/controllers/AccountController.js +160 -0
  11. package/dist/esm/src/controllers/AccountController.js.map +1 -0
  12. package/dist/esm/src/controllers/AlertController.js +35 -0
  13. package/dist/esm/src/controllers/AlertController.js.map +1 -0
  14. package/dist/esm/src/controllers/ApiController.js +260 -0
  15. package/dist/esm/src/controllers/ApiController.js.map +1 -0
  16. package/dist/esm/src/controllers/AssetController.js +43 -0
  17. package/dist/esm/src/controllers/AssetController.js.map +1 -0
  18. package/dist/esm/src/controllers/BlockchainApiController.js +472 -0
  19. package/dist/esm/src/controllers/BlockchainApiController.js.map +1 -0
  20. package/dist/esm/src/controllers/ChainController.js +548 -0
  21. package/dist/esm/src/controllers/ChainController.js.map +1 -0
  22. package/dist/esm/src/controllers/ConnectionController.js +190 -0
  23. package/dist/esm/src/controllers/ConnectionController.js.map +1 -0
  24. package/dist/esm/src/controllers/ConnectorController.js +272 -0
  25. package/dist/esm/src/controllers/ConnectorController.js.map +1 -0
  26. package/dist/esm/src/controllers/EnsController.js +144 -0
  27. package/dist/esm/src/controllers/EnsController.js.map +1 -0
  28. package/dist/esm/src/controllers/EventsController.js +76 -0
  29. package/dist/esm/src/controllers/EventsController.js.map +1 -0
  30. package/dist/esm/src/controllers/ModalController.js +120 -0
  31. package/dist/esm/src/controllers/ModalController.js.map +1 -0
  32. package/dist/esm/src/controllers/OnRampController.js +132 -0
  33. package/dist/esm/src/controllers/OnRampController.js.map +1 -0
  34. package/dist/esm/src/controllers/OptionsController.js +146 -0
  35. package/dist/esm/src/controllers/OptionsController.js.map +1 -0
  36. package/dist/esm/src/controllers/PublicStateController.js +20 -0
  37. package/dist/esm/src/controllers/PublicStateController.js.map +1 -0
  38. package/dist/esm/src/controllers/RouterController.js +125 -0
  39. package/dist/esm/src/controllers/RouterController.js.map +1 -0
  40. package/dist/esm/src/controllers/SendController.js +305 -0
  41. package/dist/esm/src/controllers/SendController.js.map +1 -0
  42. package/dist/esm/src/controllers/SnackController.js +62 -0
  43. package/dist/esm/src/controllers/SnackController.js.map +1 -0
  44. package/dist/esm/src/controllers/SwapController.js +674 -0
  45. package/dist/esm/src/controllers/SwapController.js.map +1 -0
  46. package/dist/esm/src/controllers/ThemeController.js +55 -0
  47. package/dist/esm/src/controllers/ThemeController.js.map +1 -0
  48. package/dist/esm/src/controllers/TooltipController.js +41 -0
  49. package/dist/esm/src/controllers/TooltipController.js.map +1 -0
  50. package/dist/esm/src/controllers/TransactionsController.js +113 -0
  51. package/dist/esm/src/controllers/TransactionsController.js.map +1 -0
  52. package/dist/esm/src/utils/AssetUtil.js +86 -0
  53. package/dist/esm/src/utils/AssetUtil.js.map +1 -0
  54. package/dist/esm/src/utils/ConstantsUtil.js +239 -0
  55. package/dist/esm/src/utils/ConstantsUtil.js.map +1 -0
  56. package/dist/esm/src/utils/CoreHelperUtil.js +354 -0
  57. package/dist/esm/src/utils/CoreHelperUtil.js.map +1 -0
  58. package/dist/esm/src/utils/ERC7811Util.js +111 -0
  59. package/dist/esm/src/utils/ERC7811Util.js.map +1 -0
  60. package/dist/esm/src/utils/EnsUtil.js +10 -0
  61. package/dist/esm/src/utils/EnsUtil.js.map +1 -0
  62. package/dist/esm/src/utils/FetchUtil.js +73 -0
  63. package/dist/esm/src/utils/FetchUtil.js.map +1 -0
  64. package/dist/esm/src/utils/MobileWallet.js +31 -0
  65. package/dist/esm/src/utils/MobileWallet.js.map +1 -0
  66. package/dist/esm/src/utils/OptionsUtil.js +29 -0
  67. package/dist/esm/src/utils/OptionsUtil.js.map +1 -0
  68. package/dist/esm/src/utils/RouterUtil.js +23 -0
  69. package/dist/esm/src/utils/RouterUtil.js.map +1 -0
  70. package/dist/esm/src/utils/SIWXUtil.js +258 -0
  71. package/dist/esm/src/utils/SIWXUtil.js.map +1 -0
  72. package/dist/esm/src/utils/SendApiUtil.js +65 -0
  73. package/dist/esm/src/utils/SendApiUtil.js.map +1 -0
  74. package/dist/esm/src/utils/StorageUtil.js +485 -0
  75. package/dist/esm/src/utils/StorageUtil.js.map +1 -0
  76. package/dist/esm/src/utils/SwapApiUtil.js +89 -0
  77. package/dist/esm/src/utils/SwapApiUtil.js.map +1 -0
  78. package/dist/esm/src/utils/SwapCalculationUtil.js +74 -0
  79. package/dist/esm/src/utils/SwapCalculationUtil.js.map +1 -0
  80. package/dist/esm/src/utils/TypeUtil.js +2 -0
  81. package/dist/esm/src/utils/TypeUtil.js.map +1 -0
  82. package/dist/esm/tests/constants/OnrampTransactions.js +151 -0
  83. package/dist/esm/tests/constants/OnrampTransactions.js.map +1 -0
  84. package/dist/esm/tests/controllers/AccountController.test.js +186 -0
  85. package/dist/esm/tests/controllers/AccountController.test.js.map +1 -0
  86. package/dist/esm/tests/controllers/AlertController.test.js +48 -0
  87. package/dist/esm/tests/controllers/AlertController.test.js.map +1 -0
  88. package/dist/esm/tests/controllers/ApiController.test.js +608 -0
  89. package/dist/esm/tests/controllers/ApiController.test.js.map +1 -0
  90. package/dist/esm/tests/controllers/AssetController.test.js +92 -0
  91. package/dist/esm/tests/controllers/AssetController.test.js.map +1 -0
  92. package/dist/esm/tests/controllers/BlockchainApiController.test.js +38 -0
  93. package/dist/esm/tests/controllers/BlockchainApiController.test.js.map +1 -0
  94. package/dist/esm/tests/controllers/ChainController.test.js +382 -0
  95. package/dist/esm/tests/controllers/ChainController.test.js.map +1 -0
  96. package/dist/esm/tests/controllers/ConnectionController.test.js +151 -0
  97. package/dist/esm/tests/controllers/ConnectionController.test.js.map +1 -0
  98. package/dist/esm/tests/controllers/ConnectorController.test.js +282 -0
  99. package/dist/esm/tests/controllers/ConnectorController.test.js.map +1 -0
  100. package/dist/esm/tests/controllers/EnsController.test.js +186 -0
  101. package/dist/esm/tests/controllers/EnsController.test.js.map +1 -0
  102. package/dist/esm/tests/controllers/EventsController.test.js +47 -0
  103. package/dist/esm/tests/controllers/EventsController.test.js.map +1 -0
  104. package/dist/esm/tests/controllers/ModalController.test.js +66 -0
  105. package/dist/esm/tests/controllers/ModalController.test.js.map +1 -0
  106. package/dist/esm/tests/controllers/OnRampController.test.js +118 -0
  107. package/dist/esm/tests/controllers/OnRampController.test.js.map +1 -0
  108. package/dist/esm/tests/controllers/OptionsController.test.js +42 -0
  109. package/dist/esm/tests/controllers/OptionsController.test.js.map +1 -0
  110. package/dist/esm/tests/controllers/PublicStateController.test.js +33 -0
  111. package/dist/esm/tests/controllers/PublicStateController.test.js.map +1 -0
  112. package/dist/esm/tests/controllers/RouterController.test.js +103 -0
  113. package/dist/esm/tests/controllers/RouterController.test.js.map +1 -0
  114. package/dist/esm/tests/controllers/SendController.test.js +136 -0
  115. package/dist/esm/tests/controllers/SendController.test.js.map +1 -0
  116. package/dist/esm/tests/controllers/SnackController.test.js +86 -0
  117. package/dist/esm/tests/controllers/SnackController.test.js.map +1 -0
  118. package/dist/esm/tests/controllers/SwapController.test.js +105 -0
  119. package/dist/esm/tests/controllers/SwapController.test.js.map +1 -0
  120. package/dist/esm/tests/controllers/ThemeController.test.js +26 -0
  121. package/dist/esm/tests/controllers/ThemeController.test.js.map +1 -0
  122. package/dist/esm/tests/controllers/TooltipController.test.js +40 -0
  123. package/dist/esm/tests/controllers/TooltipController.test.js.map +1 -0
  124. package/dist/esm/tests/controllers/TransactionsController.test.js +239 -0
  125. package/dist/esm/tests/controllers/TransactionsController.test.js.map +1 -0
  126. package/dist/esm/tests/hooks/react.test.js +149 -0
  127. package/dist/esm/tests/hooks/react.test.js.map +1 -0
  128. package/dist/esm/tests/hooks/vue.test.js +56 -0
  129. package/dist/esm/tests/hooks/vue.test.js.map +1 -0
  130. package/dist/esm/tests/mocks/ChainController.js +24 -0
  131. package/dist/esm/tests/mocks/ChainController.js.map +1 -0
  132. package/dist/esm/tests/mocks/SwapController.js +118 -0
  133. package/dist/esm/tests/mocks/SwapController.js.map +1 -0
  134. package/dist/esm/tests/mocks/useAppKitAccount.js +41 -0
  135. package/dist/esm/tests/mocks/useAppKitAccount.js.map +1 -0
  136. package/dist/esm/tests/utils/AssetUtil.test.js +108 -0
  137. package/dist/esm/tests/utils/AssetUtil.test.js.map +1 -0
  138. package/dist/esm/tests/utils/CoreHelperUtil.test.js +67 -0
  139. package/dist/esm/tests/utils/CoreHelperUtil.test.js.map +1 -0
  140. package/dist/esm/tests/utils/ERC7811.test.js +268 -0
  141. package/dist/esm/tests/utils/ERC7811.test.js.map +1 -0
  142. package/dist/esm/tests/utils/EnsUtil.test.js +23 -0
  143. package/dist/esm/tests/utils/EnsUtil.test.js.map +1 -0
  144. package/dist/esm/tests/utils/FetchUtil.test.js +175 -0
  145. package/dist/esm/tests/utils/FetchUtil.test.js.map +1 -0
  146. package/dist/esm/tests/utils/MobileWallet.test.js +72 -0
  147. package/dist/esm/tests/utils/MobileWallet.test.js.map +1 -0
  148. package/dist/esm/tests/utils/OptionsUtil.test.js +20 -0
  149. package/dist/esm/tests/utils/OptionsUtil.test.js.map +1 -0
  150. package/dist/esm/tests/utils/RouterUtil.test.js +62 -0
  151. package/dist/esm/tests/utils/RouterUtil.test.js.map +1 -0
  152. package/dist/esm/tests/utils/SendApiUtil.test.js +340 -0
  153. package/dist/esm/tests/utils/SendApiUtil.test.js.map +1 -0
  154. package/dist/esm/tests/utils/StorageUtil.test.js +162 -0
  155. package/dist/esm/tests/utils/StorageUtil.test.js.map +1 -0
  156. package/dist/esm/tests/utils/SwapApiUtil.test.js +213 -0
  157. package/dist/esm/tests/utils/SwapApiUtil.test.js.map +1 -0
  158. package/dist/esm/tests/utils/SwapCalculationUtil.test.js +80 -0
  159. package/dist/esm/tests/utils/SwapCalculationUtil.test.js.map +1 -0
  160. package/dist/esm/tsconfig.tsbuildinfo +1 -0
  161. package/dist/types/exports/index.d.ts +51 -0
  162. package/dist/types/exports/modal.d.ts +2 -0
  163. package/dist/types/exports/react.d.ts +9 -0
  164. package/dist/types/exports/vue.d.ts +9 -0
  165. package/dist/types/src/controllers/AccountController.d.ts +56 -0
  166. package/dist/types/src/controllers/AlertController.d.ts +17 -0
  167. package/dist/types/src/controllers/ApiController.d.ts +52 -0
  168. package/dist/types/src/controllers/AssetController.d.ts +22 -0
  169. package/dist/types/src/controllers/BlockchainApiController.d.ts +59 -0
  170. package/dist/types/src/controllers/ChainController.d.ts +75 -0
  171. package/dist/types/src/controllers/ConnectionController.d.ts +86 -0
  172. package/dist/types/src/controllers/ConnectorController.d.ts +61 -0
  173. package/dist/types/src/controllers/EnsController.d.ts +26 -0
  174. package/dist/types/src/controllers/EventsController.d.ts +17 -0
  175. package/dist/types/src/controllers/ModalController.d.ts +27 -0
  176. package/dist/types/src/controllers/OnRampController.d.ts +55 -0
  177. package/dist/types/src/controllers/OptionsController.d.ts +364 -0
  178. package/dist/types/src/controllers/PublicStateController.d.ts +33 -0
  179. package/dist/types/src/controllers/RouterController.d.ts +56 -0
  180. package/dist/types/src/controllers/SendController.d.ts +52 -0
  181. package/dist/types/src/controllers/SnackController.d.ts +29 -0
  182. package/dist/types/src/controllers/SwapController.d.ts +127 -0
  183. package/dist/types/src/controllers/ThemeController.d.ts +30 -0
  184. package/dist/types/src/controllers/TooltipController.d.ts +25 -0
  185. package/dist/types/src/controllers/TransactionsController.d.ts +25 -0
  186. package/dist/types/src/utils/AssetUtil.d.ts +15 -0
  187. package/dist/types/src/utils/ConstantsUtil.d.ts +86 -0
  188. package/dist/types/src/utils/CoreHelperUtil.d.ts +56 -0
  189. package/dist/types/src/utils/ERC7811Util.d.ts +67 -0
  190. package/dist/types/src/utils/EnsUtil.d.ts +3 -0
  191. package/dist/types/src/utils/FetchUtil.d.ts +26 -0
  192. package/dist/types/src/utils/MobileWallet.d.ts +9 -0
  193. package/dist/types/src/utils/OptionsUtil.d.ts +5 -0
  194. package/dist/types/src/utils/RouterUtil.d.ts +4 -0
  195. package/dist/types/src/utils/SIWXUtil.d.ts +183 -0
  196. package/dist/types/src/utils/SendApiUtil.d.ts +13 -0
  197. package/dist/types/src/utils/StorageUtil.d.ts +99 -0
  198. package/dist/types/src/utils/SwapApiUtil.d.ts +27 -0
  199. package/dist/types/src/utils/SwapCalculationUtil.d.ts +22 -0
  200. package/dist/types/src/utils/TypeUtil.d.ts +981 -0
  201. package/dist/types/tests/constants/OnrampTransactions.d.ts +138 -0
  202. package/dist/types/tests/controllers/AccountController.test.d.ts +1 -0
  203. package/dist/types/tests/controllers/AlertController.test.d.ts +1 -0
  204. package/dist/types/tests/controllers/ApiController.test.d.ts +1 -0
  205. package/dist/types/tests/controllers/AssetController.test.d.ts +1 -0
  206. package/dist/types/tests/controllers/BlockchainApiController.test.d.ts +1 -0
  207. package/dist/types/tests/controllers/ChainController.test.d.ts +1 -0
  208. package/dist/types/tests/controllers/ConnectionController.test.d.ts +1 -0
  209. package/dist/types/tests/controllers/ConnectorController.test.d.ts +1 -0
  210. package/dist/types/tests/controllers/EnsController.test.d.ts +1 -0
  211. package/dist/types/tests/controllers/EventsController.test.d.ts +1 -0
  212. package/dist/types/tests/controllers/ModalController.test.d.ts +1 -0
  213. package/dist/types/tests/controllers/OnRampController.test.d.ts +1 -0
  214. package/dist/types/tests/controllers/OptionsController.test.d.ts +1 -0
  215. package/dist/types/tests/controllers/PublicStateController.test.d.ts +1 -0
  216. package/dist/types/tests/controllers/RouterController.test.d.ts +1 -0
  217. package/dist/types/tests/controllers/SendController.test.d.ts +1 -0
  218. package/dist/types/tests/controllers/SnackController.test.d.ts +1 -0
  219. package/dist/types/tests/controllers/SwapController.test.d.ts +1 -0
  220. package/dist/types/tests/controllers/ThemeController.test.d.ts +1 -0
  221. package/dist/types/tests/controllers/TooltipController.test.d.ts +1 -0
  222. package/dist/types/tests/controllers/TransactionsController.test.d.ts +1 -0
  223. package/dist/types/tests/hooks/react.test.d.ts +1 -0
  224. package/dist/types/tests/hooks/vue.test.d.ts +2 -0
  225. package/dist/types/tests/mocks/ChainController.d.ts +2 -0
  226. package/dist/types/tests/mocks/SwapController.d.ts +75 -0
  227. package/dist/types/tests/mocks/useAppKitAccount.d.ts +40 -0
  228. package/dist/types/tests/utils/AssetUtil.test.d.ts +1 -0
  229. package/dist/types/tests/utils/CoreHelperUtil.test.d.ts +1 -0
  230. package/dist/types/tests/utils/ERC7811.test.d.ts +1 -0
  231. package/dist/types/tests/utils/EnsUtil.test.d.ts +1 -0
  232. package/dist/types/tests/utils/FetchUtil.test.d.ts +1 -0
  233. package/dist/types/tests/utils/MobileWallet.test.d.ts +1 -0
  234. package/dist/types/tests/utils/OptionsUtil.test.d.ts +1 -0
  235. package/dist/types/tests/utils/RouterUtil.test.d.ts +1 -0
  236. package/dist/types/tests/utils/SendApiUtil.test.d.ts +1 -0
  237. package/dist/types/tests/utils/StorageUtil.test.d.ts +1 -0
  238. package/dist/types/tests/utils/SwapApiUtil.test.d.ts +1 -0
  239. package/dist/types/tests/utils/SwapCalculationUtil.test.d.ts +1 -0
  240. package/package.json +81 -0
  241. package/readme.md +11 -0
@@ -0,0 +1,364 @@
1
+ import type { SIWXConfig } from '../utils/SIWXUtil.js';
2
+ import type { ConnectMethod, CustomWallet, DefaultAccountTypes, Features, Metadata, ProjectId, SdkVersion, SocialProvider, Tokens, WalletFeature } from '../utils/TypeUtil.js';
3
+ export interface OptionsControllerStatePublic {
4
+ /**
5
+ * A boolean that allows you to add or remove the "All Wallets" button on the modal
6
+ * @default 'SHOW'
7
+ * @see https://docs.reown.com/appkit/react/core/options#allwallets
8
+ */
9
+ allWallets?: 'SHOW' | 'HIDE' | 'ONLY_MOBILE';
10
+ /**
11
+ * The project ID for the AppKit. You can find or create your project ID in the Cloud.
12
+ * @see https://cloud.walletconnect.com/
13
+ */
14
+ projectId: ProjectId;
15
+ /**
16
+ * Array of wallet ids to be shown in the modal's connection view with priority. These wallets will also show up first in `All Wallets` view
17
+ * @default []
18
+ * @see https://docs.reown.com/appkit/react/core/options#featuredwalletids
19
+ */
20
+ featuredWalletIds?: string[];
21
+ /**
22
+ * Array of wallet ids to be shown (order is respected). Unlike `featuredWalletIds`, these wallets will be the only ones shown in `All Wallets` view and as recommended wallets.
23
+ * @default []
24
+ * @see https://docs.reown.com/appkit/react/core/options#includewalletids
25
+ */
26
+ includeWalletIds?: string[];
27
+ /**
28
+ * Array of wallet ids to be excluded from the wallet list in the modal.
29
+ * @default []
30
+ * @see https://docs.reown.com/appkit/react/core/options#excludewalletids
31
+ */
32
+ excludeWalletIds?: string[];
33
+ /**
34
+ * Array of tokens to show the user's balance of. Each key represents the chain id of the token's blockchain
35
+ * @default {}
36
+ * @see https://docs.reown.com/appkit/react/core/options#tokens
37
+ */
38
+ tokens?: Tokens;
39
+ /**
40
+ * Add custom wallets to the modal. CustomWallets is an array of objects, where each object contains specific information of a custom wallet.
41
+ * @default []
42
+ * @see https://docs.reown.com/appkit/react/core/options#customwallets
43
+ *
44
+ */
45
+ customWallets?: CustomWallet[];
46
+ /**
47
+ * You can add an url for the terms and conditions link.
48
+ * @default undefined
49
+ */
50
+ termsConditionsUrl?: string;
51
+ /**
52
+ * You can add an url for the privacy policy link.
53
+ * @default undefined
54
+ */
55
+ privacyPolicyUrl?: string;
56
+ /**
57
+ * Set of fields that related to your project which will be used to populate the metadata of the modal.
58
+ * @default {}
59
+ */
60
+ metadata?: Metadata;
61
+ /**
62
+ * Enable or disable the appending the AppKit to the DOM. Created for specific use cases like WebGL.
63
+ * @default false
64
+ */
65
+ disableAppend?: boolean;
66
+ /**
67
+ * Enable or disable the all the wallet options (injected, Coinbase, QR, etc.). This is useful if you want to use only email and socials.
68
+ * @default true
69
+ */
70
+ enableWallets?: boolean;
71
+ /**
72
+ * Enable or disable the EIP6963 feature in your AppKit.
73
+ * @default false
74
+ */
75
+ enableEIP6963?: boolean;
76
+ /**
77
+ * Enable or disable the Coinbase wallet in your AppKit.
78
+ * @default true
79
+ */
80
+ enableCoinbase?: boolean;
81
+ /**
82
+ * Enable or disable the Injected wallet in your AppKit.
83
+ * @default true
84
+ */
85
+ enableInjected?: boolean;
86
+ /**
87
+ * Enable or disable the WalletConnect QR code in your AppKit.
88
+ * @default true
89
+ */
90
+ enableWalletConnect?: boolean;
91
+ /**
92
+ * Enable or disable the wallet guide footer in AppKit if you have email or social login configured.
93
+ * @default true
94
+ */
95
+ enableWalletGuide?: boolean;
96
+ /**
97
+ * Enable or disable logs from email/social login.
98
+ * @default true
99
+ */
100
+ enableAuthLogger?: boolean;
101
+ /**
102
+ * Enable or disable debug mode in your AppKit. This is useful if you want to see UI alerts when debugging.
103
+ * @default true
104
+ */
105
+ debug?: boolean;
106
+ /**
107
+ * Features configuration object.
108
+ * @default { swaps: true, onramp: true, email: true, socials: ['google', 'x', 'discord', 'farcaster', 'github', 'apple', 'facebook'], history: true, analytics: true, allWallets: true }
109
+ * @see https://docs.reown.com/appkit/react/core/options#features
110
+ */
111
+ features?: Features;
112
+ /**
113
+ * @experimental - This feature is not production ready.
114
+ * Enable Sign In With X (SIWX) feature in your AppKit.
115
+ * @default undefined
116
+ */
117
+ siwx?: SIWXConfig;
118
+ /**
119
+ * Renders the AppKit to DOM instead of the default modal.
120
+ * @default false
121
+ */
122
+ enableEmbedded?: boolean;
123
+ /**
124
+ * Allow users to switch to an unsupported chain.
125
+ * @default false
126
+ */
127
+ allowUnsupportedChain?: boolean;
128
+ /**
129
+ * Default account types for each namespace.
130
+ * @default "{ bip122: 'payment', eip155: 'smartAccount', polkadot: 'eoa', solana: 'eoa' }"
131
+ */
132
+ defaultAccountTypes: DefaultAccountTypes;
133
+ /**
134
+ * Allows users to indicate if they want to handle the WC connection themselves.
135
+ * @default false
136
+ * @see https://docs.reown.com/appkit/react/core/options#manualwccontrol
137
+ */
138
+ manualWCControl?: boolean;
139
+ }
140
+ export interface OptionsControllerStateInternal {
141
+ sdkType: 'appkit';
142
+ sdkVersion: SdkVersion;
143
+ isSiweEnabled?: boolean;
144
+ isUniversalProvider?: boolean;
145
+ hasMultipleAddresses?: boolean;
146
+ }
147
+ type StateKey = keyof OptionsControllerStatePublic | keyof OptionsControllerStateInternal;
148
+ type OptionsControllerState = OptionsControllerStatePublic & OptionsControllerStateInternal;
149
+ export declare const OptionsController: {
150
+ state: OptionsControllerStatePublic & OptionsControllerStateInternal;
151
+ subscribeKey<K extends StateKey>(key: K, callback: (value: OptionsControllerState[K]) => void): () => void;
152
+ setOptions(options: OptionsControllerState): void;
153
+ setFeatures(features: OptionsControllerState["features"] | undefined): void;
154
+ setProjectId(projectId: OptionsControllerState["projectId"]): void;
155
+ setAllWallets(allWallets: OptionsControllerState["allWallets"]): void;
156
+ setIncludeWalletIds(includeWalletIds: OptionsControllerState["includeWalletIds"]): void;
157
+ setExcludeWalletIds(excludeWalletIds: OptionsControllerState["excludeWalletIds"]): void;
158
+ setFeaturedWalletIds(featuredWalletIds: OptionsControllerState["featuredWalletIds"]): void;
159
+ setTokens(tokens: OptionsControllerState["tokens"]): void;
160
+ setTermsConditionsUrl(termsConditionsUrl: OptionsControllerState["termsConditionsUrl"]): void;
161
+ setPrivacyPolicyUrl(privacyPolicyUrl: OptionsControllerState["privacyPolicyUrl"]): void;
162
+ setCustomWallets(customWallets: OptionsControllerState["customWallets"]): void;
163
+ setIsSiweEnabled(isSiweEnabled: OptionsControllerState["isSiweEnabled"]): void;
164
+ setIsUniversalProvider(isUniversalProvider: OptionsControllerState["isUniversalProvider"]): void;
165
+ setSdkVersion(sdkVersion: OptionsControllerState["sdkVersion"]): void;
166
+ setMetadata(metadata: OptionsControllerState["metadata"]): void;
167
+ setDisableAppend(disableAppend: OptionsControllerState["disableAppend"]): void;
168
+ setEIP6963Enabled(enableEIP6963: OptionsControllerState["enableEIP6963"]): void;
169
+ setDebug(debug: OptionsControllerState["debug"]): void;
170
+ setEnableWalletConnect(enableWalletConnect: OptionsControllerState["enableWalletConnect"]): void;
171
+ setEnableWalletGuide(enableWalletGuide: OptionsControllerState["enableWalletGuide"]): void;
172
+ setEnableAuthLogger(enableAuthLogger: OptionsControllerState["enableAuthLogger"]): void;
173
+ setEnableWallets(enableWallets: OptionsControllerState["enableWallets"]): void;
174
+ setHasMultipleAddresses(hasMultipleAddresses: OptionsControllerState["hasMultipleAddresses"]): void;
175
+ setSIWX(siwx: OptionsControllerState["siwx"]): void;
176
+ setConnectMethodsOrder(connectMethodsOrder: ConnectMethod[]): void;
177
+ setWalletFeaturesOrder(walletFeaturesOrder: WalletFeature[]): void;
178
+ setSocialsOrder(socialsOrder: SocialProvider[]): void;
179
+ setCollapseWallets(collapseWallets: boolean): void;
180
+ setEnableEmbedded(enableEmbedded: OptionsControllerState["enableEmbedded"]): void;
181
+ setAllowUnsupportedChain(allowUnsupportedChain: OptionsControllerState["allowUnsupportedChain"]): void;
182
+ setManualWCControl(manualWCControl: OptionsControllerState["manualWCControl"]): void;
183
+ setDefaultAccountTypes(defaultAccountType?: Partial<OptionsControllerState["defaultAccountTypes"]>): void;
184
+ getSnapshot(): {
185
+ readonly allWallets?: "SHOW" | "HIDE" | "ONLY_MOBILE"
186
+ /**
187
+ * The project ID for the AppKit. You can find or create your project ID in the Cloud.
188
+ * @see https://cloud.walletconnect.com/
189
+ */
190
+ | undefined;
191
+ readonly projectId: ProjectId;
192
+ readonly featuredWalletIds?: readonly string[] | undefined;
193
+ readonly includeWalletIds?: readonly string[] | undefined;
194
+ readonly excludeWalletIds?: readonly string[] | undefined;
195
+ readonly tokens?: {
196
+ readonly [x: `eip155:${string}`]: {
197
+ readonly address: string;
198
+ readonly image?: string | undefined;
199
+ };
200
+ readonly [x: `eip155:${number}`]: {
201
+ readonly address: string;
202
+ readonly image?: string | undefined;
203
+ };
204
+ readonly [x: `solana:${string}`]: {
205
+ readonly address: string;
206
+ readonly image?: string | undefined;
207
+ };
208
+ readonly [x: `solana:${number}`]: {
209
+ readonly address: string;
210
+ readonly image?: string | undefined;
211
+ };
212
+ readonly [x: `polkadot:${string}`]: {
213
+ readonly address: string;
214
+ readonly image?: string | undefined;
215
+ };
216
+ readonly [x: `polkadot:${number}`]: {
217
+ readonly address: string;
218
+ readonly image?: string | undefined;
219
+ };
220
+ readonly [x: `bip122:${string}`]: {
221
+ readonly address: string;
222
+ readonly image?: string | undefined;
223
+ };
224
+ readonly [x: `bip122:${number}`]: {
225
+ readonly address: string;
226
+ readonly image?: string | undefined;
227
+ };
228
+ } | undefined;
229
+ readonly customWallets?: readonly {
230
+ readonly name: string;
231
+ readonly id: string;
232
+ readonly homepage?: string | undefined;
233
+ readonly image_url?: string | undefined;
234
+ readonly mobile_link?: string | null | undefined;
235
+ readonly desktop_link?: string | null | undefined;
236
+ readonly webapp_link?: string | null | undefined;
237
+ readonly app_store?: string | null | undefined;
238
+ readonly play_store?: string | null | undefined;
239
+ }[] | undefined;
240
+ readonly termsConditionsUrl?: string
241
+ /**
242
+ * You can add an url for the privacy policy link.
243
+ * @default undefined
244
+ */
245
+ | undefined;
246
+ readonly privacyPolicyUrl?: string
247
+ /**
248
+ * Set of fields that related to your project which will be used to populate the metadata of the modal.
249
+ * @default {}
250
+ */
251
+ | undefined;
252
+ readonly metadata?: {
253
+ readonly name: string;
254
+ readonly description: string;
255
+ readonly url: string;
256
+ readonly icons: readonly string[];
257
+ } | undefined;
258
+ readonly disableAppend?: boolean
259
+ /**
260
+ * Enable or disable the all the wallet options (injected, Coinbase, QR, etc.). This is useful if you want to use only email and socials.
261
+ * @default true
262
+ */
263
+ | undefined;
264
+ readonly enableWallets?: boolean
265
+ /**
266
+ * Enable or disable the EIP6963 feature in your AppKit.
267
+ * @default false
268
+ */
269
+ | undefined;
270
+ readonly enableEIP6963?: boolean
271
+ /**
272
+ * Enable or disable the Coinbase wallet in your AppKit.
273
+ * @default true
274
+ */
275
+ | undefined;
276
+ readonly enableCoinbase?: boolean
277
+ /**
278
+ * Enable or disable the Injected wallet in your AppKit.
279
+ * @default true
280
+ */
281
+ | undefined;
282
+ readonly enableInjected?: boolean
283
+ /**
284
+ * Enable or disable the WalletConnect QR code in your AppKit.
285
+ * @default true
286
+ */
287
+ | undefined;
288
+ readonly enableWalletConnect?: boolean
289
+ /**
290
+ * Enable or disable the wallet guide footer in AppKit if you have email or social login configured.
291
+ * @default true
292
+ */
293
+ | undefined;
294
+ readonly enableWalletGuide?: boolean
295
+ /**
296
+ * Enable or disable logs from email/social login.
297
+ * @default true
298
+ */
299
+ | undefined;
300
+ readonly enableAuthLogger?: boolean
301
+ /**
302
+ * Enable or disable debug mode in your AppKit. This is useful if you want to see UI alerts when debugging.
303
+ * @default true
304
+ */
305
+ | undefined;
306
+ readonly debug?: boolean
307
+ /**
308
+ * Features configuration object.
309
+ * @default { swaps: true, onramp: true, email: true, socials: ['google', 'x', 'discord', 'farcaster', 'github', 'apple', 'facebook'], history: true, analytics: true, allWallets: true }
310
+ * @see https://docs.reown.com/appkit/react/core/options#features
311
+ */
312
+ | undefined;
313
+ readonly features?: {
314
+ readonly swaps?: boolean | undefined;
315
+ readonly onramp?: boolean | undefined;
316
+ readonly receive?: boolean | undefined;
317
+ readonly send?: boolean | undefined;
318
+ readonly email?: boolean | undefined;
319
+ readonly emailShowWallets?: boolean | undefined;
320
+ readonly socials?: false | readonly SocialProvider[] | undefined;
321
+ readonly history?: boolean | undefined;
322
+ readonly analytics?: boolean | undefined;
323
+ readonly allWallets?: boolean | undefined;
324
+ readonly smartSessions?: boolean | undefined;
325
+ readonly legalCheckbox?: boolean | undefined;
326
+ readonly connectMethodsOrder?: readonly ConnectMethod[] | undefined;
327
+ readonly walletFeaturesOrder?: readonly WalletFeature[] | undefined;
328
+ readonly collapseWallets?: boolean | undefined;
329
+ } | undefined;
330
+ readonly siwx?: {
331
+ readonly createMessage: (input: import("../utils/SIWXUtil.js").SIWXMessage.Input) => Promise<import("../utils/SIWXUtil.js").SIWXMessage>;
332
+ readonly addSession: (session: import("../utils/SIWXUtil.js").SIWXSession) => Promise<void>;
333
+ readonly revokeSession: (chainId: import("@reown/appkit-common").CaipNetworkId, address: string) => Promise<void>;
334
+ readonly setSessions: (sessions: import("../utils/SIWXUtil.js").SIWXSession[]) => Promise<void>;
335
+ readonly getSessions: (chainId: import("@reown/appkit-common").CaipNetworkId, address: string) => Promise<import("../utils/SIWXUtil.js").SIWXSession[]>;
336
+ readonly getRequired?: (() => boolean) | undefined;
337
+ } | undefined;
338
+ readonly enableEmbedded?: boolean
339
+ /**
340
+ * Allow users to switch to an unsupported chain.
341
+ * @default false
342
+ */
343
+ | undefined;
344
+ readonly allowUnsupportedChain?: boolean
345
+ /**
346
+ * Default account types for each namespace.
347
+ * @default "{ bip122: 'payment', eip155: 'smartAccount', polkadot: 'eoa', solana: 'eoa' }"
348
+ */
349
+ | undefined;
350
+ readonly defaultAccountTypes: {
351
+ readonly eip155: "eoa" | "smartAccount";
352
+ readonly solana: "eoa";
353
+ readonly bip122: "payment" | "ordinal" | "stx";
354
+ readonly polkadot: "eoa";
355
+ };
356
+ readonly manualWCControl?: boolean | undefined;
357
+ readonly sdkType: "appkit";
358
+ readonly sdkVersion: SdkVersion;
359
+ readonly isSiweEnabled?: boolean | undefined;
360
+ readonly isUniversalProvider?: boolean | undefined;
361
+ readonly hasMultipleAddresses?: boolean | undefined;
362
+ };
363
+ };
364
+ export {};
@@ -0,0 +1,33 @@
1
+ import type { CaipNetworkId, ChainNamespace } from '@reown/appkit-common';
2
+ export interface PublicStateControllerState {
3
+ /**
4
+ * @description Indicates if the AppKit is loading.
5
+ * @type {boolean}
6
+ */
7
+ loading: boolean;
8
+ /**
9
+ * @description Indicates if the AppKit modal is open.
10
+ * @type {boolean}
11
+ */
12
+ open: boolean;
13
+ /**
14
+ * @description Indicates the selected network id in CAIP-2 format.
15
+ * @type {CaipNetworkId | undefined}
16
+ */
17
+ selectedNetworkId?: CaipNetworkId | undefined;
18
+ /**
19
+ * @description Indicates the active chain namespace.
20
+ * @type {ChainNamespace | undefined}
21
+ */
22
+ activeChain?: ChainNamespace | undefined;
23
+ /**
24
+ * @description Indicates if the AppKit has been initialized. This sets to true when all controllers, adapters and internal state is ready.
25
+ * @type {boolean}
26
+ */
27
+ initialized: boolean;
28
+ }
29
+ export declare const PublicStateController: {
30
+ state: PublicStateControllerState;
31
+ subscribe(callback: (newState: PublicStateControllerState) => void): () => void;
32
+ set(newState: Partial<PublicStateControllerState>): void;
33
+ };
@@ -0,0 +1,56 @@
1
+ import type { CaipNetwork, ChainNamespace } from '@reown/appkit-common';
2
+ import type { Connector, WcWallet } from '../utils/TypeUtil.js';
3
+ import type { SwapInputTarget } from './SwapController.js';
4
+ type TransactionAction = {
5
+ /**
6
+ * If true, the router will go back to the previous view after the transaction is complete..
7
+ */
8
+ goBack: boolean;
9
+ /**
10
+ * If set, the router will navigate to the specified view after the transaction is complete.
11
+ */
12
+ view: RouterControllerState['view'] | null;
13
+ /**
14
+ * If true, the router will remove the previous view from the history and navigate to the current view.
15
+ */
16
+ replace?: boolean;
17
+ /**
18
+ * Function to be called when the transaction is complete.
19
+ */
20
+ onSuccess?: () => void;
21
+ /**
22
+ * Function to be called when the transaction is cancelled.
23
+ */
24
+ onCancel?: () => void;
25
+ };
26
+ export interface RouterControllerState {
27
+ view: 'Account' | 'AccountSettings' | 'AllWallets' | 'ApproveTransaction' | 'BuyInProgress' | 'WalletCompatibleNetworks' | 'ChooseAccountName' | 'Connect' | 'Create' | 'ConnectingExternal' | 'ConnectingFarcaster' | 'ConnectingWalletConnect' | 'ConnectingWalletConnectBasic' | 'ConnectingSiwe' | 'ConnectingSocial' | 'ConnectSocials' | 'ConnectWallets' | 'Downloads' | 'EmailVerifyOtp' | 'EmailVerifyDevice' | 'GetWallet' | 'Networks' | 'OnRampActivity' | 'OnRampFiatSelect' | 'OnRampProviders' | 'OnRampTokenSelect' | 'Profile' | 'RegisterAccountName' | 'RegisterAccountNameSuccess' | 'SwitchNetwork' | 'SwitchAddress' | 'Transactions' | 'UnsupportedChain' | 'UpdateEmailWallet' | 'UpdateEmailPrimaryOtp' | 'UpdateEmailSecondaryOtp' | 'UpgradeEmailWallet' | 'WalletReceive' | 'WalletSend' | 'WalletSendPreview' | 'WalletSendSelectToken' | 'WhatIsANetwork' | 'WhatIsAWallet' | 'WhatIsABuy' | 'Swap' | 'SwapSelectToken' | 'SwapPreview' | 'ConnectingMultiChain' | 'SwitchActiveChain' | 'SmartSessionCreated' | 'SmartSessionList' | 'SIWXSignMessage';
28
+ history: RouterControllerState['view'][];
29
+ data?: {
30
+ connector?: Connector;
31
+ wallet?: WcWallet;
32
+ network?: CaipNetwork;
33
+ email?: string;
34
+ newEmail?: string;
35
+ target?: SwapInputTarget;
36
+ swapUnsupportedChain?: boolean;
37
+ connectors?: Connector[];
38
+ switchToChain?: ChainNamespace;
39
+ navigateTo?: RouterControllerState['view'];
40
+ navigateWithReplace?: boolean;
41
+ };
42
+ transactionStack: TransactionAction[];
43
+ }
44
+ type StateKey = keyof RouterControllerState;
45
+ export declare const RouterController: {
46
+ state: RouterControllerState;
47
+ subscribeKey<K extends StateKey>(key: K, callback: (value: RouterControllerState[K]) => void): () => void;
48
+ pushTransactionStack(action: TransactionAction): void;
49
+ popTransactionStack(cancel?: boolean): void;
50
+ push(view: RouterControllerState["view"], data?: RouterControllerState["data"]): void;
51
+ reset(view: RouterControllerState["view"], data?: RouterControllerState["data"]): void;
52
+ replace(view: RouterControllerState["view"], data?: RouterControllerState["data"]): void;
53
+ goBack(): void;
54
+ goBackToIndex(historyIndex: number): void;
55
+ };
56
+ export {};
@@ -0,0 +1,52 @@
1
+ import { type Balance } from '@reown/appkit-common';
2
+ export interface TxParams {
3
+ receiverAddress: string;
4
+ sendTokenAmount: number;
5
+ gasPrice: bigint;
6
+ decimals: string;
7
+ }
8
+ export interface ContractWriteParams {
9
+ receiverAddress: string;
10
+ tokenAddress: string;
11
+ sendTokenAmount: number;
12
+ decimals: string;
13
+ }
14
+ export interface SendControllerState {
15
+ tokenBalances: Balance[];
16
+ token?: Balance;
17
+ sendTokenAmount?: number;
18
+ receiverAddress?: string;
19
+ receiverProfileName?: string;
20
+ receiverProfileImageUrl?: string;
21
+ gasPrice?: bigint;
22
+ gasPriceInUSD?: number;
23
+ networkBalanceInUSD?: string;
24
+ loading: boolean;
25
+ lastRetry?: number;
26
+ }
27
+ type StateKey = keyof SendControllerState;
28
+ export declare const SendController: {
29
+ state: SendControllerState;
30
+ subscribe(callback: (newState: SendControllerState) => void): () => void;
31
+ subscribeKey<K extends StateKey>(key: K, callback: (value: SendControllerState[K]) => void): () => void;
32
+ setToken(token: SendControllerState["token"]): void;
33
+ setTokenAmount(sendTokenAmount: SendControllerState["sendTokenAmount"]): void;
34
+ setReceiverAddress(receiverAddress: SendControllerState["receiverAddress"]): void;
35
+ setReceiverProfileImageUrl(receiverProfileImageUrl: SendControllerState["receiverProfileImageUrl"]): void;
36
+ setReceiverProfileName(receiverProfileName: SendControllerState["receiverProfileName"]): void;
37
+ setGasPrice(gasPrice: SendControllerState["gasPrice"]): void;
38
+ setGasPriceInUsd(gasPriceInUSD: SendControllerState["gasPriceInUSD"]): void;
39
+ setNetworkBalanceInUsd(networkBalanceInUSD: SendControllerState["networkBalanceInUSD"]): void;
40
+ setLoading(loading: SendControllerState["loading"]): void;
41
+ sendToken(): void;
42
+ sendEvmToken(): void;
43
+ fetchTokenBalance(onError?: (error: unknown) => void): Promise<Balance[]>;
44
+ fetchNetworkBalance(): void;
45
+ isInsufficientNetworkTokenForGas(networkBalanceInUSD: string, gasPriceInUSD: number | undefined): boolean;
46
+ hasInsufficientGasFunds(): boolean;
47
+ sendNativeToken(params: TxParams): Promise<void>;
48
+ sendERC20Token(params: ContractWriteParams): Promise<void>;
49
+ sendSolanaToken(): void;
50
+ resetSend(): void;
51
+ };
52
+ export {};
@@ -0,0 +1,29 @@
1
+ export interface SnackControllerState {
2
+ message: string;
3
+ variant: 'error' | 'success' | 'loading';
4
+ svg?: {
5
+ iconColor: string;
6
+ icon: string;
7
+ };
8
+ open: boolean;
9
+ autoClose: boolean;
10
+ }
11
+ export type SnackControllerShowOptions = {
12
+ autoClose?: boolean;
13
+ svg?: SnackControllerState['svg'];
14
+ variant?: SnackControllerState['variant'];
15
+ };
16
+ type StateKey = keyof SnackControllerState;
17
+ export declare const SnackController: {
18
+ state: SnackControllerState;
19
+ subscribeKey<K extends StateKey>(key: K, callback: (value: SnackControllerState[K]) => void): () => void;
20
+ showLoading(message: SnackControllerState["message"], options?: SnackControllerShowOptions): void;
21
+ showSuccess(message: SnackControllerState["message"]): void;
22
+ showSvg(message: SnackControllerState["message"], svg: NonNullable<SnackControllerState["svg"]>): void;
23
+ showError(message: unknown): void;
24
+ hide(): void;
25
+ _showMessage({ message, svg, variant, autoClose }: {
26
+ message: string;
27
+ } & SnackControllerShowOptions): void;
28
+ };
29
+ export {};
@@ -0,0 +1,127 @@
1
+ import type { SwapTokenWithBalance } from '../utils/TypeUtil.js';
2
+ export declare const INITIAL_GAS_LIMIT = 150000;
3
+ export declare const TO_AMOUNT_DECIMALS = 6;
4
+ export type SwapInputTarget = 'sourceToken' | 'toToken';
5
+ type TransactionParams = {
6
+ data: string;
7
+ to: string;
8
+ gas: bigint;
9
+ gasPrice: bigint;
10
+ value: bigint;
11
+ toAmount: string;
12
+ };
13
+ export interface SwapControllerState {
14
+ initializing: boolean;
15
+ initialized: boolean;
16
+ loadingPrices: boolean;
17
+ loadingQuote?: boolean;
18
+ loadingApprovalTransaction?: boolean;
19
+ loadingBuildTransaction?: boolean;
20
+ loadingTransaction?: boolean;
21
+ fetchError: boolean;
22
+ approvalTransaction: TransactionParams | undefined;
23
+ swapTransaction: TransactionParams | undefined;
24
+ transactionError?: string;
25
+ sourceToken?: SwapTokenWithBalance;
26
+ sourceTokenAmount: string;
27
+ sourceTokenPriceInUSD: number;
28
+ toToken?: SwapTokenWithBalance;
29
+ toTokenAmount: string;
30
+ toTokenPriceInUSD: number;
31
+ networkPrice: string;
32
+ networkBalanceInUSD: string;
33
+ networkTokenSymbol: string;
34
+ inputError: string | undefined;
35
+ slippage: number;
36
+ tokens?: SwapTokenWithBalance[];
37
+ suggestedTokens?: SwapTokenWithBalance[];
38
+ popularTokens?: SwapTokenWithBalance[];
39
+ foundTokens?: SwapTokenWithBalance[];
40
+ myTokensWithBalance?: SwapTokenWithBalance[];
41
+ tokensPriceMap: Record<string, number>;
42
+ gasFee: string;
43
+ gasPriceInUSD?: number;
44
+ priceImpact: number | undefined;
45
+ maxSlippage: number | undefined;
46
+ providerFee: string | undefined;
47
+ }
48
+ export interface TokenInfo {
49
+ address: `0x${string}`;
50
+ symbol: string;
51
+ name: string;
52
+ decimals: number;
53
+ logoURI: string;
54
+ domainVersion?: string;
55
+ eip2612?: boolean;
56
+ isFoT?: boolean;
57
+ tags?: string[];
58
+ }
59
+ type StateKey = keyof SwapControllerState;
60
+ export declare const SwapController: {
61
+ state: SwapControllerState;
62
+ subscribe(callback: (newState: SwapControllerState) => void): () => void;
63
+ subscribeKey<K extends StateKey>(key: K, callback: (value: SwapControllerState[K]) => void): () => void;
64
+ getParams(): {
65
+ networkAddress: string;
66
+ fromAddress: string;
67
+ fromCaipAddress: `eip155:${string}:${string}` | `eip155:${number}:${string}` | `solana:${string}:${string}` | `solana:${number}:${string}` | `polkadot:${string}:${string}` | `polkadot:${number}:${string}` | `bip122:${string}:${string}` | `bip122:${number}:${string}` | undefined;
68
+ sourceTokenAddress: `eip155:${string}:${string}` | `eip155:${number}:${string}` | `solana:${string}:${string}` | `solana:${number}:${string}` | `polkadot:${string}:${string}` | `polkadot:${number}:${string}` | `bip122:${string}:${string}` | `bip122:${number}:${string}` | undefined;
69
+ toTokenAddress: `eip155:${string}:${string}` | `eip155:${number}:${string}` | `solana:${string}:${string}` | `solana:${number}:${string}` | `polkadot:${string}:${string}` | `polkadot:${number}:${string}` | `bip122:${string}:${string}` | `bip122:${number}:${string}` | undefined;
70
+ toTokenAmount: string;
71
+ toTokenDecimals: number | undefined;
72
+ sourceTokenAmount: string;
73
+ sourceTokenDecimals: number | undefined;
74
+ invalidToToken: boolean;
75
+ invalidSourceToken: boolean;
76
+ invalidSourceTokenAmount: boolean;
77
+ availableToSwap: boolean | undefined;
78
+ isAuthConnector: boolean;
79
+ };
80
+ setSourceToken(sourceToken: SwapTokenWithBalance | undefined): void;
81
+ setSourceTokenAmount(amount: string): void;
82
+ setToToken(toToken: SwapTokenWithBalance | undefined): void;
83
+ setToTokenAmount(amount: string): void;
84
+ setTokenPrice(address: string, target: SwapInputTarget): Promise<void>;
85
+ switchTokens(): void;
86
+ resetState(): void;
87
+ resetValues(): void;
88
+ getApprovalLoadingState(): boolean | undefined;
89
+ clearError(): void;
90
+ initializeState(): Promise<void>;
91
+ fetchTokens(): Promise<void>;
92
+ getTokenList(): Promise<void>;
93
+ getAddressPrice(address: string): Promise<number>;
94
+ getNetworkTokenPrice(): Promise<void>;
95
+ getMyTokensWithBalance(forceUpdate?: string): Promise<void>;
96
+ setBalances(balances: SwapTokenWithBalance[]): void;
97
+ getInitialGasPrice(): Promise<{
98
+ gasPrice: null;
99
+ gasPriceInUSD: null;
100
+ } | {
101
+ gasPrice: bigint;
102
+ gasPriceInUSD: number;
103
+ }>;
104
+ swapTokens(): Promise<void>;
105
+ getTransaction(): Promise<TransactionParams | undefined>;
106
+ createAllowanceTransaction(): Promise<{
107
+ data: `0x${string}`;
108
+ to: `0x${string}`;
109
+ gas: bigint;
110
+ gasPrice: bigint;
111
+ value: bigint;
112
+ toAmount: string;
113
+ } | undefined>;
114
+ createSwapTransaction(): Promise<{
115
+ data: `0x${string}`;
116
+ to: `0x${string}`;
117
+ gas: bigint;
118
+ gasPrice: bigint;
119
+ value: bigint;
120
+ toAmount: string;
121
+ } | undefined>;
122
+ sendTransactionForApproval(data: TransactionParams): Promise<void>;
123
+ sendTransactionForSwap(data: TransactionParams | undefined): Promise<string | null | undefined>;
124
+ hasInsufficientToken(sourceTokenAmount: string, sourceTokenAddress: string): boolean;
125
+ setTransactionDetails(): void;
126
+ };
127
+ export {};