@firefly-exchange/library-sui
Version:
Sui library housing helper methods, classes to interact with Bluefin protocol(s) deployed on Sui
52 lines (51 loc) • 1.36 kB
TypeScript
import BigNumber from "bignumber.js";
import { Signer, SuiAddress, SuiClient, TransactionBlock } from "../types";
import { BaseWallet, ZkPayload } from "./IWallet";
export interface wallet {
address: string;
phrase: string;
}
export interface UserPosition {
isPosPositive: boolean;
qPos: string;
margin: string;
mro: string;
oiOpen: string;
}
export interface UserPositionExtended extends UserPosition {
perpID: string;
user: string;
}
export interface BankAccountDetails {
address: string;
balance: BigNumber;
}
export interface Operator {
address: SuiAddress;
phrase: string;
privateKey: string;
capID: SuiAddress;
}
export interface ExtendedWalletContextState extends Omit<BaseWallet, "signMessage"> {
wallet: BaseWallet;
provider: SuiClient;
signData: (data: Uint8Array) => Promise<string>;
getAddress: () => string | undefined;
signMessage: (data: Uint8Array) => Promise<{
messageBytes: string;
signature: string;
}>;
signTransactionBlock: (data: {
transactionBlock: TransactionBlock;
}) => Promise<{
transactionBlockBytes: string;
signature: string;
}>;
}
export interface ZkTransactionParams {
txBlock: TransactionBlock;
zkAddress: string;
suiClient: SuiClient;
zkPayload: ZkPayload;
caller: Signer;
}