import { Adapter, Low } from 'lowdb'; import { Address, Output, Pointer, Tx } from '@aldea/sdk'; import { Abi } from "@aldea/core/abi"; import { OwnedAddress, OwnedOutput, WalletStorage } from "./wallet-storage.js"; type OutputItem = { origin: string; id: string; outputHex: string; path: string; }; type AddressItem = { addrStr: string; hash: string; path: string; }; type AbiItem = { abiStr: string; pkgId: string; }; type TxItem = { id: string; txHex: string; }; export interface LowDbData { utxos: OutputItem[]; addresses: AddressItem[]; abis: AbiItem[]; currentIndex: number; latestUsedIndex: number; txs: TxItem[]; } export declare class LowDbStorage implements WalletStorage { db: Low; constructor(adapter: Adapter, LowConstructor?: typeof Low); private data; allUtxos(): Promise>; saveUtxo(output: Output, path: string): Promise; saveAddress(address: Address, path: string): Promise; changeCurrentIndex(f: (newIndex: number) => number): Promise; changeLastUsedIndex(f: (newIndex: number) => number): Promise; currentIndex(): Promise; latestUsedIndex(): Promise; utxoById(outputId: string): Promise; utxoByOrigin(origin: Pointer): Promise; saveTx(tx: Tx): Promise; removeUtxoByOrigin(origin: Pointer): Promise; removeUtxoByOutputId(id: string): Promise; addressByPubKeyHash(pubKeHashStr: string): Promise; addAbi(pkgId: string, abi: Abi): Promise; abiByPkgId(pkgId: string): Promise; } export {}; //# sourceMappingURL=lowdb-storage.d.ts.map