@flarenetwork/flare-periphery-contract-artifacts v0.1.26
Flare Smart Contracts Periphery
This package contains ABIs and addresses for smart contracts deployed on Flare networks:
- Flare Mainnet
- Songbird Canary Network
- Songbird Testnet Coston
- Flare Testnet Coston2
Installation
npm install @flarenetwork/flare-periphery-contract-artifacts
# or
yarn add @flarenetwork/flare-periphery-contract-artifactsFeatures
Top Level Exports
ABI Access Functions
nameToAbi(name: string, network: string): any- get full smart contract functionality;interfaceToAbi(name: string, network: string): any- interact with the contract's public API.
Both functions return an ABI array. The network parameter must be one of:
"coston""coston2""songbird""flare"
import { nameToAbi, interfaceToAbi } from "@flarenetwork/flare-periphery-contract";
const fullAbi = nameToAbi("FtsoManager", "flare");
const interfaceAbi = interfaceToAbi("IFtsoManager", "flare");Address Resolution
nameToAddress(name: string, provider: ethers.JsonRpcApiProvider): Promise<string>namesToAddresses(names: string[], provider: ethers.JsonRpcApiProvider): Promise<string[]>
These functions fetch contract addresses from the on-chain FlareContractRegistryLibrary.
import { nameToAddress } from "@flarenetwork/flare-periphery-contract-artifacts";
import { ethers } from "ethers";
const provider = new ethers.JsonRpcProvider("https://flare-api.flare.network/ext/C/rpc");
const address = await nameToAddress("FtsoManager", provider);Constants
FlareContractRegistryAddress: Hardcoded registry address (same for all chains)
Network-Specific Namespaces
Each network (coston, coston2, flare, songbird) exports:
1. Products
Access contract information through .ContractName syntax:
import { flare } from "@flarenetwork/flare-periphery-contract-artifacts";
const ftsoManager = flare.products.FtsoManager;
console.log(ftsoManager.name); // Contract name
console.log(ftsoManager.interface); // Interface name
console.log(ftsoManager.abi); // Contract ABI
// Get deployed address
const address = await ftsoManager.getAddress(provider);2. Interface ABIs
Access interface ABIs using .InterfaceName syntax:
import { flare } from "@flarenetwork/flare-periphery-contract-artifacts";
const abi = flare.interfaceAbis.IFtsoManager;3. Network-Specific ABI Functions
It is same as top-level functions but with the pre-set network:
import { flare } from "@flarenetwork/flare-periphery-contract-artifacts";
const abi = flare.nameToAbi("FtsoManager"); // Network already known
const iAbi = flare.interfaceToAbi("IFtsoManager");Support
For issues and feature requests, please visit our GitHub repository.
11 months ago
9 months ago
9 months ago
8 months ago
8 months ago
7 months ago
11 months ago
2 years ago
2 years ago
2 years ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago