gnosis-neon-safe-ethers-adapters
TypeScript icon, indicating that this package has built-in type declarations

0.1.2 • Public • Published

Safe Ethers Adapters

NPM Version GitHub

Ethers adapter that facilitates the interaction with the Safe Services

Getting Started

The only adapter currently provided is the SafeEthersSigner which implements the Signer interface from Ethers.

The SafeEthersSigner can be used with Ethers Contracts to deploy and interact with them. Each of these interactions will create a Safe transaction that is published to the Safe transaction service.

For this to work it is required to initialize the SafeEthersSigner with an account that is either an owner of the specified Safe or a delegate of one of the owners.

An example for such an account would be the private key of one of the owners that is used with an Ethers Wallet

const signer = new Wallet("some_private_key", ethereumProvider)

It is also necessary to specify a service instance that should be used to publish the Safe transactions. An example for this would be the Mainnet instance of the Safe Transaction Service: https://safe-transaction-mainnet.safe.global/

const service = new SafeService("some_service_url")

A Safe instance must also be created before obtaining the signer. It may be obtained with:

import { ethers } from "ethers"
import Safe from "@safe-global/safe-core-sdk"
import EthersAdapter from "@safe-global/safe-ethers-lib"

const safe = await Safe.create({
  ethAdapter: new EthersAdapter({ ethers, signerOrProvider }),
  safeAddress: "some_safe_address"
})

Using these components it is possible to create an instance of the SafeEthersSigner

const safeSigner = new SafeEthersSigner(safe, service, provider)

See examples for more information.

Installation

Select correct nvm version:

nvm use

Install the package with yarn or npm:

yarn install
npm install

Build

Build the package with yarn or npm:

yarn build
npm build

License

This library is released under MIT.

Contributors

Readme

Keywords

Package Sidebar

Install

npm i gnosis-neon-safe-ethers-adapters

Weekly Downloads

0

Version

0.1.2

License

MIT

Unpacked Size

67.8 kB

Total Files

19

Last publish

Collaborators

  • neonlabs-devops