@onekeyfe/hd-core 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (329) hide show
  1. package/.eslintrc +6 -0
  2. package/README.md +3 -0
  3. package/dist/api/BTCGetAddress.d.ts +8 -0
  4. package/dist/api/BTCGetAddress.d.ts.map +1 -0
  5. package/dist/api/BTCGetPublicKey.d.ts +8 -0
  6. package/dist/api/BTCGetPublicKey.d.ts.map +1 -0
  7. package/dist/api/BTCSignMessage.d.ts +10 -0
  8. package/dist/api/BTCSignMessage.d.ts.map +1 -0
  9. package/dist/api/BTCSignTransaction.d.ts +17 -0
  10. package/dist/api/BTCSignTransaction.d.ts.map +1 -0
  11. package/dist/api/BTCVerifyMessage.d.ts +9 -0
  12. package/dist/api/BTCVerifyMessage.d.ts.map +1 -0
  13. package/dist/api/BaseMethod.d.ts +24 -0
  14. package/dist/api/BaseMethod.d.ts.map +1 -0
  15. package/dist/api/CheckBLEFirmwareRelease.d.ts +6 -0
  16. package/dist/api/CheckBLEFirmwareRelease.d.ts.map +1 -0
  17. package/dist/api/CheckFirmwareRelease.d.ts +6 -0
  18. package/dist/api/CheckFirmwareRelease.d.ts.map +1 -0
  19. package/dist/api/CheckTransportRelease.d.ts +6 -0
  20. package/dist/api/CheckTransportRelease.d.ts.map +1 -0
  21. package/dist/api/DeviceBackup.d.ts +9 -0
  22. package/dist/api/DeviceBackup.d.ts.map +1 -0
  23. package/dist/api/DeviceChangePin.d.ts +9 -0
  24. package/dist/api/DeviceChangePin.d.ts.map +1 -0
  25. package/dist/api/DeviceFlags.d.ts +9 -0
  26. package/dist/api/DeviceFlags.d.ts.map +1 -0
  27. package/dist/api/DeviceRebootToBootloader.d.ts +9 -0
  28. package/dist/api/DeviceRebootToBootloader.d.ts.map +1 -0
  29. package/dist/api/DeviceRecovery.d.ts +9 -0
  30. package/dist/api/DeviceRecovery.d.ts.map +1 -0
  31. package/dist/api/DeviceReset.d.ts +9 -0
  32. package/dist/api/DeviceReset.d.ts.map +1 -0
  33. package/dist/api/DeviceSettings.d.ts +9 -0
  34. package/dist/api/DeviceSettings.d.ts.map +1 -0
  35. package/dist/api/DeviceUpdateReboot.d.ts +9 -0
  36. package/dist/api/DeviceUpdateReboot.d.ts.map +1 -0
  37. package/dist/api/DeviceWipe.d.ts +9 -0
  38. package/dist/api/DeviceWipe.d.ts.map +1 -0
  39. package/dist/api/EVMGetAddress.d.ts +8 -0
  40. package/dist/api/EVMGetAddress.d.ts.map +1 -0
  41. package/dist/api/EVMGetPublicKey.d.ts +8 -0
  42. package/dist/api/EVMGetPublicKey.d.ts.map +1 -0
  43. package/dist/api/EVMSignMessage.d.ts +10 -0
  44. package/dist/api/EVMSignMessage.d.ts.map +1 -0
  45. package/dist/api/EVMSignMessageEIP712.d.ts +10 -0
  46. package/dist/api/EVMSignMessageEIP712.d.ts.map +1 -0
  47. package/dist/api/EVMSignTransaction.d.ts +20 -0
  48. package/dist/api/EVMSignTransaction.d.ts.map +1 -0
  49. package/dist/api/EVMSignTypedData.d.ts +18 -0
  50. package/dist/api/EVMSignTypedData.d.ts.map +1 -0
  51. package/dist/api/EVMVerifyMessage.d.ts +9 -0
  52. package/dist/api/EVMVerifyMessage.d.ts.map +1 -0
  53. package/dist/api/GetFeatures.d.ts +51 -0
  54. package/dist/api/GetFeatures.d.ts.map +1 -0
  55. package/dist/api/SearchDevices.d.ts +16 -0
  56. package/dist/api/SearchDevices.d.ts.map +1 -0
  57. package/dist/api/helpers/bigNumberUtils.d.ts +4 -0
  58. package/dist/api/helpers/bigNumberUtils.d.ts.map +1 -0
  59. package/dist/api/helpers/btc/signtx.d.ts +5 -0
  60. package/dist/api/helpers/btc/signtx.d.ts.map +1 -0
  61. package/dist/api/helpers/btc/signtxLegacy.d.ts +5 -0
  62. package/dist/api/helpers/btc/signtxLegacy.d.ts.map +1 -0
  63. package/dist/api/helpers/btcParamsUtils.d.ts +11 -0
  64. package/dist/api/helpers/btcParamsUtils.d.ts.map +1 -0
  65. package/dist/api/helpers/hexUtils.d.ts +7 -0
  66. package/dist/api/helpers/hexUtils.d.ts.map +1 -0
  67. package/dist/api/helpers/paramsValidator.d.ts +8 -0
  68. package/dist/api/helpers/paramsValidator.d.ts.map +1 -0
  69. package/dist/api/helpers/pathUtils.d.ts +12 -0
  70. package/dist/api/helpers/pathUtils.d.ts.map +1 -0
  71. package/dist/api/helpers/stringUtils.d.ts +2 -0
  72. package/dist/api/helpers/stringUtils.d.ts.map +1 -0
  73. package/dist/api/helpers/typeNameUtils.d.ts +9 -0
  74. package/dist/api/helpers/typeNameUtils.d.ts.map +1 -0
  75. package/dist/api/index.d.ts +27 -0
  76. package/dist/api/index.d.ts.map +1 -0
  77. package/dist/api/utils.d.ts +5 -0
  78. package/dist/api/utils.d.ts.map +1 -0
  79. package/dist/constants/errors.d.ts +25 -0
  80. package/dist/constants/errors.d.ts.map +1 -0
  81. package/dist/constants/index.d.ts +3 -0
  82. package/dist/constants/index.d.ts.map +1 -0
  83. package/dist/constants/ui-request.d.ts +13 -0
  84. package/dist/constants/ui-request.d.ts.map +1 -0
  85. package/dist/core/index.d.ts +14 -0
  86. package/dist/core/index.d.ts.map +1 -0
  87. package/dist/data/version.d.ts +3 -0
  88. package/dist/data/version.d.ts.map +1 -0
  89. package/dist/data-manager/CoinManager.d.ts +13 -0
  90. package/dist/data-manager/CoinManager.d.ts.map +1 -0
  91. package/dist/data-manager/DataManager.d.ts +17 -0
  92. package/dist/data-manager/DataManager.d.ts.map +1 -0
  93. package/dist/data-manager/TransportManager.d.ts +15 -0
  94. package/dist/data-manager/TransportManager.d.ts.map +1 -0
  95. package/dist/data-manager/connectSettings.d.ts +9 -0
  96. package/dist/data-manager/connectSettings.d.ts.map +1 -0
  97. package/dist/data-manager/index.d.ts +3 -0
  98. package/dist/data-manager/index.d.ts.map +1 -0
  99. package/dist/device/Device.d.ts +64 -0
  100. package/dist/device/Device.d.ts.map +1 -0
  101. package/dist/device/DeviceCommands.d.ts +35 -0
  102. package/dist/device/DeviceCommands.d.ts.map +1 -0
  103. package/dist/device/DeviceConnector.d.ts +28 -0
  104. package/dist/device/DeviceConnector.d.ts.map +1 -0
  105. package/dist/device/DeviceList.d.ts +12 -0
  106. package/dist/device/DeviceList.d.ts.map +1 -0
  107. package/dist/events/call.d.ts +41 -0
  108. package/dist/events/call.d.ts.map +1 -0
  109. package/dist/events/core.d.ts +16 -0
  110. package/dist/events/core.d.ts.map +1 -0
  111. package/dist/events/device.d.ts +23 -0
  112. package/dist/events/device.d.ts.map +1 -0
  113. package/dist/events/iframe.d.ts +24 -0
  114. package/dist/events/iframe.d.ts.map +1 -0
  115. package/dist/events/index.d.ts +8 -0
  116. package/dist/events/index.d.ts.map +1 -0
  117. package/dist/events/ui-promise.d.ts +12 -0
  118. package/dist/events/ui-promise.d.ts.map +1 -0
  119. package/dist/events/ui-request.d.ts +20 -0
  120. package/dist/events/ui-request.d.ts.map +1 -0
  121. package/dist/events/ui-response.d.ts +15 -0
  122. package/dist/events/ui-response.d.ts.map +1 -0
  123. package/dist/events/utils.d.ts +15 -0
  124. package/dist/events/utils.d.ts.map +1 -0
  125. package/dist/index.d.ts +823 -0
  126. package/dist/index.d.ts.map +1 -0
  127. package/dist/index.js +12396 -0
  128. package/dist/inject.d.ts +14 -0
  129. package/dist/inject.d.ts.map +1 -0
  130. package/dist/types/api/btcGetAddress.d.ts +14 -0
  131. package/dist/types/api/btcGetAddress.d.ts.map +1 -0
  132. package/dist/types/api/btcGetPublicKey.d.ts +13 -0
  133. package/dist/types/api/btcGetPublicKey.d.ts.map +1 -0
  134. package/dist/types/api/btcSignMessage.d.ts +9 -0
  135. package/dist/types/api/btcSignMessage.d.ts.map +1 -0
  136. package/dist/types/api/btcSignTransaction.d.ts +74 -0
  137. package/dist/types/api/btcSignTransaction.d.ts.map +1 -0
  138. package/dist/types/api/btcVerifyMessage.d.ts +10 -0
  139. package/dist/types/api/btcVerifyMessage.d.ts.map +1 -0
  140. package/dist/types/api/checkBLEFirmwareRelease.d.ts +4 -0
  141. package/dist/types/api/checkBLEFirmwareRelease.d.ts.map +1 -0
  142. package/dist/types/api/checkFirmwareRelease.d.ts +4 -0
  143. package/dist/types/api/checkFirmwareRelease.d.ts.map +1 -0
  144. package/dist/types/api/checkTransportRelease.d.ts +4 -0
  145. package/dist/types/api/checkTransportRelease.d.ts.map +1 -0
  146. package/dist/types/api/deviceBackup.d.ts +4 -0
  147. package/dist/types/api/deviceBackup.d.ts.map +1 -0
  148. package/dist/types/api/deviceChangePin.d.ts +7 -0
  149. package/dist/types/api/deviceChangePin.d.ts.map +1 -0
  150. package/dist/types/api/deviceFlags.d.ts +7 -0
  151. package/dist/types/api/deviceFlags.d.ts.map +1 -0
  152. package/dist/types/api/deviceRebootToBootloader.d.ts +4 -0
  153. package/dist/types/api/deviceRebootToBootloader.d.ts.map +1 -0
  154. package/dist/types/api/deviceRecovery.d.ts +15 -0
  155. package/dist/types/api/deviceRecovery.d.ts.map +1 -0
  156. package/dist/types/api/deviceReset.d.ts +16 -0
  157. package/dist/types/api/deviceReset.d.ts.map +1 -0
  158. package/dist/types/api/deviceSettings.d.ts +16 -0
  159. package/dist/types/api/deviceSettings.d.ts.map +1 -0
  160. package/dist/types/api/deviceUpdateReboot.d.ts +4 -0
  161. package/dist/types/api/deviceUpdateReboot.d.ts.map +1 -0
  162. package/dist/types/api/deviceWipe.d.ts +4 -0
  163. package/dist/types/api/deviceWipe.d.ts.map +1 -0
  164. package/dist/types/api/event.d.ts +4 -0
  165. package/dist/types/api/event.d.ts.map +1 -0
  166. package/dist/types/api/evmGetAddress.d.ts +11 -0
  167. package/dist/types/api/evmGetAddress.d.ts.map +1 -0
  168. package/dist/types/api/evmGetPublicKey.d.ts +11 -0
  169. package/dist/types/api/evmGetPublicKey.d.ts.map +1 -0
  170. package/dist/types/api/evmSignMessage.d.ts +8 -0
  171. package/dist/types/api/evmSignMessage.d.ts.map +1 -0
  172. package/dist/types/api/evmSignMessageEIP712.d.ts +9 -0
  173. package/dist/types/api/evmSignMessageEIP712.d.ts.map +1 -0
  174. package/dist/types/api/evmSignTransaction.d.ts +36 -0
  175. package/dist/types/api/evmSignTransaction.d.ts.map +1 -0
  176. package/dist/types/api/evmSignTypedData.d.ts +33 -0
  177. package/dist/types/api/evmSignTypedData.d.ts.map +1 -0
  178. package/dist/types/api/evmVerifyMessage.d.ts +9 -0
  179. package/dist/types/api/evmVerifyMessage.d.ts.map +1 -0
  180. package/dist/types/api/getFeatures.d.ts +4 -0
  181. package/dist/types/api/getFeatures.d.ts.map +1 -0
  182. package/dist/types/api/index.d.ts +66 -0
  183. package/dist/types/api/index.d.ts.map +1 -0
  184. package/dist/types/api/init.d.ts +3 -0
  185. package/dist/types/api/init.d.ts.map +1 -0
  186. package/dist/types/api/searchDevices.d.ts +4 -0
  187. package/dist/types/api/searchDevices.d.ts.map +1 -0
  188. package/dist/types/api/uiResponse.d.ts +3 -0
  189. package/dist/types/api/uiResponse.d.ts.map +1 -0
  190. package/dist/types/device.d.ts +29 -0
  191. package/dist/types/device.d.ts.map +1 -0
  192. package/dist/types/firmware.d.ts +37 -0
  193. package/dist/types/firmware.d.ts.map +1 -0
  194. package/dist/types/index.d.ts +6 -0
  195. package/dist/types/index.d.ts.map +1 -0
  196. package/dist/types/params.d.ts +16 -0
  197. package/dist/types/params.d.ts.map +1 -0
  198. package/dist/types/settings.d.ts +65 -0
  199. package/dist/types/settings.d.ts.map +1 -0
  200. package/dist/utils/assets.d.ts +3 -0
  201. package/dist/utils/assets.d.ts.map +1 -0
  202. package/dist/utils/deferred.d.ts +9 -0
  203. package/dist/utils/deferred.d.ts.map +1 -0
  204. package/dist/utils/deviceFeaturesUtils.d.ts +52 -0
  205. package/dist/utils/deviceFeaturesUtils.d.ts.map +1 -0
  206. package/dist/utils/findDefectiveBatchDevice.d.ts +3 -0
  207. package/dist/utils/findDefectiveBatchDevice.d.ts.map +1 -0
  208. package/dist/utils/index.d.ts +6 -0
  209. package/dist/utils/index.d.ts.map +1 -0
  210. package/dist/utils/logger.d.ts +24 -0
  211. package/dist/utils/logger.d.ts.map +1 -0
  212. package/dist/utils/networkUtils.d.ts +2 -0
  213. package/dist/utils/networkUtils.d.ts.map +1 -0
  214. package/dist/utils/promiseUtils.d.ts +2 -0
  215. package/dist/utils/promiseUtils.d.ts.map +1 -0
  216. package/dist/utils/versionUtils.d.ts +6 -0
  217. package/dist/utils/versionUtils.d.ts.map +1 -0
  218. package/package.json +39 -0
  219. package/src/api/BTCGetAddress.ts +71 -0
  220. package/src/api/BTCGetPublicKey.ts +70 -0
  221. package/src/api/BTCSignMessage.ts +40 -0
  222. package/src/api/BTCSignTransaction.ts +141 -0
  223. package/src/api/BTCVerifyMessage.ts +40 -0
  224. package/src/api/BaseMethod.ts +71 -0
  225. package/src/api/CheckBLEFirmwareRelease.ts +18 -0
  226. package/src/api/CheckFirmwareRelease.ts +15 -0
  227. package/src/api/CheckTransportRelease.ts +19 -0
  228. package/src/api/DeviceBackup.ts +12 -0
  229. package/src/api/DeviceChangePin.ts +22 -0
  230. package/src/api/DeviceFlags.ts +23 -0
  231. package/src/api/DeviceRebootToBootloader.ts +13 -0
  232. package/src/api/DeviceRecovery.ts +41 -0
  233. package/src/api/DeviceReset.ts +43 -0
  234. package/src/api/DeviceSettings.ts +45 -0
  235. package/src/api/DeviceUpdateReboot.ts +13 -0
  236. package/src/api/DeviceWipe.ts +12 -0
  237. package/src/api/EVMGetAddress.ts +54 -0
  238. package/src/api/EVMGetPublicKey.ts +58 -0
  239. package/src/api/EVMSignMessage.ts +40 -0
  240. package/src/api/EVMSignMessageEIP712.ts +40 -0
  241. package/src/api/EVMSignTransaction.ts +195 -0
  242. package/src/api/EVMSignTypedData.ts +212 -0
  243. package/src/api/EVMVerifyMessage.ts +33 -0
  244. package/src/api/GetFeatures.ts +12 -0
  245. package/src/api/SearchDevices.ts +40 -0
  246. package/src/api/helpers/bigNumberUtils.ts +58 -0
  247. package/src/api/helpers/btc/signtx.ts +232 -0
  248. package/src/api/helpers/btc/signtxLegacy.ts +205 -0
  249. package/src/api/helpers/btcParamsUtils.ts +57 -0
  250. package/src/api/helpers/hexUtils.ts +50 -0
  251. package/src/api/helpers/paramsValidator.ts +95 -0
  252. package/src/api/helpers/pathUtils.ts +111 -0
  253. package/src/api/helpers/stringUtils.ts +8 -0
  254. package/src/api/helpers/typeNameUtils.ts +132 -0
  255. package/src/api/index.ts +26 -0
  256. package/src/api/utils.ts +18 -0
  257. package/src/constants/errors.ts +47 -0
  258. package/src/constants/index.ts +2 -0
  259. package/src/constants/ui-request.ts +12 -0
  260. package/src/core/index.ts +305 -0
  261. package/src/data/coins/bitcoin.json +42 -0
  262. package/src/data/messages/messages.json +8658 -0
  263. package/src/data/version.ts +3 -0
  264. package/src/data-manager/CoinManager.ts +31 -0
  265. package/src/data-manager/DataManager.ts +148 -0
  266. package/src/data-manager/TransportManager.ts +87 -0
  267. package/src/data-manager/connectSettings.ts +109 -0
  268. package/src/data-manager/index.ts +2 -0
  269. package/src/device/Device.ts +411 -0
  270. package/src/device/DeviceCommands.ts +207 -0
  271. package/src/device/DeviceConnector.ts +173 -0
  272. package/src/device/DeviceList.ts +47 -0
  273. package/src/events/call.ts +72 -0
  274. package/src/events/core.ts +41 -0
  275. package/src/events/device.ts +28 -0
  276. package/src/events/iframe.ts +34 -0
  277. package/src/events/index.ts +7 -0
  278. package/src/events/ui-promise.ts +14 -0
  279. package/src/events/ui-request.ts +28 -0
  280. package/src/events/ui-response.ts +25 -0
  281. package/src/events/utils.ts +19 -0
  282. package/src/index.ts +29 -0
  283. package/src/inject.ts +103 -0
  284. package/src/types/api/btcGetAddress.ts +24 -0
  285. package/src/types/api/btcGetPublicKey.ts +19 -0
  286. package/src/types/api/btcSignMessage.ts +13 -0
  287. package/src/types/api/btcSignTransaction.ts +98 -0
  288. package/src/types/api/btcVerifyMessage.ts +14 -0
  289. package/src/types/api/checkBLEFirmwareRelease.ts +6 -0
  290. package/src/types/api/checkFirmwareRelease.ts +4 -0
  291. package/src/types/api/checkTransportRelease.ts +4 -0
  292. package/src/types/api/deviceBackup.ts +4 -0
  293. package/src/types/api/deviceChangePin.ts +11 -0
  294. package/src/types/api/deviceFlags.ts +11 -0
  295. package/src/types/api/deviceRebootToBootloader.ts +4 -0
  296. package/src/types/api/deviceRecovery.ts +19 -0
  297. package/src/types/api/deviceReset.ts +20 -0
  298. package/src/types/api/deviceSettings.ts +17 -0
  299. package/src/types/api/deviceUpdateReboot.ts +4 -0
  300. package/src/types/api/deviceWipe.ts +4 -0
  301. package/src/types/api/event.ts +8 -0
  302. package/src/types/api/evmGetAddress.ts +17 -0
  303. package/src/types/api/evmGetPublicKey.ts +17 -0
  304. package/src/types/api/evmSignMessage.ts +12 -0
  305. package/src/types/api/evmSignMessageEIP712.ts +13 -0
  306. package/src/types/api/evmSignTransaction.ts +43 -0
  307. package/src/types/api/evmSignTypedData.ts +40 -0
  308. package/src/types/api/evmVerifyMessage.ts +13 -0
  309. package/src/types/api/getFeatures.ts +4 -0
  310. package/src/types/api/index.ts +80 -0
  311. package/src/types/api/init.ts +3 -0
  312. package/src/types/api/searchDevices.ts +4 -0
  313. package/src/types/api/uiResponse.ts +3 -0
  314. package/src/types/device.ts +71 -0
  315. package/src/types/firmware.ts +40 -0
  316. package/src/types/global.d.ts +3 -0
  317. package/src/types/index.ts +5 -0
  318. package/src/types/params.ts +15 -0
  319. package/src/types/settings.ts +77 -0
  320. package/src/utils/assets.ts +5 -0
  321. package/src/utils/deferred.ts +35 -0
  322. package/src/utils/deviceFeaturesUtils.ts +49 -0
  323. package/src/utils/findDefectiveBatchDevice.ts +10 -0
  324. package/src/utils/index.ts +7 -0
  325. package/src/utils/logger.ts +113 -0
  326. package/src/utils/networkUtils.ts +18 -0
  327. package/src/utils/promiseUtils.ts +4 -0
  328. package/src/utils/versionUtils.ts +120 -0
  329. package/tsconfig.json +7 -0
@@ -0,0 +1,823 @@
1
+ import EventEmitter, { EventEmitter as EventEmitter$1 } from 'events';
2
+ import { OneKeyDeviceInfo, Messages, Transport } from '@onekeyfe/hd-transport';
3
+ export { Messages as PROTO } from '@onekeyfe/hd-transport';
4
+ import { EthereumAddress, EthereumPublicKey, EthereumMessageSignature, Success as Success$1, Address, MultisigRedeemScriptType, InputScriptType, PublicKey, MessageSignature, TxInputType, TxOutputType, PrevInput, TxOutputBinType, TxInput, RecoveryDeviceType } from '@onekeyfe/hd-transport/src/types/messages';
5
+
6
+ interface CommonParams {
7
+ keepSession?: boolean;
8
+ }
9
+ interface Unsuccessful {
10
+ success: false;
11
+ payload: {
12
+ error: string;
13
+ code?: string;
14
+ };
15
+ }
16
+ interface Success<T> {
17
+ success: true;
18
+ payload: T;
19
+ }
20
+ declare type Response<T> = Promise<Success<T> | Unsuccessful>;
21
+
22
+ declare const on: <T extends string, P extends (...args: any[]) => any>(type: T, fn: P) => void;
23
+ declare const off: (type: any, fn: any) => void;
24
+ declare const removeAllListeners: (type: any) => void;
25
+
26
+ declare function searchDevices(): Response<OneKeyDeviceInfo[]>;
27
+
28
+ declare const ERROR_CODES: {
29
+ Method_InvalidParameter: string;
30
+ Call_API: string;
31
+ Call_NotResponse: string;
32
+ Transport_InvalidProtobuf: string;
33
+ Device_FwException: string;
34
+ Device_UnexpectedMode: string;
35
+ Device_CallInProgress: string;
36
+ Device_InitializeFailed: string;
37
+ Not_Use_Onekey_Device: string;
38
+ Runtime: string;
39
+ Init_NotInitialized: string;
40
+ Init_IframeBlocked: string;
41
+ Init_IframeTimeout: string;
42
+ Init_AlreadyInitialized: string;
43
+ Init_IframeLoadFail: string;
44
+ };
45
+ declare class OnekeyError extends Error {
46
+ code: string;
47
+ message: string;
48
+ constructor(code: string, message: string);
49
+ }
50
+ declare const TypedError: (id: keyof typeof ERROR_CODES, message?: string | undefined) => OnekeyError;
51
+ declare const serializeError: (payload: any) => any;
52
+
53
+ declare const errors_ERROR_CODES: typeof ERROR_CODES;
54
+ type errors_OnekeyError = OnekeyError;
55
+ declare const errors_OnekeyError: typeof OnekeyError;
56
+ declare const errors_TypedError: typeof TypedError;
57
+ declare const errors_serializeError: typeof serializeError;
58
+ declare namespace errors {
59
+ export {
60
+ errors_ERROR_CODES as ERROR_CODES,
61
+ errors_OnekeyError as OnekeyError,
62
+ errors_TypedError as TypedError,
63
+ errors_serializeError as serializeError,
64
+ };
65
+ }
66
+
67
+ declare type ConnectSettings = {
68
+ connectSrc?: string;
69
+ debug?: boolean;
70
+ transportReconnect?: boolean;
71
+ lazyLoad?: boolean;
72
+ origin?: string;
73
+ parentOrigin?: string;
74
+ configSrc: string;
75
+ iframeSrc: string;
76
+ version: string;
77
+ priority: number;
78
+ trustedHost: boolean;
79
+ supportedBrowser?: boolean;
80
+ env: 'node' | 'web' | 'webextension' | 'electron' | 'react-native';
81
+ timestamp: number;
82
+ isFrame?: boolean;
83
+ };
84
+ declare type IVersionArray = [number, number, number];
85
+ declare type ILocale = 'zh-CN' | 'en-US';
86
+ declare type IFirmwareReleaseInfo = {
87
+ required: boolean;
88
+ url: string;
89
+ fingerprint: string;
90
+ version: IVersionArray;
91
+ changelog: {
92
+ [k in ILocale]: string;
93
+ };
94
+ };
95
+ declare type IBLEFirmwareReleaseInfo = {
96
+ required: boolean;
97
+ url: string;
98
+ webUpdate: string;
99
+ fingerprint: string;
100
+ fingerprintWeb: string;
101
+ version: IVersionArray;
102
+ changelog: {
103
+ [k in ILocale]: string;
104
+ };
105
+ };
106
+ declare type DeviceTypeMap = {
107
+ [k in IDeviceType]: {
108
+ firmware: IFirmwareReleaseInfo[];
109
+ ble: IBLEFirmwareReleaseInfo[];
110
+ };
111
+ };
112
+ declare type AssetsMap = {
113
+ bridge: {
114
+ version: IVersionArray;
115
+ linux32Rpm: string;
116
+ linux64Rpm: string;
117
+ linux32Deb: string;
118
+ linux64Deb: string;
119
+ win: string;
120
+ mac: string;
121
+ sha256sumAsc: string;
122
+ changelog: {
123
+ [k in ILocale]: string;
124
+ };
125
+ };
126
+ };
127
+ declare type RemoteConfigResponse = {
128
+ bridge: AssetsMap['bridge'];
129
+ } & DeviceTypeMap;
130
+
131
+ declare type DeviceStatus = 'available' | 'occupied' | 'used';
132
+ declare type DeviceMode = 'normal' | 'bootloader' | 'initialize' | 'seedless';
133
+ declare type UnavailableCapability = 'no-capability' | 'no-support' | 'update-required' | 'trezor-connect-outdated';
134
+ declare type UnavailableCapabilities = {
135
+ [key: string]: UnavailableCapability;
136
+ };
137
+ declare type KnownDevice = {
138
+ connectId: string | null;
139
+ uuid: string;
140
+ deviceId: string | null;
141
+ deviceType: IDeviceType;
142
+ path: string;
143
+ label: string;
144
+ error?: typeof undefined;
145
+ mode: DeviceMode;
146
+ features: Messages.Features;
147
+ unavailableCapabilities: UnavailableCapabilities;
148
+ bleFirmwareVersion: IVersionArray | null;
149
+ firmwareVersion: IVersionArray | null;
150
+ };
151
+ declare type Device$1 = KnownDevice;
152
+ declare type Features = Messages.Features;
153
+ declare type IDeviceType = 'classic' | 'mini' | 'touch' | 'pro';
154
+ declare type IDeviceFirmwareStatus = 'valid' | 'outdated' | 'required' | 'unknown' | 'none';
155
+ declare type IDeviceBLEFirmwareStatus = 'valid' | 'outdated' | 'required' | 'unknown' | 'none';
156
+ declare type ITransportStatus = 'valid' | 'outdated';
157
+
158
+ declare function getFeatures(connectId?: string): Response<Features>;
159
+
160
+ declare function checkFirmwareRelease(connectId?: string): Response<IDeviceFirmwareStatus>;
161
+
162
+ declare function init$1(settings: Partial<ConnectSettings>): Promise<void> | void;
163
+
164
+ declare function checkBLEFirmwareRelease(connectId?: string): Response<IDeviceFirmwareStatus>;
165
+
166
+ interface FirmwareRange {
167
+ '1': {
168
+ min: string;
169
+ max: string;
170
+ };
171
+ '2': {
172
+ min: string;
173
+ max: string;
174
+ };
175
+ }
176
+ declare type VersionArray = [1 | 2, number, number];
177
+ declare type FirmwareRelease = {
178
+ required: boolean;
179
+ url: string;
180
+ fingerprint: string;
181
+ changelog: string;
182
+ min_bridge_version: [number, number, number];
183
+ version: VersionArray;
184
+ min_firmware_version: VersionArray;
185
+ min_bootloader_version: VersionArray;
186
+ bootloader_version?: VersionArray;
187
+ url_bitcoinonly?: string;
188
+ fingerprint_bitcoinonly?: string;
189
+ notes?: string;
190
+ rollout?: number;
191
+ channel?: string;
192
+ };
193
+ declare type ReleaseInfo = {
194
+ changelog: FirmwareRelease[] | null;
195
+ release: FirmwareRelease;
196
+ isLatest: boolean;
197
+ latest: FirmwareRelease;
198
+ isRequired: boolean | null;
199
+ isNewer: boolean | null;
200
+ };
201
+ declare type TransportReleaseStatus = 'valid' | 'outdated';
202
+
203
+ declare function checkTransportRelease(): Response<TransportReleaseStatus>;
204
+
205
+ declare type EVMGetAddressParams = {
206
+ path: string | number[];
207
+ showOnOneKey?: boolean;
208
+ };
209
+ declare function evmGetAddress(connectId: string, params: CommonParams & EVMGetAddressParams): Response<EthereumAddress>;
210
+ declare function evmGetAddress(connectId: string, params: CommonParams & {
211
+ bundle?: EVMGetAddressParams[];
212
+ }): Response<Array<EthereumAddress>>;
213
+
214
+ declare type EVMGetPublicKeyParams = {
215
+ path: string | number[];
216
+ showOnOneKey?: boolean;
217
+ };
218
+ declare function evmGetPublicKey(connectId: string, params: CommonParams & EVMGetPublicKeyParams): Response<EthereumPublicKey>;
219
+ declare function evmGetPublicKey(connectId: string, params: CommonParams & {
220
+ bundle?: EVMGetPublicKeyParams[];
221
+ }): Response<Array<EthereumPublicKey>>;
222
+
223
+ declare type EVMSignMessageParams = {
224
+ path: string | number[];
225
+ messageHex: string;
226
+ };
227
+ declare function evmSignMessage(connectId: string, params: CommonParams & EVMSignMessageParams): Response<EthereumMessageSignature>;
228
+
229
+ declare type EVMSignMessageEIP712Params = {
230
+ path: string | number[];
231
+ domainHash: string;
232
+ messageHash: string;
233
+ };
234
+ declare function evmSignMessageEIP712(connectId: string, params: CommonParams & EVMSignMessageEIP712Params): Response<EthereumMessageSignature>;
235
+
236
+ interface EVMTransaction {
237
+ to: string;
238
+ value: string;
239
+ gasPrice: string;
240
+ gasLimit: string;
241
+ maxFeePerGas?: typeof undefined;
242
+ maxPriorityFeePerGas?: typeof undefined;
243
+ nonce: string;
244
+ data?: string;
245
+ chainId: number;
246
+ txType?: number;
247
+ }
248
+ declare type EVMAccessList = {
249
+ address: string;
250
+ storageKeys: string[];
251
+ };
252
+ declare type EVMTransactionEIP1559 = {
253
+ to: string;
254
+ value: string;
255
+ gasLimit: string;
256
+ gasPrice?: typeof undefined;
257
+ nonce: string;
258
+ data?: string;
259
+ chainId: number;
260
+ maxFeePerGas: string;
261
+ maxPriorityFeePerGas: string;
262
+ accessList?: EVMAccessList[];
263
+ };
264
+ declare type EVMSignTransactionParams = {
265
+ path: string | number[];
266
+ transaction: EVMTransaction | EVMTransactionEIP1559;
267
+ };
268
+ declare function evmSignTransaction(connectId: string, params: CommonParams & EVMSignTransactionParams): Response<EthereumMessageSignature>;
269
+
270
+ declare type EthereumSignTypedDataTypeProperty = {
271
+ name: string;
272
+ type: string;
273
+ };
274
+ declare type EthereumSignTypedDataTypes = {
275
+ EIP712Domain: EthereumSignTypedDataTypeProperty[];
276
+ [additionalProperties: string]: EthereumSignTypedDataTypeProperty[];
277
+ };
278
+ declare type EthereumSignTypedDataMessage<T extends EthereumSignTypedDataTypes> = {
279
+ types: T;
280
+ primaryType: keyof T;
281
+ domain: {
282
+ name?: string;
283
+ version?: string;
284
+ chainId?: number;
285
+ verifyingContract?: string;
286
+ salt?: ArrayBuffer;
287
+ };
288
+ message: {
289
+ [fieldName: string]: any;
290
+ };
291
+ };
292
+ declare type EVMSignTypedDataParams = {
293
+ path: string | number[];
294
+ metamaskV4Compat: boolean;
295
+ data: EthereumSignTypedDataMessage<EthereumSignTypedDataTypes>;
296
+ domainHash?: string;
297
+ messageHash?: string;
298
+ };
299
+ declare function evmSignTypedData(connectId: string, params: CommonParams & EVMSignTypedDataParams): Response<EthereumMessageSignature>;
300
+
301
+ declare type EVMVerifyMessageParams = {
302
+ address: string;
303
+ messageHex: string;
304
+ signature: string;
305
+ };
306
+ declare function evmVerifyMessage(connectId: string, params: CommonParams & EVMVerifyMessageParams): Response<Success$1>;
307
+
308
+ declare type BTCGetAddressParams = {
309
+ path: string | number[];
310
+ coin?: string;
311
+ showOnOneKey?: boolean;
312
+ multisig?: MultisigRedeemScriptType;
313
+ scriptType?: InputScriptType;
314
+ };
315
+ declare function btcGetAddress(connectId: string, params: CommonParams & BTCGetAddressParams): Response<Address>;
316
+ declare function btcGetAddress(connectId: string, params: CommonParams & {
317
+ bundle?: BTCGetAddressParams[];
318
+ }): Response<Array<Address>>;
319
+
320
+ declare type BTCGetPublicKeyParams = {
321
+ path: string | number[];
322
+ coin?: string;
323
+ showOnOneKey?: boolean;
324
+ scriptType?: InputScriptType;
325
+ };
326
+ declare function btcGetPublicKey(connectId: string, params: CommonParams & BTCGetPublicKeyParams): Response<PublicKey>;
327
+ declare function btcGetPublicKey(connectId: string, params: CommonParams & {
328
+ bundle?: BTCGetPublicKeyParams[];
329
+ }): Response<Array<PublicKey>>;
330
+
331
+ declare type BTCSignMessageParams = {
332
+ path: string | number[];
333
+ messageHex: string;
334
+ coin?: string;
335
+ };
336
+ declare function btcSignMessage(connectId: string, params: CommonParams & BTCSignMessageParams): Response<MessageSignature>;
337
+
338
+ declare type RefTransaction = {
339
+ hash: string;
340
+ version: number;
341
+ inputs: PrevInput[];
342
+ bin_outputs: TxOutputBinType[];
343
+ outputs?: typeof undefined;
344
+ lock_time: number;
345
+ extra_data?: string;
346
+ expiry?: number;
347
+ overwintered?: boolean;
348
+ version_group_id?: number;
349
+ timestamp?: number;
350
+ branch_id?: number;
351
+ } | {
352
+ hash: string;
353
+ version: number;
354
+ inputs: TxInput[];
355
+ bin_outputs?: typeof undefined;
356
+ outputs: TxOutputType[];
357
+ lock_time: number;
358
+ extra_data?: string;
359
+ expiry?: number;
360
+ overwintered?: boolean;
361
+ version_group_id?: number;
362
+ timestamp?: number;
363
+ branch_id?: number;
364
+ };
365
+ declare type AccountAddress = {
366
+ address: string;
367
+ path: string;
368
+ transfers?: number;
369
+ balance?: string;
370
+ sent?: string;
371
+ received?: string;
372
+ };
373
+ declare type AccountAddresses = {
374
+ change: AccountAddress[];
375
+ used: AccountAddress[];
376
+ unused: AccountAddress[];
377
+ };
378
+ declare type BTCSignTransactionParams = {
379
+ coin: string;
380
+ inputs: TxInputType[];
381
+ outputs: TxOutputType[];
382
+ refTxs: RefTransaction[];
383
+ account?: {
384
+ addresses: AccountAddresses;
385
+ };
386
+ locktime?: number;
387
+ version?: number;
388
+ expiry?: number;
389
+ overwintered?: boolean;
390
+ versionGroupId?: number;
391
+ branchId?: number;
392
+ timestamp?: number;
393
+ };
394
+ declare function btcSignTransaction(connectId: string, params: CommonParams & BTCSignTransactionParams): Response<Success$1>;
395
+
396
+ declare type BTCVerifyMessageParams = {
397
+ address: string;
398
+ messageHex: string;
399
+ signature: string;
400
+ coin: string;
401
+ };
402
+ declare function btcVerifyMessage(connectId: string, params: CommonParams & BTCVerifyMessageParams): Response<Success$1>;
403
+
404
+ declare function uiResponse(response: UiResponseEvent): void;
405
+
406
+ declare type DeviceResetParams = {
407
+ displayRandom?: boolean;
408
+ strength?: number;
409
+ passphraseProtection?: boolean;
410
+ pinProtection?: boolean;
411
+ language?: string;
412
+ label?: string;
413
+ u2fCounter?: number;
414
+ skipBackup?: boolean;
415
+ noBackup?: boolean;
416
+ backupType?: string | number;
417
+ };
418
+ declare function deviceReset(connectId: string, params: CommonParams & DeviceResetParams): Response<Success$1>;
419
+
420
+ declare type DeviceRecoveryParams = {
421
+ wordCount?: number;
422
+ passphraseProtection?: boolean;
423
+ pinProtection?: boolean;
424
+ language?: string;
425
+ label?: string;
426
+ enforceWordlist?: boolean;
427
+ type?: RecoveryDeviceType;
428
+ u2fCounter?: number;
429
+ dryRun?: boolean;
430
+ };
431
+ declare function deviceRecovery(connectId: string, params: CommonParams & DeviceRecoveryParams): Response<Success$1>;
432
+
433
+ declare function deviceWipe(connectId: string): Response<Success$1>;
434
+
435
+ declare function deviceRebootToBootloader(connectId: string): Response<Success$1>;
436
+
437
+ declare function deviceBackup(connectId: string): Response<Success$1>;
438
+
439
+ declare type DeviceChangePinParams = {
440
+ remove?: boolean;
441
+ };
442
+ declare function deviceChangePin(connectId: string, params: CommonParams & DeviceChangePinParams): Response<Success$1>;
443
+
444
+ declare function deviceSettings(connectId: string): Response<Success$1>;
445
+
446
+ declare type DeviceFlagsParams = {
447
+ flags?: number;
448
+ };
449
+ declare function deviceFlags(connectId: string, params: CommonParams & DeviceFlagsParams): Response<Success$1>;
450
+
451
+ declare function deviceUpdateReboot(connectId: string): Response<Success$1>;
452
+
453
+ declare type CoreApi = {
454
+ init: typeof init$1;
455
+ on: typeof on;
456
+ off: typeof off;
457
+ removeAllListeners: typeof removeAllListeners;
458
+ dispose: () => void;
459
+ call: (params: any) => Promise<any>;
460
+ uiResponse: typeof uiResponse;
461
+ cancel: (params?: string) => void;
462
+ searchDevices: typeof searchDevices;
463
+ getFeatures: typeof getFeatures;
464
+ checkFirmwareRelease: typeof checkFirmwareRelease;
465
+ checkBLEFirmwareRelease: typeof checkBLEFirmwareRelease;
466
+ checkTransportRelease: typeof checkTransportRelease;
467
+ deviceBackup: typeof deviceBackup;
468
+ deviceChangePin: typeof deviceChangePin;
469
+ deviceFlags: typeof deviceFlags;
470
+ deviceRebootToBootloader: typeof deviceRebootToBootloader;
471
+ deviceRecovery: typeof deviceRecovery;
472
+ deviceReset: typeof deviceReset;
473
+ deviceSettings: typeof deviceSettings;
474
+ deviceUpdateReboot: typeof deviceUpdateReboot;
475
+ deviceWipe: typeof deviceWipe;
476
+ evmGetAddress: typeof evmGetAddress;
477
+ evmGetPublicKey: typeof evmGetPublicKey;
478
+ evmSignMessage: typeof evmSignMessage;
479
+ evmSignMessageEIP712: typeof evmSignMessageEIP712;
480
+ evmSignTransaction: typeof evmSignTransaction;
481
+ evmSignTypedData: typeof evmSignTypedData;
482
+ evmVerifyMessage: typeof evmVerifyMessage;
483
+ btcGetAddress: typeof btcGetAddress;
484
+ btcGetPublicKey: typeof btcGetPublicKey;
485
+ btcSignMessage: typeof btcSignMessage;
486
+ btcSignTransaction: typeof btcSignTransaction;
487
+ btcVerifyMessage: typeof btcVerifyMessage;
488
+ };
489
+
490
+ declare type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
491
+ declare type MessageFactoryFn<Group, Event> = UnionToIntersection<Event extends {
492
+ type: string;
493
+ } ? Event extends {
494
+ payload: any;
495
+ } ? (type: Event['type'], payload: Event['payload']) => {
496
+ event: Group;
497
+ type: Event['type'];
498
+ payload: Event['payload'];
499
+ } : (type: Event['type'], payload?: undefined) => {
500
+ event: Group;
501
+ type: Event['type'];
502
+ payload: undefined;
503
+ } : never>;
504
+
505
+ declare const UI_EVENT = "UI_EVENT";
506
+ declare const UI_REQUEST: {
507
+ readonly REQUEST_PIN: "ui-request_pin";
508
+ };
509
+ declare type UiRequestDeviceAction = {
510
+ type: typeof UI_REQUEST.REQUEST_PIN;
511
+ payload: {
512
+ device: Device$1;
513
+ type?: Messages.PinMatrixRequestType;
514
+ };
515
+ };
516
+ declare type UiEvent = UiRequestDeviceAction;
517
+ declare type UiEventMessage = UiEvent & {
518
+ event: typeof UI_EVENT;
519
+ };
520
+ declare const createUiMessage: MessageFactoryFn<typeof UI_EVENT, UiEvent>;
521
+
522
+ declare const IFRAME: {
523
+ readonly INIT: "iframe-init";
524
+ readonly INIT_BRIDGE: "iframe-init-bridge";
525
+ readonly CALL: "iframe-call";
526
+ };
527
+ interface IFrameInit {
528
+ type: typeof IFRAME.INIT;
529
+ payload: {
530
+ settings: ConnectSettings;
531
+ };
532
+ }
533
+ interface IFrameBridge {
534
+ type: typeof IFRAME.INIT_BRIDGE;
535
+ payload: unknown;
536
+ }
537
+ declare type IFrameEvent = IFrameInit | IFrameBridge;
538
+ declare type IFrameEventMessage = IFrameEvent & {
539
+ event: typeof UI_EVENT;
540
+ };
541
+ declare const createIFrameMessage: MessageFactoryFn<typeof UI_EVENT, IFrameEvent>;
542
+
543
+ declare type UnwrappedResponse<T> = T extends Promise<infer R> ? R extends {
544
+ success: true;
545
+ payload: infer P;
546
+ } ? P : never : void;
547
+ declare type OverloadedMethod<T, E extends Record<string, string>> = T extends {
548
+ (params: infer P1): infer R1;
549
+ (params: infer P2): infer R2;
550
+ } ? ((params: P1 & E) => R1) | ((params: P2 & E) => R2) : T extends (...args: infer P) => infer R ? (params: E & P[0]) => R : never;
551
+ declare type UnwrappedMethod<T, M extends Record<string, string>> = T extends () => infer R ? (params: M & CommonParams) => R : OverloadedMethod<T, M>;
552
+ declare type IsMethodCallable<T> = T extends (...args: any[]) => infer R ? R extends Promise<{
553
+ success: boolean;
554
+ }> ? R : never : never;
555
+ declare type CallApi = {
556
+ [K in keyof CoreApi]: IsMethodCallable<CoreApi[K]> extends never ? never : UnwrappedMethod<CoreApi[K], {
557
+ method: K;
558
+ }>;
559
+ };
560
+ declare type CallMethodUnion = CallApi[keyof CallApi];
561
+ declare type CallMethodPayload = Parameters<CallMethodUnion>[0];
562
+ declare type CallMethodResponse<M extends keyof CallApi> = UnwrappedResponse<ReturnType<CallApi[M]>>;
563
+ declare type CallMethodAnyResponse = ReturnType<CallMethodUnion>;
564
+ declare type CallMethod = (params: CallMethodPayload) => Promise<any>;
565
+ interface IFrameCallMessage {
566
+ event: typeof IFRAME.CALL;
567
+ type: typeof IFRAME.CALL;
568
+ payload: CallMethodPayload;
569
+ }
570
+ declare const RESPONSE_EVENT = "RESPONSE_EVENT";
571
+ interface MethodResponseMessage {
572
+ event: typeof RESPONSE_EVENT;
573
+ type: typeof RESPONSE_EVENT;
574
+ id: number;
575
+ success: boolean;
576
+ payload: any;
577
+ }
578
+ declare const createResponseMessage: (id: number, success: boolean, payload: any) => MethodResponseMessage;
579
+ declare type CallMethodKeys = keyof CoreApi;
580
+
581
+ declare const UI_RESPONSE: {
582
+ readonly RECEIVE_PIN: "ui-receive_pin";
583
+ };
584
+ interface UiResponsePin {
585
+ type: typeof UI_RESPONSE.RECEIVE_PIN;
586
+ payload: string;
587
+ }
588
+ declare type UiResponseEvent = UiResponsePin;
589
+ declare type UiResponseMessage = UiResponseEvent & {
590
+ event: typeof UI_EVENT;
591
+ };
592
+ declare const createUiResponse: MessageFactoryFn<typeof UI_EVENT, UiResponseEvent>;
593
+
594
+ declare const CORE_EVENT = "CORE_EVENT";
595
+ declare type CoreMessage = {
596
+ id?: string;
597
+ success?: true | false;
598
+ } & (IFrameEventMessage | IFrameCallMessage | UiResponseMessage | UiEventMessage);
599
+ declare type PostMessageEvent = MessageEvent<any>;
600
+ declare const parseMessage: (messageData: any) => CoreMessage;
601
+ declare const createErrorMessage: (error: Error & {
602
+ code?: string;
603
+ }) => Unsuccessful;
604
+
605
+ declare const DEVICE: {
606
+ readonly CONNECT: "device-connect";
607
+ readonly CONNECT_UNACQUIRED: "device-connect_unacquired";
608
+ readonly DISCONNECT: "device-disconnect";
609
+ readonly CHANGED: "device-changed";
610
+ readonly ACQUIRE: "device-acquire";
611
+ readonly RELEASE: "device-release";
612
+ readonly ACQUIRED: "device-acquired";
613
+ readonly RELEASED: "device-released";
614
+ readonly USED_ELSEWHERE: "device-used_elsewhere";
615
+ readonly UNREADABLE: "unreadable-device";
616
+ readonly LOADING: "device-loading";
617
+ readonly BUTTON: "button";
618
+ readonly PIN: "pin";
619
+ readonly PASSPHRASE: "passphrase";
620
+ readonly PASSPHRASE_ON_DEVICE: "passphrase_on_device";
621
+ readonly WORD: "word";
622
+ };
623
+ interface DeviceButtonRequestPayload extends Omit<Messages.ButtonRequest, 'code'> {
624
+ code?: Messages.ButtonRequest['code'] | 'ButtonRequest_FirmwareUpdate';
625
+ }
626
+
627
+ declare type DeviceDescriptorDiff = {
628
+ didUpdate: boolean;
629
+ connected: OneKeyDeviceInfo[];
630
+ disconnected: OneKeyDeviceInfo[];
631
+ changedSessions: OneKeyDeviceInfo[];
632
+ changedDebugSessions: OneKeyDeviceInfo[];
633
+ acquired: OneKeyDeviceInfo[];
634
+ debugAcquired: OneKeyDeviceInfo[];
635
+ released: OneKeyDeviceInfo[];
636
+ debugReleased: OneKeyDeviceInfo[];
637
+ descriptors: OneKeyDeviceInfo[];
638
+ };
639
+ declare class DeviceConnector {
640
+ transport: Transport;
641
+ listenTimestamp: number;
642
+ current: OneKeyDeviceInfo[] | null;
643
+ upcoming: OneKeyDeviceInfo[];
644
+ listening: boolean;
645
+ constructor();
646
+ enumerate(): Promise<DeviceDescriptorDiff>;
647
+ listen(): Promise<void>;
648
+ stop(): void;
649
+ acquire(path: string, session?: string | null): Promise<string>;
650
+ release(session: string, onclose: boolean): Promise<void>;
651
+ _reportDevicesChange(): DeviceDescriptorDiff;
652
+ }
653
+
654
+ declare type MessageType = Messages.MessageType;
655
+ declare type MessageKey = keyof MessageType;
656
+ declare type TypedResponseMessage<T extends MessageKey> = {
657
+ type: T;
658
+ message: MessageType[T];
659
+ };
660
+ declare type TypedCallResponseMap = {
661
+ [K in keyof MessageType]: TypedResponseMessage<K>;
662
+ };
663
+ declare type DefaultMessageResponse = TypedCallResponseMap[keyof MessageType];
664
+ declare class DeviceCommands {
665
+ device: Device;
666
+ transport: Transport;
667
+ mainId: string;
668
+ disposed: boolean;
669
+ callPromise?: Promise<DefaultMessageResponse>;
670
+ _cancelableRequest?: (error?: any) => void;
671
+ constructor(device: Device, mainId: string);
672
+ dispose(): void;
673
+ call(type: MessageKey, msg?: DefaultMessageResponse['message']): Promise<DefaultMessageResponse>;
674
+ typedCall<T extends MessageKey, R extends MessageKey[]>(type: T, resType: R, msg?: MessageType[T]): Promise<TypedCallResponseMap[R[number]]>;
675
+ typedCall<T extends MessageKey, R extends MessageKey>(type: T, resType: R, msg?: MessageType[T]): Promise<TypedResponseMessage<R>>;
676
+ _commonCall(type: MessageKey, msg?: DefaultMessageResponse['message']): Promise<DefaultMessageResponse>;
677
+ _filterCommonTypes(res: DefaultMessageResponse): Promise<DefaultMessageResponse>;
678
+ _promptPin(type?: Messages.PinMatrixRequestType): Promise<string>;
679
+ }
680
+
681
+ declare type LogMessage = {
682
+ level: string;
683
+ prefix: string;
684
+ message: any[];
685
+ timestamp: number;
686
+ };
687
+ declare class Log {
688
+ prefix: string;
689
+ enabled: boolean;
690
+ css: string;
691
+ messages: LogMessage[];
692
+ constructor(prefix: string, enabled: boolean);
693
+ addMessage(level: string, prefix: string, ...args: any[]): void;
694
+ log(...args: any[]): void;
695
+ error(...args: any[]): void;
696
+ warn(...args: any[]): void;
697
+ debug(...args: any[]): void;
698
+ }
699
+ declare const initLog: (prefix: string, enabled?: boolean | undefined) => Log;
700
+ declare const enableLog: (enabled?: boolean | undefined) => void;
701
+
702
+ declare const httpRequest: (url: string, _type: string) => any;
703
+ declare const getTimeStamp: () => number;
704
+
705
+ declare const isValidVersionString: (version: string) => boolean;
706
+ declare const isValidVersionArray: (version: number[]) => boolean;
707
+ declare const normalizeVersionArray: (version: number[]) => number[];
708
+ declare const versionSplit: (version: string) => number[];
709
+ declare const versionCompare: (a: string | number[], b: string | number[]) => 1 | 0 | -1;
710
+
711
+ declare type Deferred<T, I = any, D = any> = {
712
+ id?: I;
713
+ data?: D;
714
+ promise: Promise<T>;
715
+ resolve: (t: T) => void;
716
+ reject: (e: Error) => void;
717
+ };
718
+ declare function create<T, I = any, D = any>(arg?: I, data?: D): Deferred<T, I, D>;
719
+
720
+ declare type RunOptions = {
721
+ keepSession?: boolean;
722
+ };
723
+ interface DeviceEvents {
724
+ [DEVICE.PIN]: [Device, Messages.PinMatrixRequestType | undefined, (err: any, pin: string) => void];
725
+ [DEVICE.PASSPHRASE_ON_DEVICE]: [Device, ((response: any) => void)?];
726
+ [DEVICE.BUTTON]: [Device, DeviceButtonRequestPayload];
727
+ }
728
+ interface Device {
729
+ on<K extends keyof DeviceEvents>(type: K, listener: (...event: DeviceEvents[K]) => void): this;
730
+ off<K extends keyof DeviceEvents>(type: K, listener: (...event: DeviceEvents[K]) => void): this;
731
+ emit<K extends keyof DeviceEvents>(type: K, ...args: DeviceEvents[K]): boolean;
732
+ }
733
+ declare class Device extends EventEmitter {
734
+ originalDescriptor: OneKeyDeviceInfo;
735
+ mainId?: string | null;
736
+ deviceConnector?: DeviceConnector | null;
737
+ commands: DeviceCommands;
738
+ features: Features | undefined;
739
+ featuresNeedsReload: boolean;
740
+ runPromise?: Deferred<void> | null;
741
+ externalState: string[];
742
+ unavailableCapabilities: UnavailableCapabilities;
743
+ instance: number;
744
+ internalState: string[];
745
+ loaded: boolean;
746
+ needReloadDevice: boolean;
747
+ keepSession: boolean;
748
+ constructor(descriptor: OneKeyDeviceInfo);
749
+ static fromDescriptor(originalDescriptor: OneKeyDeviceInfo): Device;
750
+ toMessageObject(): Device$1 | null;
751
+ connect(): Promise<boolean>;
752
+ acquire(): Promise<void>;
753
+ release(): Promise<void>;
754
+ getInternalState(): string;
755
+ initialize(): Promise<void>;
756
+ getFeatures(): Promise<void>;
757
+ _updateFeatures(feat: Features): void;
758
+ updateDescriptor(descriptor: OneKeyDeviceInfo): void;
759
+ run(fn?: () => Promise<void>, options?: RunOptions): Promise<void>;
760
+ _runInner<T>(fn: (() => Promise<T>) | undefined, options: RunOptions): Promise<undefined>;
761
+ getMode(): "normal" | "bootloader" | "initialize" | "seedless";
762
+ getFirmwareVersion(): IVersionArray | null;
763
+ getBLEFirmwareVersion(): IVersionArray | null;
764
+ isUsed(): boolean;
765
+ isUsedHere(): boolean;
766
+ isUsedElsewhere(): boolean;
767
+ isBootloader(): boolean | undefined;
768
+ isInitialized(): boolean | undefined;
769
+ isSeedless(): boolean | undefined;
770
+ isUnacquired(): boolean;
771
+ hasUnexpectedMode(allow: string[], require: string[]): "ui-device_bootloader_mode" | "ui-device_not_in_bootloader_mode" | "ui-device_not_initialized" | "ui-device_seedless" | null;
772
+ }
773
+
774
+ declare type UiPromiseResponse = UiResponseEvent | {
775
+ type: typeof DEVICE.DISCONNECT;
776
+ payload?: undefined;
777
+ };
778
+ declare type UiPromise<T extends UiPromiseResponse['type']> = Deferred<Extract<UiPromiseResponse, {
779
+ type: T;
780
+ }>, T, Device>;
781
+
782
+ interface InjectApi {
783
+ call: CallMethod;
784
+ eventEmitter: EventEmitter$1;
785
+ init: CoreApi['init'];
786
+ dispose: CoreApi['dispose'];
787
+ uiResponse: CoreApi['uiResponse'];
788
+ cancel: CoreApi['cancel'];
789
+ }
790
+
791
+ declare class Core extends EventEmitter {
792
+ handleMessage(message: CoreMessage): Promise<any>;
793
+ dispose(): void;
794
+ }
795
+ declare const init: (settings: ConnectSettings, Transport: any) => Promise<Core | undefined>;
796
+
797
+ declare const DEFAULT_PRIORITY = 2;
798
+ declare global {
799
+ var ONEKEY_CONNECT_SRC: string;
800
+ }
801
+ declare const getEnv: () => "web" | "webextension" | "electron" | "react-native";
802
+ declare const corsValidator: (url?: string | undefined) => string | undefined;
803
+ declare const parseConnectSettings: (input?: Partial<ConnectSettings>) => ConnectSettings;
804
+
805
+ declare class DataManager {
806
+ static deviceMap: DeviceTypeMap;
807
+ static assets: AssetsMap | null;
808
+ static settings: ConnectSettings;
809
+ static messages: {
810
+ default: JSON;
811
+ };
812
+ static getFirmwareStatus: (features: Features) => IDeviceFirmwareStatus;
813
+ static getBLEFirmwareStatus: (features: Features) => IDeviceBLEFirmwareStatus;
814
+ static getTransportStatus: (localVersion: string) => ITransportStatus;
815
+ static load(settings: ConnectSettings): Promise<void>;
816
+ static getProtobufMessages(): JSON;
817
+ static getSettings(key?: undefined): ConnectSettings;
818
+ static getSettings<T extends keyof ConnectSettings>(key: T): ConnectSettings[T];
819
+ }
820
+
821
+ declare const HardwareSdk: ({ init, call, dispose, eventEmitter, uiResponse, cancel, }: InjectApi) => CoreApi;
822
+
823
+ export { AssetsMap, CORE_EVENT, CallMethod, CallMethodAnyResponse, CallMethodKeys, CallMethodPayload, CallMethodResponse, CallMethodUnion, CommonParams, ConnectSettings, Core, CoreApi, CoreMessage, DEFAULT_PRIORITY, DEVICE, DataManager, Deferred, Device$1 as Device, DeviceButtonRequestPayload, DeviceMode, DeviceStatus, DeviceTypeMap, errors as ERRORS, Features, FirmwareRange, FirmwareRelease, IBLEFirmwareReleaseInfo, IDeviceBLEFirmwareStatus, IDeviceFirmwareStatus, IDeviceType, IFRAME, IFirmwareReleaseInfo, IFrameBridge, IFrameCallMessage, IFrameEvent, IFrameEventMessage, IFrameInit, ILocale, ITransportStatus, IVersionArray, KnownDevice, MethodResponseMessage, PostMessageEvent, RESPONSE_EVENT, ReleaseInfo, RemoteConfigResponse, Response, Success, TransportReleaseStatus, UI_EVENT, UI_REQUEST, UI_RESPONSE, UiEvent, UiEventMessage, UiPromise, UiPromiseResponse, UiRequestDeviceAction, UiResponseEvent, UiResponseMessage, UiResponsePin, UnavailableCapabilities, UnavailableCapability, Unsuccessful, VersionArray, corsValidator, create, createErrorMessage, createIFrameMessage, createResponseMessage, createUiMessage, createUiResponse, HardwareSdk as default, enableLog, getEnv, getTimeStamp, httpRequest, init as initCore, initLog, isValidVersionArray, isValidVersionString, normalizeVersionArray, parseConnectSettings, parseMessage, versionCompare, versionSplit };