@metamask/multichain-account-service
Version:
Service to manage multichain accounts
34 lines • 1.18 kB
JavaScript
import { Messenger } from "@metamask/base-controller";
/**
* Creates a new root messenger instance for testing.
*
* @returns A new Messenger instance.
*/
export function getRootMessenger() {
return new Messenger();
}
/**
* Retrieves a restricted messenger for the MultichainAccountService.
*
* @param messenger - The root messenger instance. Defaults to a new Messenger created by getRootMessenger().
* @returns The restricted messenger for the MultichainAccountService.
*/
export function getMultichainAccountServiceMessenger(messenger) {
return messenger.getRestricted({
name: 'MultichainAccountService',
allowedEvents: [
'KeyringController:stateChange',
'AccountsController:accountAdded',
'AccountsController:accountRemoved',
],
allowedActions: [
'AccountsController:getAccount',
'AccountsController:getAccountByAddress',
'AccountsController:listMultichainAccounts',
'SnapController:handleRequest',
'KeyringController:withKeyring',
'KeyringController:getState',
],
});
}
//# sourceMappingURL=messenger.mjs.map