@metamask/keyring-snap-sdk
Version:
MetaMask Keyring Snap SDK
39 lines • 1.17 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.emitSnapKeyringEvent = emitSnapKeyringEvent;
exports.getSelectedAccounts = getSelectedAccounts;
const superstruct_1 = require("@metamask/superstruct");
const methods_1 = require("./methods.cjs");
/**
* Emit a keyring event from a snap.
*
* @param snap - The global snap object.
* @param event - The event name.
* @param data - The event data.
*/
async function emitSnapKeyringEvent(snap, event, data) {
await snap.request({
method: 'snap_manageAccounts',
params: {
method: event,
params: { ...data },
},
});
}
/**
* Get the selected accounts from a snap.
*
* @param snap - The global snap object.
* @returns The selected accounts.
*/
async function getSelectedAccounts(snap) {
const response = await snap.request({
method: 'snap_manageAccounts',
params: {
method: methods_1.SnapManageAccountsMethod.GetSelectedAccounts,
},
});
(0, superstruct_1.assert)(response, methods_1.GetSelectedAccountsResponseStruct);
return response;
}
//# sourceMappingURL=snap-utils.cjs.map