@getsafle/vault-arbitrum-controller

1.0.8 • Public • Published

Vault-arbitrum-controller

npm version Static Badge Discussions Static Badge

A module written in javascript for managing various keyrings of Arbitrum accounts, encrypting them, and using them.

Installation

npm install --save @getsafle/vault-arbitrum-controller

Initialize the Arbitrum Controller class

const { KeyringController, getBalance } = require('@getsafle/vault-arbitrum-controller');

const arbitrumController = new KeyringController({
  encryptor: {
    // An optional object for defining encryption schemes:
    // Defaults to Browser-native SubtleCrypto.
    encrypt(password, object) {
      return new Promise('encrypted!');
    },
    decrypt(password, encryptedString) {
      return new Promise({ foo: 'bar' });
    },
  },
});

Methods

Generate Keyring with 1 account and encrypt

const keyringState = await arbitrumController.createNewVaultAndKeychain(password);

Restore a keyring with the first account using a mnemonic

const keyringState = await arbitrumController.createNewVaultAndRestore(password, mnemonic);

Add a new account to the keyring object

const keyringState = await arbitrumController.addNewAccount(keyringObject);

Export the private key of an address present in the keyring

const privateKey = await arbitrumController.exportAccount(address);

Sign a transaction

const signedTx = await arbitrumController.signTransaction(arbitrumTx, _fromAddress);

Sign a message

const signedMsg = await arbitrumController.signMessage(msgParams);

Sign a message

const signedObj = await arbitrumController.sign(msgParams, pvtKey, web3Obj);

Sign Typed Data (EIP-712)

const signedData = await arbitrumController.signTypedMessage(msgParams);

Get balance

const balance = await getBalance(address, web3);

/@getsafle/vault-arbitrum-controller/

    Package Sidebar

    Install

    npm i @getsafle/vault-arbitrum-controller

    Weekly Downloads

    23

    Version

    1.0.8

    License

    MIT

    Unpacked Size

    33.5 kB

    Total Files

    9

    Last publish

    Collaborators

    • subhanshugupta
    • apoorv31
    • shubham.3008
    • sidth