@metamask-previews/keyring-controller 28.1.0-preview-03a246be1 → 28.1.0-preview-11d253c58

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.
package/CHANGELOG.md CHANGED
@@ -7,6 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ### Changed
11
+
12
+ - Changed `withKeyring` and `withKeyringV2` transactions to snapshot and diff only the operated keyring, instead of every keyring ([#10407](https://github.com/MetaMask/core/pull/10407))
13
+ - Untouched keyrings are no longer serialized during these operations, and keep their in-memory instances even when the operation fails.
14
+ - Operations passed to `withKeyring` and `withKeyringV2` must only mutate the keyring they are given: changes to other keyrings (e.g. through references obtained from deprecated direct-access methods) are neither persisted nor rolled back.
15
+ - Changed `KeyringController` rollback to restore only the keyrings affected by a failed operation, instead of re-creating every keyring ([#10407](https://github.com/MetaMask/core/pull/10407))
16
+ - Keyrings that a failed operation did not touch now keep their in-memory instances: `destroy()` is no longer invoked on them, and references previously obtained (e.g. via `getKeyringsByType` or `getKeyringForAccount`) remain valid after a rollback.
17
+ - Unsupported keyrings are no longer re-attempted when an operation rolls back.
18
+ - A keyring that fails to destroy during a rollback no longer aborts it: the failure is logged, the rollback completes, and the error of the failed operation is still the one thrown.
19
+
10
20
  ## [28.1.0]
11
21
 
12
22
  ### Added
@@ -342,6 +342,11 @@ export type KeyringControllerSubmitPasswordAction = {
342
342
  * function execution, or rolls back the changes if an error
343
343
  * is thrown.
344
344
  *
345
+ * The operation must only mutate the keyring it is given: the transaction
346
+ * snapshots, persists, and rolls back only the selected keyring. Changes
347
+ * made to other keyrings (e.g. through references obtained from
348
+ * deprecated direct-access methods) are neither persisted nor rolled back.
349
+ *
345
350
  * @param selector - Keyring selector object.
346
351
  * @param operation - Function to execute with the selected keyring.
347
352
  * @param options - Additional options.
@@ -410,6 +415,11 @@ export type KeyringControllerWithKeyringUnsafeAction = {
410
415
  * function execution, or rolls back the changes if an error
411
416
  * is thrown.
412
417
  *
418
+ * The operation must only mutate the keyring it is given: the transaction
419
+ * snapshots, persists, and rolls back only the selected keyring. Changes
420
+ * made to other keyrings (e.g. through references obtained from
421
+ * deprecated direct-access methods) are neither persisted nor rolled back.
422
+ *
413
423
  * @param selector - Keyring selector object.
414
424
  * @param operation - Function to execute with the wrapped V2 keyring.
415
425
  * @returns Promise resolving to the result of the function execution.
@@ -1 +1 @@
1
- {"version":3,"file":"KeyringController-method-action-types.d.ts","sourceRoot":"","sources":["../src/KeyringController-method-action-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"KeyringController-method-action-types.d.ts","sourceRoot":"","sources":["../src/KeyringController-method-action-types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"KeyringController-method-action-types.js","sourceRoot":"","sources":["../src/KeyringController-method-action-types.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/**\n * This file is auto generated.\n * Do not edit manually.\n */\n\nimport type { KeyringController } from './KeyringController.js';\n\n/**\n * Adds a new account to the default (first) HD seed phrase keyring.\n *\n * @param accountCount - Number of accounts before adding a new one, used to\n * make the method idempotent.\n * @returns Promise resolving to the added account address.\n */\nexport type KeyringControllerAddNewAccountAction = {\n type: `KeyringController:addNewAccount`;\n handler: KeyringController['addNewAccount'];\n};\n\n/**\n * Effectively the same as creating a new keychain then populating it\n * using the given seed phrase.\n *\n * @param password - Password to unlock keychain.\n * @param seed - A BIP39-compliant seed phrase as Uint8Array,\n * either as a string or an array of UTF-8 bytes that represent the string.\n * @returns Promise resolving when the operation ends successfully.\n */\nexport type KeyringControllerCreateNewVaultAndRestoreAction = {\n type: `KeyringController:createNewVaultAndRestore`;\n handler: KeyringController['createNewVaultAndRestore'];\n};\n\n/**\n * Create a new vault and primary keyring.\n *\n * This only works if keyrings are empty. If there is a pre-existing unlocked vault, calling this will have no effect.\n * If there is a pre-existing locked vault, it will be replaced.\n *\n * @param password - Password to unlock the new vault.\n * @returns Promise resolving when the operation ends successfully.\n */\nexport type KeyringControllerCreateNewVaultAndKeychainAction = {\n type: `KeyringController:createNewVaultAndKeychain`;\n handler: KeyringController['createNewVaultAndKeychain'];\n};\n\n/**\n * Adds a new keyring of the given `type`.\n *\n * @param type - Keyring type name.\n * @param opts - Keyring options.\n * @throws If a builder for the given `type` does not exist.\n * @returns Promise resolving to the new keyring metadata.\n */\nexport type KeyringControllerAddNewKeyringAction = {\n type: `KeyringController:addNewKeyring`;\n handler: KeyringController['addNewKeyring'];\n};\n\n/**\n * Method to verify a given password validity. Throws an\n * error if the password is invalid.\n *\n * @param password - Password of the keyring.\n */\nexport type KeyringControllerVerifyPasswordAction = {\n type: `KeyringController:verifyPassword`;\n handler: KeyringController['verifyPassword'];\n};\n\n/**\n * Returns the status of the vault.\n *\n * @returns Boolean returning true if the vault is unlocked.\n */\nexport type KeyringControllerIsUnlockedAction = {\n type: `KeyringController:isUnlocked`;\n handler: KeyringController['isUnlocked'];\n};\n\n/**\n * Gets the seed phrase of the HD keyring.\n *\n * @param credentials - Object holding either the `password` or the vault\n * `encryptionKey`.\n * @param keyringId - The id of the keyring.\n * @returns Promise resolving to the seed phrase.\n */\nexport type KeyringControllerExportSeedPhraseAction = {\n type: `KeyringController:exportSeedPhrase`;\n handler: KeyringController['exportSeedPhrase'];\n};\n\n/**\n * Gets the private key from the keyring controlling an address.\n *\n * @param credentials - Object holding either the `password` or the vault\n * `encryptionKey`.\n * @param address - Address to export.\n * @returns Promise resolving to the private key for an address.\n */\nexport type KeyringControllerExportAccountAction = {\n type: `KeyringController:exportAccount`;\n handler: KeyringController['exportAccount'];\n};\n\n/**\n * Returns the public addresses of all accounts from every keyring.\n *\n * @returns A promise resolving to an array of addresses.\n */\nexport type KeyringControllerGetAccountsAction = {\n type: `KeyringController:getAccounts`;\n handler: KeyringController['getAccounts'];\n};\n\n/**\n * Get encryption public key.\n *\n * @param account - An account address.\n * @param opts - Additional encryption options.\n * @throws If the `account` does not exist or does not support the `getEncryptionPublicKey` method\n * @returns Promise resolving to encyption public key of the `account` if one exists.\n */\nexport type KeyringControllerGetEncryptionPublicKeyAction = {\n type: `KeyringController:getEncryptionPublicKey`;\n handler: KeyringController['getEncryptionPublicKey'];\n};\n\n/**\n * Attempts to decrypt the provided message parameters.\n *\n * @param messageParams - The decryption message parameters.\n * @param messageParams.from - The address of the account you want to use to decrypt the message.\n * @param messageParams.data - The encrypted data that you want to decrypt.\n * @returns The raw decryption result.\n */\nexport type KeyringControllerDecryptMessageAction = {\n type: `KeyringController:decryptMessage`;\n handler: KeyringController['decryptMessage'];\n};\n\n/**\n * Returns the currently initialized keyring that manages\n * the specified `address` if one exists.\n *\n * @deprecated Use of this method is discouraged as actions executed directly on\n * keyrings are not being reflected in the KeyringController state and not\n * persisted in the vault. Use `withKeyring` instead.\n * @param account - An account address.\n * @returns Promise resolving to keyring of the `account` if one exists.\n */\nexport type KeyringControllerGetKeyringForAccountAction = {\n type: `KeyringController:getKeyringForAccount`;\n handler: KeyringController['getKeyringForAccount'];\n};\n\n/**\n * Returns all keyrings of the given type.\n *\n * @deprecated Use of this method is discouraged as actions executed directly on\n * keyrings are not being reflected in the KeyringController state and not\n * persisted in the vault. Use `withKeyring` instead.\n * @param type - Keyring type name.\n * @returns An array of keyrings of the given type.\n */\nexport type KeyringControllerGetKeyringsByTypeAction = {\n type: `KeyringController:getKeyringsByType`;\n handler: KeyringController['getKeyringsByType'];\n};\n\n/**\n * Persist all serialized keyrings in the vault.\n *\n * @deprecated This method is being phased out in favor of `withKeyring`.\n * @returns Promise resolving with `true` value when the\n * operation completes.\n */\nexport type KeyringControllerPersistAllKeyringsAction = {\n type: `KeyringController:persistAllKeyrings`;\n handler: KeyringController['persistAllKeyrings'];\n};\n\n/**\n * Imports an account with the specified import strategy.\n *\n * @param strategy - Import strategy name.\n * @param args - Array of arguments to pass to the underlying stategy.\n * @throws Will throw when passed an unrecognized strategy.\n * @returns Promise resolving to the imported account address.\n */\nexport type KeyringControllerImportAccountWithStrategyAction = {\n type: `KeyringController:importAccountWithStrategy`;\n handler: KeyringController['importAccountWithStrategy'];\n};\n\n/**\n * Removes an account from keyring state.\n *\n * @param address - Address of the account to remove.\n * @fires KeyringController:accountRemoved\n * @returns Promise resolving when the account is removed.\n */\nexport type KeyringControllerRemoveAccountAction = {\n type: `KeyringController:removeAccount`;\n handler: KeyringController['removeAccount'];\n};\n\n/**\n * Deallocates all secrets and locks the wallet.\n *\n * @returns Promise resolving when the operation completes.\n */\nexport type KeyringControllerSetLockedAction = {\n type: `KeyringController:setLocked`;\n handler: KeyringController['setLocked'];\n};\n\n/**\n * Signs message by calling down into a specific keyring.\n *\n * @param messageParams - PersonalMessageParams object to sign.\n * @returns Promise resolving to a signed message string.\n */\nexport type KeyringControllerSignMessageAction = {\n type: `KeyringController:signMessage`;\n handler: KeyringController['signMessage'];\n};\n\n/**\n * Signs EIP-7702 Authorization message by calling down into a specific keyring.\n *\n * @param params - EIP7702AuthorizationParams object to sign.\n * @returns Promise resolving to an EIP-7702 Authorization signature.\n * @throws Will throw UnsupportedSignEIP7702Authorization if the keyring does not support signing EIP-7702 Authorization messages.\n */\nexport type KeyringControllerSignEip7702AuthorizationAction = {\n type: `KeyringController:signEip7702Authorization`;\n handler: KeyringController['signEip7702Authorization'];\n};\n\n/**\n * Signs personal message by calling down into a specific keyring.\n *\n * @param messageParams - PersonalMessageParams object to sign.\n * @returns Promise resolving to a signed message string.\n */\nexport type KeyringControllerSignPersonalMessageAction = {\n type: `KeyringController:signPersonalMessage`;\n handler: KeyringController['signPersonalMessage'];\n};\n\n/**\n * Signs typed message by calling down into a specific keyring.\n *\n * @param messageParams - TypedMessageParams object to sign.\n * @param version - Compatibility version EIP712.\n * @throws Will throw when passed an unrecognized version.\n * @returns Promise resolving to a signed message string or an error if any.\n */\nexport type KeyringControllerSignTypedMessageAction = {\n type: `KeyringController:signTypedMessage`;\n handler: KeyringController['signTypedMessage'];\n};\n\n/**\n * Signs a transaction by calling down into a specific keyring.\n *\n * @param transaction - Transaction object to sign. Must be a `ethereumjs-tx` transaction instance.\n * @param from - Address to sign from, should be in keychain.\n * @param opts - An optional options object.\n * @returns Promise resolving to a signed transaction string.\n */\nexport type KeyringControllerSignTransactionAction = {\n type: `KeyringController:signTransaction`;\n handler: KeyringController['signTransaction'];\n};\n\n/**\n * Convert a base transaction to a base UserOperation.\n *\n * @param from - Address of the sender.\n * @param transactions - Base transactions to include in the UserOperation.\n * @param executionContext - The execution context to use for the UserOperation.\n * @returns A pseudo-UserOperation that can be used to construct a real.\n */\nexport type KeyringControllerPrepareUserOperationAction = {\n type: `KeyringController:prepareUserOperation`;\n handler: KeyringController['prepareUserOperation'];\n};\n\n/**\n * Patches properties of a UserOperation. Currently, only the\n * `paymasterAndData` can be patched.\n *\n * @param from - Address of the sender.\n * @param userOp - UserOperation to patch.\n * @param executionContext - The execution context to use for the UserOperation.\n * @returns A patch to apply to the UserOperation.\n */\nexport type KeyringControllerPatchUserOperationAction = {\n type: `KeyringController:patchUserOperation`;\n handler: KeyringController['patchUserOperation'];\n};\n\n/**\n * Signs an UserOperation.\n *\n * @param from - Address of the sender.\n * @param userOp - UserOperation to sign.\n * @param executionContext - The execution context to use for the UserOperation.\n * @returns The signature of the UserOperation.\n */\nexport type KeyringControllerSignUserOperationAction = {\n type: `KeyringController:signUserOperation`;\n handler: KeyringController['signUserOperation'];\n};\n\n/**\n * Changes the password used to encrypt the vault.\n *\n * @param password - The new password.\n * @returns Promise resolving when the operation completes.\n */\nexport type KeyringControllerChangePasswordAction = {\n type: `KeyringController:changePassword`;\n handler: KeyringController['changePassword'];\n};\n\n/**\n * Attempts to decrypt the current vault and load its keyrings, using the\n * given encryption key and salt. The optional salt can be used to check for\n * consistency with the vault salt.\n *\n * @param encryptionKey - Key to unlock the keychain.\n * @param encryptionSalt - Optional salt to unlock the keychain.\n * @returns Promise resolving when the operation completes.\n */\nexport type KeyringControllerSubmitEncryptionKeyAction = {\n type: `KeyringController:submitEncryptionKey`;\n handler: KeyringController['submitEncryptionKey'];\n};\n\n/**\n * Exports the vault encryption key.\n *\n * @returns The vault encryption key.\n */\nexport type KeyringControllerExportEncryptionKeyAction = {\n type: `KeyringController:exportEncryptionKey`;\n handler: KeyringController['exportEncryptionKey'];\n};\n\n/**\n * Attempts to decrypt the current vault and load its keyrings,\n * using the given password.\n *\n * @param password - Password to unlock the keychain.\n * @returns Promise resolving when the operation completes.\n */\nexport type KeyringControllerSubmitPasswordAction = {\n type: `KeyringController:submitPassword`;\n handler: KeyringController['submitPassword'];\n};\n\n/**\n * Select a keyring and execute the given operation with\n * the selected keyring, as a mutually exclusive atomic\n * operation.\n *\n * The method automatically persists changes at the end of the\n * function execution, or rolls back the changes if an error\n * is thrown.\n *\n * @param selector - Keyring selector object.\n * @param operation - Function to execute with the selected keyring.\n * @param options - Additional options.\n * @param options.createIfMissing - Whether to create a new keyring if the selected one is missing.\n * @param options.createWithData - Optional data to use when creating a new keyring.\n * @returns Promise resolving to the result of the function execution.\n * @template SelectedKeyring - The type of the selected keyring.\n * @template CallbackResult - The type of the value resolved by the callback function.\n * @deprecated This method overload is deprecated. Use `withKeyring` without options instead.\n */\nexport type KeyringControllerWithKeyringAction = {\n type: `KeyringController:withKeyring`;\n handler: KeyringController['withKeyring'];\n};\n\n/**\n * Select a keyring and execute the given operation with the selected\n * keyring, **without** acquiring the controller's mutual exclusion lock.\n *\n * ## When to use this method\n *\n * This method is an escape hatch for read-only access to keyring data that\n * is immutable once the keyring is initialized. A typical safe use case is\n * reading the `mnemonic` from an `HdKeyring`: the mnemonic is set during\n * `deserialize()` and never mutated afterwards, so it can safely be read\n * without holding the lock.\n *\n * ## Why it is \"unsafe\"\n *\n * The \"unsafe\" designation mirrors the semantics of `unsafe { }` blocks in\n * Rust: the method itself does not enforce thread-safety guarantees. By\n * calling this method the **caller** explicitly takes responsibility for\n * ensuring that:\n *\n * - The operation is **read-only** — no state is mutated.\n * - The data being read is **immutable** after the keyring is initialized,\n * so concurrent locked operations cannot alter it while this callback\n * runs.\n *\n * Do **not** use this method to:\n * - Mutate keyring state (add accounts, sign, etc.) — use `withKeyring`.\n * - Read mutable fields that could change during concurrent operations.\n *\n * @param selector - Keyring selector object.\n * @param operation - Read-only function to execute with the selected keyring.\n * @returns Promise resolving to the result of the function execution.\n * @template SelectedKeyring - The type of the selected keyring.\n * @template CallbackResult - The type of the value resolved by the callback function.\n */\nexport type KeyringControllerWithKeyringUnsafeAction = {\n type: `KeyringController:withKeyringUnsafe`;\n handler: KeyringController['withKeyringUnsafe'];\n};\n\n/**\n * Select a keyring using its `KeyringV2` adapter, and execute\n * the given operation with the wrapped keyring as a mutually\n * exclusive atomic operation.\n *\n * The cached `KeyringV2` adapter is retrieved from the keyring\n * entry.\n *\n * A `KeyringV2Builder` for the selected keyring's type must exist\n * (either as a default or registered via the `keyringV2Builders`\n * constructor option); otherwise an error is thrown.\n *\n * The method automatically persists changes at the end of the\n * function execution, or rolls back the changes if an error\n * is thrown.\n *\n * @param selector - Keyring selector object.\n * @param operation - Function to execute with the wrapped V2 keyring.\n * @returns Promise resolving to the result of the function execution.\n * @template CallbackResult - The type of the value resolved by the callback function.\n */\nexport type KeyringControllerWithKeyringV2Action = {\n type: `KeyringController:withKeyringV2`;\n handler: KeyringController['withKeyringV2'];\n};\n\n/**\n * Select a keyring, wrap it in a `KeyringV2` adapter, and execute\n * the given read-only operation **without** acquiring the controller's\n * mutual exclusion lock.\n *\n * ## When to use this method\n *\n * This method is an escape hatch for read-only access to keyring data that\n * is immutable once the keyring is initialized. A typical safe use case is\n * reading immutable fields from a `KeyringV2` adapter: data that is set\n * during initialization and never mutated afterwards.\n *\n * ## Why it is \"unsafe\"\n *\n * The \"unsafe\" designation mirrors the semantics of `unsafe { }` blocks in\n * Rust: the method itself does not enforce thread-safety guarantees. By\n * calling this method the **caller** explicitly takes responsibility for\n * ensuring that:\n *\n * - The operation is **read-only** — no state is mutated.\n * - The data being read is **immutable** after the keyring is initialized,\n * so concurrent locked operations cannot alter it while this callback\n * runs.\n *\n * Do **not** use this method to:\n * - Mutate keyring state (add accounts, sign, etc.) — use `withKeyringV2`.\n * - Read mutable fields that could change during concurrent operations.\n *\n * @param selector - Keyring selector object.\n * @param operation - Read-only function to execute with the wrapped V2 keyring.\n * @returns Promise resolving to the result of the function execution.\n * @template SelectedKeyring - The type of the selected V2 keyring.\n * @template CallbackResult - The type of the value resolved by the callback function.\n */\nexport type KeyringControllerWithKeyringV2UnsafeAction = {\n type: `KeyringController:withKeyringV2Unsafe`;\n handler: KeyringController['withKeyringV2Unsafe'];\n};\n\n/**\n * Execute an operation against all keyrings as a mutually exclusive atomic\n * operation. The operation receives a {@link RestrictedController} instance\n * that exposes a read-only live view of all keyrings as well as\n * `addNewKeyring` and `removeKeyring` methods to stage mutations.\n *\n * The method automatically persists changes at the end of the function\n * execution, or rolls back the changes if an error is thrown.\n *\n * @param operation - Function to execute with the restricted controller.\n * @returns Promise resolving to the result of the function execution.\n * @template CallbackResult - The type of the value resolved by the callback function.\n */\nexport type KeyringControllerWithControllerAction = {\n type: `KeyringController:withController`;\n handler: KeyringController['withController'];\n};\n\n/**\n * Gets the type of the keyring that manages the specified account.\n *\n * @param account - The account address to look up.\n * @returns A promise that resolves to the type of the keyring managing the account.\n */\nexport type KeyringControllerGetAccountKeyringTypeAction = {\n type: `KeyringController:getAccountKeyringType`;\n handler: KeyringController['getAccountKeyringType'];\n};\n\n/**\n * Union of all KeyringController action types.\n */\nexport type KeyringControllerMethodActions =\n | KeyringControllerAddNewAccountAction\n | KeyringControllerCreateNewVaultAndRestoreAction\n | KeyringControllerCreateNewVaultAndKeychainAction\n | KeyringControllerAddNewKeyringAction\n | KeyringControllerVerifyPasswordAction\n | KeyringControllerIsUnlockedAction\n | KeyringControllerExportSeedPhraseAction\n | KeyringControllerExportAccountAction\n | KeyringControllerGetAccountsAction\n | KeyringControllerGetEncryptionPublicKeyAction\n | KeyringControllerDecryptMessageAction\n | KeyringControllerGetKeyringForAccountAction\n | KeyringControllerGetKeyringsByTypeAction\n | KeyringControllerPersistAllKeyringsAction\n | KeyringControllerImportAccountWithStrategyAction\n | KeyringControllerRemoveAccountAction\n | KeyringControllerSetLockedAction\n | KeyringControllerSignMessageAction\n | KeyringControllerSignEip7702AuthorizationAction\n | KeyringControllerSignPersonalMessageAction\n | KeyringControllerSignTypedMessageAction\n | KeyringControllerSignTransactionAction\n | KeyringControllerPrepareUserOperationAction\n | KeyringControllerPatchUserOperationAction\n | KeyringControllerSignUserOperationAction\n | KeyringControllerChangePasswordAction\n | KeyringControllerSubmitEncryptionKeyAction\n | KeyringControllerExportEncryptionKeyAction\n | KeyringControllerSubmitPasswordAction\n | KeyringControllerWithKeyringAction\n | KeyringControllerWithKeyringUnsafeAction\n | KeyringControllerWithKeyringV2Action\n | KeyringControllerWithKeyringV2UnsafeAction\n | KeyringControllerWithControllerAction\n | KeyringControllerGetAccountKeyringTypeAction;\n"]}
1
+ {"version":3,"file":"KeyringController-method-action-types.js","sourceRoot":"","sources":["../src/KeyringController-method-action-types.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/**\n * This file is auto generated.\n * Do not edit manually.\n */\n\nimport type { KeyringController } from './KeyringController.js';\n\n/**\n * Adds a new account to the default (first) HD seed phrase keyring.\n *\n * @param accountCount - Number of accounts before adding a new one, used to\n * make the method idempotent.\n * @returns Promise resolving to the added account address.\n */\nexport type KeyringControllerAddNewAccountAction = {\n type: `KeyringController:addNewAccount`;\n handler: KeyringController['addNewAccount'];\n};\n\n/**\n * Effectively the same as creating a new keychain then populating it\n * using the given seed phrase.\n *\n * @param password - Password to unlock keychain.\n * @param seed - A BIP39-compliant seed phrase as Uint8Array,\n * either as a string or an array of UTF-8 bytes that represent the string.\n * @returns Promise resolving when the operation ends successfully.\n */\nexport type KeyringControllerCreateNewVaultAndRestoreAction = {\n type: `KeyringController:createNewVaultAndRestore`;\n handler: KeyringController['createNewVaultAndRestore'];\n};\n\n/**\n * Create a new vault and primary keyring.\n *\n * This only works if keyrings are empty. If there is a pre-existing unlocked vault, calling this will have no effect.\n * If there is a pre-existing locked vault, it will be replaced.\n *\n * @param password - Password to unlock the new vault.\n * @returns Promise resolving when the operation ends successfully.\n */\nexport type KeyringControllerCreateNewVaultAndKeychainAction = {\n type: `KeyringController:createNewVaultAndKeychain`;\n handler: KeyringController['createNewVaultAndKeychain'];\n};\n\n/**\n * Adds a new keyring of the given `type`.\n *\n * @param type - Keyring type name.\n * @param opts - Keyring options.\n * @throws If a builder for the given `type` does not exist.\n * @returns Promise resolving to the new keyring metadata.\n */\nexport type KeyringControllerAddNewKeyringAction = {\n type: `KeyringController:addNewKeyring`;\n handler: KeyringController['addNewKeyring'];\n};\n\n/**\n * Method to verify a given password validity. Throws an\n * error if the password is invalid.\n *\n * @param password - Password of the keyring.\n */\nexport type KeyringControllerVerifyPasswordAction = {\n type: `KeyringController:verifyPassword`;\n handler: KeyringController['verifyPassword'];\n};\n\n/**\n * Returns the status of the vault.\n *\n * @returns Boolean returning true if the vault is unlocked.\n */\nexport type KeyringControllerIsUnlockedAction = {\n type: `KeyringController:isUnlocked`;\n handler: KeyringController['isUnlocked'];\n};\n\n/**\n * Gets the seed phrase of the HD keyring.\n *\n * @param credentials - Object holding either the `password` or the vault\n * `encryptionKey`.\n * @param keyringId - The id of the keyring.\n * @returns Promise resolving to the seed phrase.\n */\nexport type KeyringControllerExportSeedPhraseAction = {\n type: `KeyringController:exportSeedPhrase`;\n handler: KeyringController['exportSeedPhrase'];\n};\n\n/**\n * Gets the private key from the keyring controlling an address.\n *\n * @param credentials - Object holding either the `password` or the vault\n * `encryptionKey`.\n * @param address - Address to export.\n * @returns Promise resolving to the private key for an address.\n */\nexport type KeyringControllerExportAccountAction = {\n type: `KeyringController:exportAccount`;\n handler: KeyringController['exportAccount'];\n};\n\n/**\n * Returns the public addresses of all accounts from every keyring.\n *\n * @returns A promise resolving to an array of addresses.\n */\nexport type KeyringControllerGetAccountsAction = {\n type: `KeyringController:getAccounts`;\n handler: KeyringController['getAccounts'];\n};\n\n/**\n * Get encryption public key.\n *\n * @param account - An account address.\n * @param opts - Additional encryption options.\n * @throws If the `account` does not exist or does not support the `getEncryptionPublicKey` method\n * @returns Promise resolving to encyption public key of the `account` if one exists.\n */\nexport type KeyringControllerGetEncryptionPublicKeyAction = {\n type: `KeyringController:getEncryptionPublicKey`;\n handler: KeyringController['getEncryptionPublicKey'];\n};\n\n/**\n * Attempts to decrypt the provided message parameters.\n *\n * @param messageParams - The decryption message parameters.\n * @param messageParams.from - The address of the account you want to use to decrypt the message.\n * @param messageParams.data - The encrypted data that you want to decrypt.\n * @returns The raw decryption result.\n */\nexport type KeyringControllerDecryptMessageAction = {\n type: `KeyringController:decryptMessage`;\n handler: KeyringController['decryptMessage'];\n};\n\n/**\n * Returns the currently initialized keyring that manages\n * the specified `address` if one exists.\n *\n * @deprecated Use of this method is discouraged as actions executed directly on\n * keyrings are not being reflected in the KeyringController state and not\n * persisted in the vault. Use `withKeyring` instead.\n * @param account - An account address.\n * @returns Promise resolving to keyring of the `account` if one exists.\n */\nexport type KeyringControllerGetKeyringForAccountAction = {\n type: `KeyringController:getKeyringForAccount`;\n handler: KeyringController['getKeyringForAccount'];\n};\n\n/**\n * Returns all keyrings of the given type.\n *\n * @deprecated Use of this method is discouraged as actions executed directly on\n * keyrings are not being reflected in the KeyringController state and not\n * persisted in the vault. Use `withKeyring` instead.\n * @param type - Keyring type name.\n * @returns An array of keyrings of the given type.\n */\nexport type KeyringControllerGetKeyringsByTypeAction = {\n type: `KeyringController:getKeyringsByType`;\n handler: KeyringController['getKeyringsByType'];\n};\n\n/**\n * Persist all serialized keyrings in the vault.\n *\n * @deprecated This method is being phased out in favor of `withKeyring`.\n * @returns Promise resolving with `true` value when the\n * operation completes.\n */\nexport type KeyringControllerPersistAllKeyringsAction = {\n type: `KeyringController:persistAllKeyrings`;\n handler: KeyringController['persistAllKeyrings'];\n};\n\n/**\n * Imports an account with the specified import strategy.\n *\n * @param strategy - Import strategy name.\n * @param args - Array of arguments to pass to the underlying stategy.\n * @throws Will throw when passed an unrecognized strategy.\n * @returns Promise resolving to the imported account address.\n */\nexport type KeyringControllerImportAccountWithStrategyAction = {\n type: `KeyringController:importAccountWithStrategy`;\n handler: KeyringController['importAccountWithStrategy'];\n};\n\n/**\n * Removes an account from keyring state.\n *\n * @param address - Address of the account to remove.\n * @fires KeyringController:accountRemoved\n * @returns Promise resolving when the account is removed.\n */\nexport type KeyringControllerRemoveAccountAction = {\n type: `KeyringController:removeAccount`;\n handler: KeyringController['removeAccount'];\n};\n\n/**\n * Deallocates all secrets and locks the wallet.\n *\n * @returns Promise resolving when the operation completes.\n */\nexport type KeyringControllerSetLockedAction = {\n type: `KeyringController:setLocked`;\n handler: KeyringController['setLocked'];\n};\n\n/**\n * Signs message by calling down into a specific keyring.\n *\n * @param messageParams - PersonalMessageParams object to sign.\n * @returns Promise resolving to a signed message string.\n */\nexport type KeyringControllerSignMessageAction = {\n type: `KeyringController:signMessage`;\n handler: KeyringController['signMessage'];\n};\n\n/**\n * Signs EIP-7702 Authorization message by calling down into a specific keyring.\n *\n * @param params - EIP7702AuthorizationParams object to sign.\n * @returns Promise resolving to an EIP-7702 Authorization signature.\n * @throws Will throw UnsupportedSignEIP7702Authorization if the keyring does not support signing EIP-7702 Authorization messages.\n */\nexport type KeyringControllerSignEip7702AuthorizationAction = {\n type: `KeyringController:signEip7702Authorization`;\n handler: KeyringController['signEip7702Authorization'];\n};\n\n/**\n * Signs personal message by calling down into a specific keyring.\n *\n * @param messageParams - PersonalMessageParams object to sign.\n * @returns Promise resolving to a signed message string.\n */\nexport type KeyringControllerSignPersonalMessageAction = {\n type: `KeyringController:signPersonalMessage`;\n handler: KeyringController['signPersonalMessage'];\n};\n\n/**\n * Signs typed message by calling down into a specific keyring.\n *\n * @param messageParams - TypedMessageParams object to sign.\n * @param version - Compatibility version EIP712.\n * @throws Will throw when passed an unrecognized version.\n * @returns Promise resolving to a signed message string or an error if any.\n */\nexport type KeyringControllerSignTypedMessageAction = {\n type: `KeyringController:signTypedMessage`;\n handler: KeyringController['signTypedMessage'];\n};\n\n/**\n * Signs a transaction by calling down into a specific keyring.\n *\n * @param transaction - Transaction object to sign. Must be a `ethereumjs-tx` transaction instance.\n * @param from - Address to sign from, should be in keychain.\n * @param opts - An optional options object.\n * @returns Promise resolving to a signed transaction string.\n */\nexport type KeyringControllerSignTransactionAction = {\n type: `KeyringController:signTransaction`;\n handler: KeyringController['signTransaction'];\n};\n\n/**\n * Convert a base transaction to a base UserOperation.\n *\n * @param from - Address of the sender.\n * @param transactions - Base transactions to include in the UserOperation.\n * @param executionContext - The execution context to use for the UserOperation.\n * @returns A pseudo-UserOperation that can be used to construct a real.\n */\nexport type KeyringControllerPrepareUserOperationAction = {\n type: `KeyringController:prepareUserOperation`;\n handler: KeyringController['prepareUserOperation'];\n};\n\n/**\n * Patches properties of a UserOperation. Currently, only the\n * `paymasterAndData` can be patched.\n *\n * @param from - Address of the sender.\n * @param userOp - UserOperation to patch.\n * @param executionContext - The execution context to use for the UserOperation.\n * @returns A patch to apply to the UserOperation.\n */\nexport type KeyringControllerPatchUserOperationAction = {\n type: `KeyringController:patchUserOperation`;\n handler: KeyringController['patchUserOperation'];\n};\n\n/**\n * Signs an UserOperation.\n *\n * @param from - Address of the sender.\n * @param userOp - UserOperation to sign.\n * @param executionContext - The execution context to use for the UserOperation.\n * @returns The signature of the UserOperation.\n */\nexport type KeyringControllerSignUserOperationAction = {\n type: `KeyringController:signUserOperation`;\n handler: KeyringController['signUserOperation'];\n};\n\n/**\n * Changes the password used to encrypt the vault.\n *\n * @param password - The new password.\n * @returns Promise resolving when the operation completes.\n */\nexport type KeyringControllerChangePasswordAction = {\n type: `KeyringController:changePassword`;\n handler: KeyringController['changePassword'];\n};\n\n/**\n * Attempts to decrypt the current vault and load its keyrings, using the\n * given encryption key and salt. The optional salt can be used to check for\n * consistency with the vault salt.\n *\n * @param encryptionKey - Key to unlock the keychain.\n * @param encryptionSalt - Optional salt to unlock the keychain.\n * @returns Promise resolving when the operation completes.\n */\nexport type KeyringControllerSubmitEncryptionKeyAction = {\n type: `KeyringController:submitEncryptionKey`;\n handler: KeyringController['submitEncryptionKey'];\n};\n\n/**\n * Exports the vault encryption key.\n *\n * @returns The vault encryption key.\n */\nexport type KeyringControllerExportEncryptionKeyAction = {\n type: `KeyringController:exportEncryptionKey`;\n handler: KeyringController['exportEncryptionKey'];\n};\n\n/**\n * Attempts to decrypt the current vault and load its keyrings,\n * using the given password.\n *\n * @param password - Password to unlock the keychain.\n * @returns Promise resolving when the operation completes.\n */\nexport type KeyringControllerSubmitPasswordAction = {\n type: `KeyringController:submitPassword`;\n handler: KeyringController['submitPassword'];\n};\n\n/**\n * Select a keyring and execute the given operation with\n * the selected keyring, as a mutually exclusive atomic\n * operation.\n *\n * The method automatically persists changes at the end of the\n * function execution, or rolls back the changes if an error\n * is thrown.\n *\n * The operation must only mutate the keyring it is given: the transaction\n * snapshots, persists, and rolls back only the selected keyring. Changes\n * made to other keyrings (e.g. through references obtained from\n * deprecated direct-access methods) are neither persisted nor rolled back.\n *\n * @param selector - Keyring selector object.\n * @param operation - Function to execute with the selected keyring.\n * @param options - Additional options.\n * @param options.createIfMissing - Whether to create a new keyring if the selected one is missing.\n * @param options.createWithData - Optional data to use when creating a new keyring.\n * @returns Promise resolving to the result of the function execution.\n * @template SelectedKeyring - The type of the selected keyring.\n * @template CallbackResult - The type of the value resolved by the callback function.\n * @deprecated This method overload is deprecated. Use `withKeyring` without options instead.\n */\nexport type KeyringControllerWithKeyringAction = {\n type: `KeyringController:withKeyring`;\n handler: KeyringController['withKeyring'];\n};\n\n/**\n * Select a keyring and execute the given operation with the selected\n * keyring, **without** acquiring the controller's mutual exclusion lock.\n *\n * ## When to use this method\n *\n * This method is an escape hatch for read-only access to keyring data that\n * is immutable once the keyring is initialized. A typical safe use case is\n * reading the `mnemonic` from an `HdKeyring`: the mnemonic is set during\n * `deserialize()` and never mutated afterwards, so it can safely be read\n * without holding the lock.\n *\n * ## Why it is \"unsafe\"\n *\n * The \"unsafe\" designation mirrors the semantics of `unsafe { }` blocks in\n * Rust: the method itself does not enforce thread-safety guarantees. By\n * calling this method the **caller** explicitly takes responsibility for\n * ensuring that:\n *\n * - The operation is **read-only** — no state is mutated.\n * - The data being read is **immutable** after the keyring is initialized,\n * so concurrent locked operations cannot alter it while this callback\n * runs.\n *\n * Do **not** use this method to:\n * - Mutate keyring state (add accounts, sign, etc.) — use `withKeyring`.\n * - Read mutable fields that could change during concurrent operations.\n *\n * @param selector - Keyring selector object.\n * @param operation - Read-only function to execute with the selected keyring.\n * @returns Promise resolving to the result of the function execution.\n * @template SelectedKeyring - The type of the selected keyring.\n * @template CallbackResult - The type of the value resolved by the callback function.\n */\nexport type KeyringControllerWithKeyringUnsafeAction = {\n type: `KeyringController:withKeyringUnsafe`;\n handler: KeyringController['withKeyringUnsafe'];\n};\n\n/**\n * Select a keyring using its `KeyringV2` adapter, and execute\n * the given operation with the wrapped keyring as a mutually\n * exclusive atomic operation.\n *\n * The cached `KeyringV2` adapter is retrieved from the keyring\n * entry.\n *\n * A `KeyringV2Builder` for the selected keyring's type must exist\n * (either as a default or registered via the `keyringV2Builders`\n * constructor option); otherwise an error is thrown.\n *\n * The method automatically persists changes at the end of the\n * function execution, or rolls back the changes if an error\n * is thrown.\n *\n * The operation must only mutate the keyring it is given: the transaction\n * snapshots, persists, and rolls back only the selected keyring. Changes\n * made to other keyrings (e.g. through references obtained from\n * deprecated direct-access methods) are neither persisted nor rolled back.\n *\n * @param selector - Keyring selector object.\n * @param operation - Function to execute with the wrapped V2 keyring.\n * @returns Promise resolving to the result of the function execution.\n * @template CallbackResult - The type of the value resolved by the callback function.\n */\nexport type KeyringControllerWithKeyringV2Action = {\n type: `KeyringController:withKeyringV2`;\n handler: KeyringController['withKeyringV2'];\n};\n\n/**\n * Select a keyring, wrap it in a `KeyringV2` adapter, and execute\n * the given read-only operation **without** acquiring the controller's\n * mutual exclusion lock.\n *\n * ## When to use this method\n *\n * This method is an escape hatch for read-only access to keyring data that\n * is immutable once the keyring is initialized. A typical safe use case is\n * reading immutable fields from a `KeyringV2` adapter: data that is set\n * during initialization and never mutated afterwards.\n *\n * ## Why it is \"unsafe\"\n *\n * The \"unsafe\" designation mirrors the semantics of `unsafe { }` blocks in\n * Rust: the method itself does not enforce thread-safety guarantees. By\n * calling this method the **caller** explicitly takes responsibility for\n * ensuring that:\n *\n * - The operation is **read-only** — no state is mutated.\n * - The data being read is **immutable** after the keyring is initialized,\n * so concurrent locked operations cannot alter it while this callback\n * runs.\n *\n * Do **not** use this method to:\n * - Mutate keyring state (add accounts, sign, etc.) — use `withKeyringV2`.\n * - Read mutable fields that could change during concurrent operations.\n *\n * @param selector - Keyring selector object.\n * @param operation - Read-only function to execute with the wrapped V2 keyring.\n * @returns Promise resolving to the result of the function execution.\n * @template SelectedKeyring - The type of the selected V2 keyring.\n * @template CallbackResult - The type of the value resolved by the callback function.\n */\nexport type KeyringControllerWithKeyringV2UnsafeAction = {\n type: `KeyringController:withKeyringV2Unsafe`;\n handler: KeyringController['withKeyringV2Unsafe'];\n};\n\n/**\n * Execute an operation against all keyrings as a mutually exclusive atomic\n * operation. The operation receives a {@link RestrictedController} instance\n * that exposes a read-only live view of all keyrings as well as\n * `addNewKeyring` and `removeKeyring` methods to stage mutations.\n *\n * The method automatically persists changes at the end of the function\n * execution, or rolls back the changes if an error is thrown.\n *\n * @param operation - Function to execute with the restricted controller.\n * @returns Promise resolving to the result of the function execution.\n * @template CallbackResult - The type of the value resolved by the callback function.\n */\nexport type KeyringControllerWithControllerAction = {\n type: `KeyringController:withController`;\n handler: KeyringController['withController'];\n};\n\n/**\n * Gets the type of the keyring that manages the specified account.\n *\n * @param account - The account address to look up.\n * @returns A promise that resolves to the type of the keyring managing the account.\n */\nexport type KeyringControllerGetAccountKeyringTypeAction = {\n type: `KeyringController:getAccountKeyringType`;\n handler: KeyringController['getAccountKeyringType'];\n};\n\n/**\n * Union of all KeyringController action types.\n */\nexport type KeyringControllerMethodActions =\n | KeyringControllerAddNewAccountAction\n | KeyringControllerCreateNewVaultAndRestoreAction\n | KeyringControllerCreateNewVaultAndKeychainAction\n | KeyringControllerAddNewKeyringAction\n | KeyringControllerVerifyPasswordAction\n | KeyringControllerIsUnlockedAction\n | KeyringControllerExportSeedPhraseAction\n | KeyringControllerExportAccountAction\n | KeyringControllerGetAccountsAction\n | KeyringControllerGetEncryptionPublicKeyAction\n | KeyringControllerDecryptMessageAction\n | KeyringControllerGetKeyringForAccountAction\n | KeyringControllerGetKeyringsByTypeAction\n | KeyringControllerPersistAllKeyringsAction\n | KeyringControllerImportAccountWithStrategyAction\n | KeyringControllerRemoveAccountAction\n | KeyringControllerSetLockedAction\n | KeyringControllerSignMessageAction\n | KeyringControllerSignEip7702AuthorizationAction\n | KeyringControllerSignPersonalMessageAction\n | KeyringControllerSignTypedMessageAction\n | KeyringControllerSignTransactionAction\n | KeyringControllerPrepareUserOperationAction\n | KeyringControllerPatchUserOperationAction\n | KeyringControllerSignUserOperationAction\n | KeyringControllerChangePasswordAction\n | KeyringControllerSubmitEncryptionKeyAction\n | KeyringControllerExportEncryptionKeyAction\n | KeyringControllerSubmitPasswordAction\n | KeyringControllerWithKeyringAction\n | KeyringControllerWithKeyringUnsafeAction\n | KeyringControllerWithKeyringV2Action\n | KeyringControllerWithKeyringV2UnsafeAction\n | KeyringControllerWithControllerAction\n | KeyringControllerGetAccountKeyringTypeAction;\n"]}
@@ -666,6 +666,11 @@ export declare class KeyringController<EncryptionKey = encryptorUtils.Encryption
666
666
  * function execution, or rolls back the changes if an error
667
667
  * is thrown.
668
668
  *
669
+ * The operation must only mutate the keyring it is given: the transaction
670
+ * snapshots, persists, and rolls back only the selected keyring. Changes
671
+ * made to other keyrings (e.g. through references obtained from
672
+ * deprecated direct-access methods) are neither persisted nor rolled back.
673
+ *
669
674
  * @param selector - Keyring selector object.
670
675
  * @param operation - Function to execute with the selected keyring.
671
676
  * @param options - Additional options.
@@ -691,6 +696,11 @@ export declare class KeyringController<EncryptionKey = encryptorUtils.Encryption
691
696
  * function execution, or rolls back the changes if an error
692
697
  * is thrown.
693
698
  *
699
+ * The operation must only mutate the keyring it is given: the transaction
700
+ * snapshots, persists, and rolls back only the selected keyring. Changes
701
+ * made to other keyrings (e.g. through references obtained from
702
+ * deprecated direct-access methods) are neither persisted nor rolled back.
703
+ *
694
704
  * @param selector - Keyring selector object.
695
705
  * @param operation - Function to execute with the selected keyring.
696
706
  * @returns Promise resolving to the result of the function execution.
@@ -752,6 +762,11 @@ export declare class KeyringController<EncryptionKey = encryptorUtils.Encryption
752
762
  * function execution, or rolls back the changes if an error
753
763
  * is thrown.
754
764
  *
765
+ * The operation must only mutate the keyring it is given: the transaction
766
+ * snapshots, persists, and rolls back only the selected keyring. Changes
767
+ * made to other keyrings (e.g. through references obtained from
768
+ * deprecated direct-access methods) are neither persisted nor rolled back.
769
+ *
755
770
  * @param selector - Keyring selector object.
756
771
  * @param operation - Function to execute with the wrapped V2 keyring.
757
772
  * @returns Promise resolving to the result of the function execution.
@@ -1 +1 @@
1
- {"version":3,"file":"KeyringController.d.ts","sourceRoot":"","sources":["../src/KeyringController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"KeyringController.d.ts","sourceRoot":"","sources":["../src/KeyringController.ts"],"names":[],"mappings":"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"}