import type { TransactionResult } from 'mvcc-api'; import type { BPTreeCondition, BPTreeConstructorOption, BPTreeNode, BPTreeNodeKey, BPTreePair, BPTreeUnknownNode, SerializableData, SerializeStrategyHead, SyncBPTreeMVCC, BPTreeSearchOption, BPTreeLeafNode } from '../types'; import { getPairsGenerator } from '../base/BPTreeAlgorithmSync'; import { BPTreeTransaction } from '../base/BPTreeTransaction'; import { SerializeStrategySync } from '../SerializeStrategySync'; import { ValueComparator } from '../base/ValueComparator'; export declare class BPTreeSyncTransaction extends BPTreeTransaction { protected readonly rootTx: BPTreeSyncTransaction; protected readonly mvccRoot: SyncBPTreeMVCC; protected readonly mvcc: SyncBPTreeMVCC; protected readonly strategy: SerializeStrategySync; protected readonly comparator: ValueComparator; protected readonly option: BPTreeConstructorOption; private _ops; private _ctx; private _verifierMapCached; private _searchConfigsCached; constructor(rootTx: BPTreeSyncTransaction, mvccRoot: SyncBPTreeMVCC, mvcc: SyncBPTreeMVCC, strategy: SerializeStrategySync, comparator: ValueComparator, option?: BPTreeConstructorOption); private _initAlgoContext; getRootNode(): BPTreeUnknownNode; protected getNode(id: string): BPTreeUnknownNode; protected _createNode(leaf: boolean, keys: string[] | K[][], values: V[], parent?: string | null, next?: string | null, prev?: string | null): BPTreeUnknownNode; protected _updateNode(node: BPTreeUnknownNode): void; protected _deleteNode(node: BPTreeUnknownNode): void; protected _readHead(): SerializeStrategyHead | null; protected _writeHead(head: SerializeStrategyHead): void; protected _insertAtLeaf(node: BPTreeUnknownNode, key: BPTreeNodeKey, value: V): BPTreeUnknownNode; protected _insertInParent(node: BPTreeUnknownNode, value: V, newSiblingNode: BPTreeUnknownNode): void; protected locateLeaf(value: V): BPTreeLeafNode; protected findLowerBoundLeaf(value: V): BPTreeLeafNode; protected findUpperBoundLeaf(value: V): BPTreeLeafNode; protected findOuterBoundaryLeaf(value: V, direction: 1 | -1): BPTreeLeafNode | null; protected leftestNode(): BPTreeLeafNode; protected rightestNode(): BPTreeLeafNode; protected getPairsGenerator(startNode: Parameters>[1], endNode: Parameters>[2], direction: 1 | -1): Generator<[BPTreeNodeKey, V], void, unknown>; init(): void; protected _initInternal(): void; reload(): void; protected _reloadInternal(): void; exists(key: K, value: V): boolean; get(key: K): V | undefined; keysStream(condition: BPTreeCondition, options?: BPTreeSearchOption): Generator; whereStream(condition: BPTreeCondition, options?: BPTreeSearchOption): Generator<[K, V]>; keys(condition: BPTreeCondition, options?: BPTreeSearchOption): Set; where(condition: BPTreeCondition, options?: BPTreeSearchOption): BPTreePair; insert(key: K, value: V): void; batchInsert(entries: [K, V][]): void; bulkLoad(entries: [K, V][]): void; protected _deleteEntry(node: BPTreeUnknownNode, key: BPTreeNodeKey): BPTreeUnknownNode; delete(key: K, value?: V): void; batchDelete(entries: [K, V?][]): void; getHeadData(): SerializableData; setHeadData(data: SerializableData): void; commit(label?: string): TransactionResult>; rollback(): TransactionResult>; }