import { AccountAssets, ScamInfo, SmartContractResult } from "./"; export interface TransactionAction { category: string; name: string; description: string; arguments: object; } export interface TransactionReceipt { value: string; sender: string; data: string; } export interface TransactionLog { address: string; addressAssets: AccountAssets | null; events: string[]; } export interface Transaction { txHash: string; gasLimit: number | null; gasPrice: number | null; gasUsed: number | null; miniBlockHash: string | null; nonce: number | null; receiver: string; receiverAssets: AccountAssets | null; receiverShard: number; round: number | null; sender: string; senderAssets: AccountAssets | null; senderShard: number; signature: string | null; status: string; value: string; fee: string | null; timestamp: number; data: string | null; function: string | null; action: TransactionAction | null; scamInfo: ScamInfo | null; type: "Transaction" | "SmartContractResult" | null; originalTxHash: string | null; pendingResults: boolean | null; } export interface TransactionListQuery { from?: number; size?: number; sender?: string; receiver?: string[] | string; token?: string; senderShard?: number; receiverShard?: number; miniBlockHash?: string; hashes?: string | string[]; status?: "success" | "pending" | "invalid" | "fail"; function?: string; condition?: string; before?: number; after?: number; order?: "asc" | "desc"; fields?: string | string[]; withScResults?: boolean; withOperations?: boolean; withLogs?: boolean; withScamInfo?: boolean; withUsername?: boolean; withBlockInfo?: boolean; } export interface TransactionCreate { chainId: string; data: string; gasLimit: number; gasPrice: number; nonce: number; receiver: string; sender: string; signature: string; value: string; version: number; options: number; guardian: string; guardianSignature: string; } export interface TransactionSendResult { receiver: string; receiverShard: number; sender: string; senderShard: number; status: string; txHash: string; } export interface TransactionsCountQuery { sender?: string; receiver?: string[] | string; token?: string; senderShard?: number; receiverShard?: number; miniBlockHash?: string; hashes?: string | string[]; status?: "success" | "pending" | "invalid" | "fail"; function?: string; condition?: string; before?: number; after?: number; } export interface TransactionDetailsQuery { fields?: string | string[]; } export interface TransactionDetailed { txHash: string; gasLimit: number | null; gasPrice: number | null; gasUsed: number | null; miniBlockHash: string | null; nonce: number | null; receiver: string; receiverAssets: AccountAssets | null; receiverShard: number; round: number | null; sender: string; senderAssets: AccountAssets | null; senderShard: number; signature: string | null; status: string; value: string; fee: string | null; timestamp: number; data: string | null; function: string | null; action: TransactionAction | null; scamInfo: ScamInfo | null; type: "Transaction" | "SmartContractResult" | null; originalTxHash: string | null; pendingResults: boolean | null; results: SmartContractResult[]; receipt: TransactionReceipt | null; price: number | null; logs: TransactionLog | null; operations: TransactionOperation[]; senderBlockHash: string | null; senderBlockNonce: number | null; receiverBlockHash: string | null; receiverBlockNonce: number | null; } export interface TransactionOperation { id: string; action: "none" | "transfer" | "transferValueOnly" | "burn" | "addQuantity" | "create" | "localMint" | "localBurn" | "wipe" | "freeze" | "writeLog" | "signalError"; type: "none" | "nft" | "esdt" | "log" | "error" | "egld"; esdtType: "FungibleESDT" | "NonFungibleESDT" | "SemiFungibleESDT" | "MetaESDT"; identifier: string; ticker: string; collection: string; name: string; value: string; valueUSD: number; sender: string; receiver: string; senderAssets: AccountAssets | null; receiverAssets: AccountAssets | null; decimals: number | null; data: string | null; message: string | null; svgUrl: string | null; } export interface TransactionDecodeDto { action: TransactionAction | null; data: string; receiver: string; sender: string; value: string; }