@cryptovarna/tedex-api
Version:
TEDEX API
66 lines (65 loc) • 2.21 kB
TypeScript
import { TronTransactionMethods } from "@cryptovarna/tron-web-api";
import BigNumber from "bignumber.js";
export interface TokenBridgeConfiguration {
bridge: string;
networks: string[];
correspondents: string[];
peggedBridges: string[];
}
export interface TokenBridgeInstance {
token: {
(): TronTransactionMethods<string>;
};
getConfiguration: {
(): TronTransactionMethods<TokenBridgeConfiguration>;
};
getToken: {
(): TronTransactionMethods<string>;
};
getDailyLimit: {
(): TronTransactionMethods<{
dailySwapped: BigNumber;
dayLimit: BigNumber;
}>;
};
moveIn: {
(network: string, recipient: string, amount: number | string, userSeed: number | string): TronTransactionMethods<BigNumber>;
};
}
export interface TaxedTokenBridgeInstance extends TokenBridgeInstance {
withdrawDeclinedMoveIn: {
(tokenId: string): TronTransactionMethods<void>;
};
getTax: {
(): TronTransactionMethods<BigNumber>;
};
}
export interface INetwork {
networks: string[];
correspondents: string[];
}
export interface BridgeInstance {
listNetworks: {
(): TronTransactionMethods<INetwork>;
};
listOracles: {
(): TronTransactionMethods<string[]>;
};
approveTask: {
(taskId: string, signature: string, preserveTask: boolean): TronTransactionMethods<void>;
};
declineTask: {
(taskId: string, signature: string): TronTransactionMethods<void>;
};
executeTask: {
(taskId: string, creator: string, targetNetwork: string, targets: string[], values: number[] | string[], calldatas: string[], userSeed: number, signatures: string[]): TronTransactionMethods<void>;
};
createPeggedTask: {
(targetNetwork: string, targets: string[], values: number[] | string[], calldatas: string[], userSeed: number, signers: string[], taskId: string, signature: string): TronTransactionMethods<string>;
};
}
export interface TaxedBridgeInstance extends BridgeInstance {
getTax: {
(): TronTransactionMethods<BigNumber>;
};
}