import { PublicKey, Script, Transaction } from 'libnexa-ts'; import { KeyManager } from './key'; import { RostrumService } from './rostrum'; import { TransactionDTO } from '../types/db.types'; import { WalletDB } from '../persistence/wallet-db'; import { ITXHistory } from '../types/rostrum.types'; import { AddressKey } from '../types/wallet.types'; export interface TxTemplateData { templateScript: Script; constraintScript: Script; visibleArgs: any[]; publicKey: PublicKey; } export interface TxOptions { isConsolidate?: boolean; templateData?: TxTemplateData; feeFromAmount?: boolean; } export declare class TransactionService { private readonly rostrumService; private readonly keyManager; private readonly walletDb; private readonly MAX_INPUTS_OUTPUTS; constructor(rostrumService: RostrumService, keysManager: KeyManager, walletDb: WalletDB); broadcastTransaction(txHex: string): Promise; fetchTransactionsHistory(address: string, fromHeight: number): Promise<{ txs: ITXHistory[]; lastHeight: number; }>; fetchVaultTransactions(address: string): Promise; classifyAndSaveTransaction(accountId: number, txHash: string, myAddresses: string[]): Promise; private classifyTransaction; buildAndSignTransferTransaction(from: AddressKey[], toAddr: string, toChange: string, amount: string, feeFromAmount?: boolean, token?: string, feePerByte?: number, data?: string): Promise; buildAndSignConsolidateTransaction(from: AddressKey[], toChange: string, templateData?: TxTemplateData): Promise; private prepareTransaction; private populateNexaInputsAndChange; private populateTokenInputsAndChange; private finalizeTransaction; printTransactionJson(tx?: Transaction | null): string; } //# sourceMappingURL=transaction.d.ts.map