import type { AccountType } from "../utils/enums"; import type { Balance, AssetType } from "./wallet.types"; export interface AssetMovement { address: string; nexaAmount: string; assetId: string; assetAmount: string; } export type TransactionType = 'receive' | 'send' | 'swap' | 'self'; export interface TransactionDTO { accountId: number; txIdem: string; txId: string; time: number; height: number; type: TransactionType; fee: string; othersOutputs: AssetMovement[]; myOutputs: AssetMovement[]; myInputs: AssetMovement[]; } export interface TransactionEntity { accountId: number; txIdem: string; txId: string; time: number; height: number; type: TransactionType; fee: string; othersOutputs: string; myOutputs: string; myInputs: string; } export interface AssetTransactionEntity { accountId: number; assetId: string; txIdem: string; time: number; } export interface AssetEntity { accountId: number; tokenIdHex: string; type: AssetType; addedTime: number; } export interface TokenEntity { token: string; tokenIdHex: string; name: string; ticker: string; iconUrl: string; decimals: number; parent: string; } export interface NftEntity { token: string; tokenIdHex: string; name: string; parent: string; collection: string; series: string; author: string; public: string; front: string; back: string; } export interface SessionEntity { sessionId: string; accountId: number; uri: string; } export interface AccountDTO { id: number; name: string; address: string; height: number; hidden: number; statusHash: string; balance: Balance; tokensBalance: Record; type: AccountType; } export interface AccountEntity { id: number; name: string; address: string; height: number; hidden: number; statusHash: string; balance: string; tokensBalance: string; } export interface AddressDTO { address: string; space: number; idx: number; used: boolean; height: number; statusHash: string; balance: Balance; tokensBalance: Record; type: AccountType; } export interface AddressEntity { address: string; space: number; idx: number; used: boolean; height: number; statusHash: string; balance: string; tokensBalance: string; } export interface VaultDTO { address: string; idx: number; block: number; height: number; statusHash: string; balance: Balance; tokensBalance: Record; type: AccountType; } export interface VaultEntity { address: string; idx: number; block: number; height: number; statusHash: string; balance: string; tokensBalance: string; }