set.js
is a library for wrapping and interacting with Set Protocol V2 smart contracts.
This library enables you to create, issue, redeem, and trade for Sets.
For Set Protocol V2 smart contract function descriptions, visit our docs
yarn install set.js
const SetJsEthereumMainnetAddresses = {
controllerAddress: "0xF1B12A7b1f0AF744ED21eEC7d3E891C48Fd3c329",
setTokenCreatorAddress: "0x026d25C2B70Ddbb8D759f1f38d6fD6e23b60B6DF",
basicIssuanceModuleAddress: "0x508910aA6fF3D029Dc358dD0f775877A355BA35B",
debtIssuanceModuleAddress: "0x338BEf3f37794dd199d6910E6109125D3eCa6048",
debtIssuanceModuleV2Address: "0x3C0CC7624B1c408cF2cF11b3961301949f2F7820",
streamingFeeModuleAddress: "0x3D8d14b7eFb8e342189ee14c3d40dCe005EB901B",
tradeModuleAddress: "0x45D67b9dbEA9bd51ED2B67832addEAF839628fAa",
navIssuanceModuleAddress: "0x33f6184b1695a8Fe344Ea6b7De11aA35A74Ec300",
protocolViewerAddress: "0x15D860670b7DC211714282f1583CF591Cc3A945E"
}
const SetJsConfig = {
ethersProvider: new ethers.providers.Web3Provider(myProvider),
...SetJsEthereumMainnetAddresses,
};
const SetJsInstance = new SetJs(SetJsConfig);
mySetJsInstance
.setToken
.fetchSetDetailsAsync(
"0x1494CA1F11D487c2bBe4543E90080AeBa4BA3C2b", // DeFi Pulse Index Set Token
["0xd8EF3cACe8b4907117a45B0b125c68560532F94D"], // Basic Issuance Module
myAccount
)