メインコンテンツまでスキップ

ERC20-Basic

概要​

Ethereum 上で最も流通しているファンジブル・トークン規格である、ERC20 をサポートしたトークンの発行及び操作・データ取得を可能にするライブラリです。

インストール方法​

npm install @gusdk/erc20-basic

利用方法​

import { ERC20Basic, ERC20Basic__factory} from "erc20-basic-sdk"
import {BigNumber, ethers, Wallet} from "ethers"

const provider = new ethers.providers.JsonRpcProvider({
url: 'https://sandbox1.japanopenchain.org:8545/'
})

// use the concrete contract factory if you need to operate on the bytecode (ie. deploy)
async function deployTestToken(ownerPK: string): Promise<ERC20Basic> {
const owner = new Wallet(ownerPK, provider);
return new ERC20Basic__factory(owner).deploy(
"TEST123",
"TEST123",
100,
18
);
}

// to call existing contracts, a factory for both the concrete contract and for the interface
// can be used since the ABI is the same
async function getTokenBalance(walletAddress: string, tokenAddress: string): Promise<BigNumber> {
const token = ERC20Basic__factory.connect(tokenAddress, provider);
return token.balanceOf(walletAddress);
}

機能​

name​

name(): Promise<string>;

トークンの名前を返します。

symbol​

symbol(): Promise<string>;

トークンのシンボルを返します。

totalSupply​

totalSupply(): Promise<BigNumber>;

トークンの総供給量を返します。

balanceOf​

balanceOf(account: PromiseOrValue<string>): Promise<BigNumber>;

指定したアドレス account のアカウント残高を返します。

decimals​

decimals(): Promise<number>;

トークンの小数点以下の桁数を返します。

allowance​

allowance(owner: PromiseOrValue<string>, spender: PromiseOrValue<string>): Promise<BigNumber>;

spender が owner からまだ引き出すことができる額を返します。

approve​

approve(spender: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>): Promise<ContractTransaction>;

spender があなたのアカウントから複数回引き出すことができるように許可します。最大額は value です。この関数が再度呼び出されると、現在の許可額が value で上書きされます。

decreaseAllowance​

decreaseAllowance(spender: PromiseOrValue<string>, subtractedValue: PromiseOrValue<BigNumberish>): Promise<ContractTransaction>;

spender が転送可能なトークン数を減らします。

increaseAllowance​

decreaseAllowance(spender: PromiseOrValue<string>, subtractedValue: PromiseOrValue<BigNumberish>): Promise<ContractTransaction>;

spender が転送可能なトークン数を増やします。

transfer​

transfer(to: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>): Promise<ContractTransaction>;

指定したアドレス to に value 量のトークンを転送します。

transferFrom​

transfer(to: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>): Promise<ContractTransaction>;

指定したアドレス from から指定したアドレス to に value 量のトークンを転送します。

Events​

Approval​

Approval(owner?: PromiseOrValue<string> | null, spender?: PromiseOrValue<string> | null, value?: null): ApprovalEventFilter

Approval f関数が呼び出されたときに承認イベントが発生します。

Transfer​

Transfer(from?: PromiseOrValue<string> | null, to?: PromiseOrValue<string> | null, value?: null): TransferEventFilter;

Transfer 関数が呼び出されたときに転送イベントが発生します。