/// import { FileSystem } from '../../fileSystems'; import { BlockHeader } from '../../primitives'; import { BlockHash } from '../../primitives/blockheader'; import { TransactionHash } from '../../primitives/transaction'; import { IDatabase, IDatabaseStore, IDatabaseTransaction } from '../../storage'; import { AssetSchema, HashToNextSchema, HeadersSchema, MetaSchema, SequenceToHashesSchema, SequenceToHashSchema, TransactionHashToBlockHashSchema, TransactionsSchema } from '../schema'; import { AssetValue } from './assetValue'; import { HeaderValue } from './headers'; import { TransactionsValue } from './transactions'; export declare const VERSION_DATABASE_CHAIN = 28; export declare class BlockchainDB { db: IDatabase; location: string; files: FileSystem; headers: IDatabaseStore; meta: IDatabaseStore; transactions: IDatabaseStore; sequenceToHashes: IDatabaseStore; sequenceToHash: IDatabaseStore; hashToNextHash: IDatabaseStore; assets: IDatabaseStore; transactionHashToBlockHash: IDatabaseStore; constructor(options: { location: string; files: FileSystem; }); open(): Promise; close(): Promise; getBlockHeader(blockHash: Buffer, tx?: IDatabaseTransaction): Promise; deleteHeader(hash: Buffer, tx?: IDatabaseTransaction): Promise; putBlockHeader(hash: Buffer, header: HeaderValue, tx?: IDatabaseTransaction): Promise; getMetaHash(key: 'head' | 'latest', tx?: IDatabaseTransaction): Promise; putMetaHash(key: 'head' | 'latest', value: Buffer, tx?: IDatabaseTransaction): Promise; getTransactions(blockHash: Buffer, tx?: IDatabaseTransaction): Promise; addTransaction(hash: Buffer, value: TransactionsValue, tx?: IDatabaseTransaction): Promise; putTransaction(hash: Buffer, value: TransactionsValue, tx?: IDatabaseTransaction): Promise; deleteTransaction(hash: Buffer, tx?: IDatabaseTransaction): Promise; getBlockHashesAtSequence(sequence: number, tx?: IDatabaseTransaction): Promise; getBlockHeadersAtSequence(sequence: number, tx?: IDatabaseTransaction): Promise; addHashAtSequence(sequence: number, hash: Buffer, tx?: IDatabaseTransaction): Promise; removeHashAtSequence(sequence: number, hash: Buffer, tx?: IDatabaseTransaction): Promise; getBlockHashAtSequence(sequence: number, tx?: IDatabaseTransaction): Promise; getBlockHeaderAtSequence(sequence: number): Promise; putSequenceToHash(sequence: number, hash: Buffer, tx?: IDatabaseTransaction): Promise; deleteSequenceToHash(sequence: number, tx?: IDatabaseTransaction): Promise; clearSequenceToHash(tx?: IDatabaseTransaction): Promise; getNextHash(hash: BlockHash, tx?: IDatabaseTransaction): Promise; putNextHash(hash: Buffer, nextHash: Buffer, tx?: IDatabaseTransaction): Promise; deleteNextHash(hash: Buffer, tx?: IDatabaseTransaction): Promise; clearHashToNextHash(tx?: IDatabaseTransaction): Promise; getAsset(assetId: Buffer, tx?: IDatabaseTransaction): Promise; putAsset(assetId: Buffer, assetValue: AssetValue, tx?: IDatabaseTransaction): Promise; deleteAsset(assetId: Buffer, tx?: IDatabaseTransaction): Promise; getBlockHashByTransactionHash(transactionHash: TransactionHash, tx?: IDatabaseTransaction): Promise; transactionHashHasBlock(transactionHash: TransactionHash, tx?: IDatabaseTransaction): Promise; putTransactionHashToBlockHash(transactionHash: Buffer, blockHash: Buffer, tx?: IDatabaseTransaction): Promise; deleteTransactionHashToBlockHash(transactionHash: Buffer, tx?: IDatabaseTransaction): Promise; compact(): Promise; getVersion(): Promise; transaction(): IDatabaseTransaction; size(): Promise; } //# sourceMappingURL=blockchaindb.d.ts.map