@sidhujag/sysweb3-keyring 1.0.628 → 2.0.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 (116) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/README.md +66 -0
  3. package/cjs/hardware-wallet-manager.js +302 -128
  4. package/cjs/hardware-wallet-manager.js.map +1 -1
  5. package/cjs/keyring-core.js +93 -0
  6. package/cjs/keyring-core.js.map +1 -1
  7. package/cjs/keyring-manager.js +9 -3
  8. package/cjs/keyring-manager.js.map +1 -1
  9. package/cjs/ledger/bitcoin_client/lib/appClient.js.map +1 -1
  10. package/cjs/ledger/host-types.js +10 -0
  11. package/cjs/ledger/host-types.js.map +1 -0
  12. package/cjs/ledger/index.js +243 -447
  13. package/cjs/ledger/index.js.map +1 -1
  14. package/cjs/ledger/prepare-psbt.js +177 -0
  15. package/cjs/ledger/prepare-psbt.js.map +1 -0
  16. package/cjs/software-hd-account.js +23 -0
  17. package/cjs/software-hd-account.js.map +1 -0
  18. package/cjs/software.js +16 -0
  19. package/cjs/software.js.map +1 -1
  20. package/cjs/transactions/ethereum.js +55 -10
  21. package/cjs/transactions/ethereum.js.map +1 -1
  22. package/cjs/transactions/hardware-psbt.js +36 -44
  23. package/cjs/transactions/hardware-psbt.js.map +1 -1
  24. package/cjs/transactions/prepared-evm.js +196 -0
  25. package/cjs/transactions/prepared-evm.js.map +1 -0
  26. package/cjs/trezor/connect.js +243 -0
  27. package/cjs/trezor/connect.js.map +1 -0
  28. package/cjs/trezor/index.js +96 -58
  29. package/cjs/trezor/index.js.map +1 -1
  30. package/cjs/trezor/witness.js +25 -0
  31. package/cjs/trezor/witness.js.map +1 -0
  32. package/cjs/utils/psbt-account-scope.js +5 -3
  33. package/cjs/utils/psbt-account-scope.js.map +1 -1
  34. package/esm/errorUtils.js +72 -0
  35. package/esm/errorUtils.js.map +1 -0
  36. package/esm/ethers-v6.js +207 -0
  37. package/esm/ethers-v6.js.map +1 -0
  38. package/esm/hardware-wallet-manager.js +643 -0
  39. package/esm/hardware-wallet-manager.js.map +1 -0
  40. package/esm/ledger/bitcoin_client/lib/appClient.js +279 -0
  41. package/esm/ledger/bitcoin_client/lib/appClient.js.map +1 -0
  42. package/esm/ledger/bitcoin_client/lib/bip32.js +49 -0
  43. package/esm/ledger/bitcoin_client/lib/bip32.js.map +1 -0
  44. package/esm/ledger/bitcoin_client/lib/buffertools.js +119 -0
  45. package/esm/ledger/bitcoin_client/lib/buffertools.js.map +1 -0
  46. package/esm/ledger/bitcoin_client/lib/clientCommands.js +269 -0
  47. package/esm/ledger/bitcoin_client/lib/clientCommands.js.map +1 -0
  48. package/esm/ledger/bitcoin_client/lib/merkelizedPsbt.js +50 -0
  49. package/esm/ledger/bitcoin_client/lib/merkelizedPsbt.js.map +1 -0
  50. package/esm/ledger/bitcoin_client/lib/merkle.js +111 -0
  51. package/esm/ledger/bitcoin_client/lib/merkle.js.map +1 -0
  52. package/esm/ledger/bitcoin_client/lib/merkleMap.js +42 -0
  53. package/esm/ledger/bitcoin_client/lib/merkleMap.js.map +1 -0
  54. package/esm/ledger/bitcoin_client/lib/policy.js +68 -0
  55. package/esm/ledger/bitcoin_client/lib/policy.js.map +1 -0
  56. package/esm/ledger/bitcoin_client/lib/psbtv2.js +645 -0
  57. package/esm/ledger/bitcoin_client/lib/psbtv2.js.map +1 -0
  58. package/esm/ledger/bitcoin_client/lib/varint.js +108 -0
  59. package/esm/ledger/bitcoin_client/lib/varint.js.map +1 -0
  60. package/esm/ledger/consts.js +4 -0
  61. package/esm/ledger/consts.js.map +1 -0
  62. package/esm/ledger/dmk-evm.js +258 -0
  63. package/esm/ledger/dmk-evm.js.map +1 -0
  64. package/esm/ledger/dmk-session.js +264 -0
  65. package/esm/ledger/dmk-session.js.map +1 -0
  66. package/esm/ledger/dmk-utxo.js +279 -0
  67. package/esm/ledger/dmk-utxo.js.map +1 -0
  68. package/esm/ledger/host-types.js +5 -0
  69. package/esm/ledger/host-types.js.map +1 -0
  70. package/esm/ledger/index.js +268 -0
  71. package/esm/ledger/index.js.map +1 -0
  72. package/esm/ledger/prepare-psbt.js +141 -0
  73. package/esm/ledger/prepare-psbt.js.map +1 -0
  74. package/esm/ledger/types.js +2 -0
  75. package/esm/ledger/types.js.map +1 -0
  76. package/esm/ledger-host.js +36 -0
  77. package/esm/ledger-host.js.map +1 -0
  78. package/esm/private-records.js +153 -0
  79. package/esm/private-records.js.map +1 -0
  80. package/esm/providers.js +588 -0
  81. package/esm/providers.js.map +1 -0
  82. package/esm/signers.js +28 -0
  83. package/esm/signers.js.map +1 -0
  84. package/esm/trezor/connect.js +206 -0
  85. package/esm/trezor/connect.js.map +1 -0
  86. package/esm/trezor/index.js +876 -0
  87. package/esm/trezor/index.js.map +1 -0
  88. package/esm/trezor/witness.js +21 -0
  89. package/esm/trezor/witness.js.map +1 -0
  90. package/esm/types.js +17 -0
  91. package/esm/types.js.map +1 -0
  92. package/esm/utils/derivation-paths.js +109 -0
  93. package/esm/utils/derivation-paths.js.map +1 -0
  94. package/esm/utils/psbt-account-scope.js +310 -0
  95. package/esm/utils/psbt-account-scope.js.map +1 -0
  96. package/package.json +21 -8
  97. package/types/hardware-wallet-manager.d.ts +12 -19
  98. package/types/keyring-core.d.ts +6 -0
  99. package/types/keyring-manager.d.ts +2 -1
  100. package/types/ledger/bitcoin_client/lib/appClient.d.ts +6 -3
  101. package/types/ledger/dmk-evm.d.ts +8 -0
  102. package/types/ledger/dmk-session.d.ts +60 -0
  103. package/types/ledger/dmk-utxo.d.ts +26 -0
  104. package/types/ledger/host-types.d.ts +131 -0
  105. package/types/ledger/index.d.ts +21 -58
  106. package/types/ledger/prepare-psbt.d.ts +3 -0
  107. package/types/ledger/types.d.ts +3 -0
  108. package/types/ledger-host.d.ts +7 -0
  109. package/types/software-hd-account.d.ts +16 -0
  110. package/types/software.d.ts +16 -0
  111. package/types/transactions/ethereum.d.ts +1 -1
  112. package/types/transactions/prepared-evm.d.ts +53 -0
  113. package/types/trezor/connect.d.ts +42 -0
  114. package/types/trezor/index.d.ts +22 -4
  115. package/types/trezor/witness.d.ts +3 -0
  116. package/types/utils/psbt-account-scope.d.ts +1 -0
@@ -1,7 +1,7 @@
1
1
  import { TypedMessage, SignTypedDataVersion, TypedDataV1 } from '@metamask/eth-sig-util';
2
- import { AccountInfo, EthereumTransaction, EthereumTransactionEIP1559 } from '@trezor/connect-webextension';
3
2
  import { Psbt } from 'bitcoinjs-lib';
4
3
  import { Buffer } from 'buffer';
4
+ import type { AccountInfo, EthereumTransaction, EthereumTransactionEIP1559 } from '@trezor/connect-webextension';
5
5
  export interface TrezorControllerState {
6
6
  hdPath: string;
7
7
  paths: Record<string, number>;
@@ -19,7 +19,12 @@ export declare class TrezorKeyring {
19
19
  model?: string;
20
20
  private hardwareWalletManager;
21
21
  private initialized;
22
+ private lifecycleGeneration;
23
+ private unsubscribeTrezor?;
24
+ private readonly onTrezorConnected;
25
+ private readonly onTrezorDisconnected;
22
26
  constructor();
27
+ private observeTrezor;
23
28
  /**
24
29
  * Initialize Trezor script.
25
30
  */
@@ -51,7 +56,7 @@ export declare class TrezorKeyring {
51
56
  */
52
57
  getModel(): string | undefined;
53
58
  /**
54
- * This removes the Trezor Connect iframe from the DOM
59
+ * This disposes the active Trezor Suite connection
55
60
  *
56
61
  * @returns void
57
62
  */
@@ -117,7 +122,20 @@ export declare class TrezorKeyring {
117
122
  tx: EthereumTransaction | EthereumTransactionEIP1559;
118
123
  coin: string;
119
124
  slip44: number;
120
- }): Promise<any>;
125
+ }): Promise<import("@trezor/connect-webextension").OkWithDevice<{
126
+ authorizationList?: {
127
+ address: string;
128
+ chainId: number;
129
+ r: string;
130
+ s: string;
131
+ nonce: number;
132
+ yParity: number;
133
+ }[] | undefined;
134
+ r: string;
135
+ s: string;
136
+ v: string;
137
+ serializedTx: string;
138
+ }>>;
121
139
  /**
122
140
  * This sign message.
123
141
  *
@@ -146,7 +164,7 @@ export declare class TrezorKeyring {
146
164
  data: TypedMessage<any> | TypedDataV1;
147
165
  index: number;
148
166
  version: SignTypedDataVersion;
149
- }): Promise<any>;
167
+ }): Promise<string>;
150
168
  /**
151
169
  * Verify UTXO address by displaying it on the Trezor device
152
170
  * @param accountIndex - The account index
@@ -0,0 +1,3 @@
1
+ import { Buffer } from 'buffer';
2
+ /** Canonical Bitcoin witness-vector encoding (CompactSize count and lengths). */
3
+ export declare const serializeWitness: (witness: readonly Uint8Array[]) => Buffer;
@@ -1,6 +1,7 @@
1
1
  import { INetwork } from '@sidhujag/sysweb3-network';
2
2
  import { Psbt } from 'bitcoinjs-lib';
3
3
  import { KeyringAccountType } from '../types';
4
+ export declare const parsePsbtAccountXpub: (xpub: string) => import("bip32").BIP32Interface;
4
5
  export type PsbtAccountScope = {
5
6
  account: {
6
7
  address: string;