zic-tron-sdk
Version:
An sdk for interacting with tron zebec card sdk
49 lines (48 loc) • 1.7 kB
TypeScript
import { Contract, TronWeb } from "tronweb";
import { TransactionPayload } from "./payload";
import { Base58String, CallOptions, CardConfig, CardPurchaseOfDay, FeeTiers, SwapData, WalletAdapterSignTransactionFunc } from "./types";
export declare enum TronNetwork {
Mainnet = 0,
Nile = 1
}
export declare class TronZebecCardService {
readonly network: TronNetwork;
readonly cardContract: Contract;
readonly usdtContract: Contract;
readonly tronWeb: TronWeb;
private readonly _signTransaction?;
constructor(tronWeb: TronWeb, network?: TronNetwork, walletInterface?: {
address: Base58String;
signTransaction: WalletAdapterSignTransactionFunc;
});
get cardContractAddress(): string;
get usdtAddress(): string;
get signerAddress(): string;
getCardConfig(callOptions?: CallOptions): Promise<CardConfig>;
getFeeTiers(callOptions?: CallOptions): Promise<FeeTiers>;
getUserVaultBalance(params: {
userAddress: Base58String;
}): Promise<string>;
getCardPurchcaseOfDay(params: {
userAddress: Base58String;
}): Promise<CardPurchaseOfDay>;
depositUsdt(params: {
amount: string;
}): Promise<TransactionPayload>;
swapAndDeposit(params: {
swapData: SwapData;
}): Promise<TransactionPayload>;
withdraw(params: {
amount: string;
}): Promise<TransactionPayload>;
buyCard(params: {
amount: string;
email: string;
}): Promise<TransactionPayload>;
approve(params: {
token: Base58String | Contract;
spender: Base58String;
amount: string;
}): Promise<TransactionPayload | null>;
private _createTransactionPayload;
}