UNPKG

barterjs-sdk

Version:
50 lines (49 loc) 2.69 kB
import { TransferOutOptions } from '../../types/requestTypes'; import { IMapCrossChainService } from '../interfaces/IMapCrossChainService'; import { BarterTransactionResponse } from '../../types/responseTypes'; import { FinalExecutionOutcome } from 'near-api-js/lib/providers'; import { NearProviderType } from '../../types/paramTypes'; export declare class NearCrossChainService implements IMapCrossChainService { provider: NearProviderType; /** * we treat account as class member cuz to initialize a near account, async is required * @param provider */ constructor(provider: NearProviderType); /** * transfer out token(not native coin) from source chain to designated token on target chain * @param fromAddress * @param tokenAddress input token address * @param amount amount in minimal unit * @param toAddress target chain receiving address * @param toChainId target chain id * @param options see {@link TransferOutOptions} for more detail */ doTransferOutToken(fromAddress: string, tokenAddress: string, amount: string, toAddress: string, toChainId: string, options: TransferOutOptions): Promise<BarterTransactionResponse>; /** * transfer out native coin from source chain to designated token on target chain * @param fromAddress * @param toAddress target chain receiving address * @param toChainId target chain id * @param amount amount to bridge in minimal unit * @param options see {@link TransferOutOptions} for more detail */ doTransferOutNative(fromAddress: string, toAddress: string, toChainId: string, amount: string, options: TransferOutOptions): Promise<BarterTransactionResponse>; /** * add tochain to allowed transfer out chains. * @param toChainId */ addNativeToChain(toChainId: string): Promise<FinalExecutionOutcome | undefined>; addTokenToChain(tokenAddress: string, toChainId: number): Promise<FinalExecutionOutcome | undefined>; /** * call near smart contract * @param account * @param options * @private */ private _doNearFunctionCall; doDepositOutToken(tokenAddress: string, from: string, to: string, amount: string, options?: TransferOutOptions): Promise<string>; gasEstimateTransferOutNative(fromAddress: string, toAddress: string, toChainId: string, amount: string, options?: TransferOutOptions): Promise<string>; gasEstimateTransferOutToken(fromAddress: string, tokenAddress: string, amount: string, toAddress: string, toChainId: string, options?: TransferOutOptions): Promise<string>; addFungibleTokenToChain(tokenAddress: string, toChainId: string): Promise<void>; }