Skip to content

🛟 Making web3 more predictable & safer, 1 type at a time!

License

Notifications You must be signed in to change notification settings

Rubilmax/ethers-types

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ethers-types

npm package Build Status Downloads Issues Commitizen Friendly Semantic Release

🛟 Making web3 more predictable & safer, 1 type at a time!

Install

npm install ethers-types
yarn add ethers-types

Getting Started

Import your favorite protocol's contract types directly into your TypeScript code:

import { getDefaultProvider } from "ethers";
import { MorphoAaveV3__factory } from "ethers-types/factories/protocols/morpho/aave-v3/MorphoAaveV3__factory";
import { ERC20__factory } from "ethers-types/factories/token/ERC20/ERC20__factory";

const provider = getDefaultProvider();

const dai = ERC20__factory.connect("0x6B175474E89094C44Da98b954EedeAC495271d0F", provider);
const ma3Eth = MorphoAaveV3__factory.connect("0x33333aea097c193e66081E930c33020272b33333", provider);

You can even use ethers-multicall-provider to batch your RPC calls and load responses faster!

import { getDefaultProvider } from "ethers";
import { MorphoAaveV3__factory } from "ethers-types/factories/protocols/morpho/aave-v3/MorphoAaveV3__factory";
import { ERC20__factory } from "ethers-types/factories/token/ERC20/ERC20__factory";

const provider = MulticallWrapper.wrap(getDefaultProvider());

const dai = ERC20__factory.connect("0x6B175474E89094C44Da98b954EedeAC495271d0F", provider);

dai.symbol().then(console.log);
dai.decimals().then(console.log);