import BN from 'bn.js'; import { NearContractFactory } from './near-contract.js'; /** * NEP141 contract factory */ export declare class NEP141ContractFactory extends NearContractFactory { /** * Contract methods for NEP141 */ static contractMethods: { changeMethods: string[]; viewMethods: string[]; }; /** * Launch a NEP141 token contract * @param name - Token name * @param symbol - Token symbol * @param totalSupply - Total supply * @param continuous - Allows continuous minting after the contract is created * @param ownerId - Receiver account of the tokens initially minted * @returns */ launchToken(name: string, symbol: string, totalSupply: BN | string, continuous?: boolean, ownerId?: string): Promise<{ tokenAccount: import("./types.js").NearAccount; result: import("@near-js/types").FinalExecutionOutcome; }>; /** * Transfer tokens to the given receiver account * @param tokenContract - Token account id * @param receiverId - Receiver account id * @param amount - Amount of tokens to be transferred from the the owner to * the receiver * @param memo - For use cases that may benefit from indexing or * providing information for a transfer. * @returns */ transfer(tokenContract: string, receiverId: string, amount: BN, memo?: string): Promise; /** * Transfer tokens and call a method on a receiver contract. A successful * workflow will end in a success execution outcome to the callback on the * same contract at the method `ft_resolve_transfer`. * * @param tokenContract - Token contract address * @param receiverId - the valid NEAR account receiving the fungible tokens. * @param amount - the number of tokens to transfer, wrapped in quotes and * treated like a string, although the number will be stored as an unsigned * integer with 128 bits. * @param memo - for use cases that may benefit from indexing or providing * information for a transfer. * @param msg - specifies information needed by the receiving contract in * order to properly handle the transfer. Can indicate both a function to * call and the parameters to pass to that function. * @returns */ transferCall(tokenContract: string, receiverId: string, amount: BN, memo: string, msg: string): Promise; /** * Mint more tokens * @param tokenContract - Token account id * @param amount - Amount of tokens to be minted * @returns */ mint(tokenContract: string, amount: BN): Promise; /** * Get balance of an account in the contract * @param tokenContract - Token account id * @param accountId - Owner account id * @returns The balance of an account in string form representing a value as * an unsigned 128-bit integer. If the account doesn't exist must returns * `"0"`. */ balanceOf(tokenContract: string, accountId: string): Promise; /** * Get the total supply of tokens * @param tokenContract - Token account id * @returns The total supply of fungible tokens as a string representing the * value as an unsigned 128-bit integer. */ totalSupply(tokenContract: string): Promise; }