xitdb
Version:
An immutable database
37 lines (36 loc) • 1.41 kB
TypeScript
import { Slot } from './slot';
import { SlotPointer } from './slot-pointer';
import { Database, type PathPart } from './database';
import { ReadCursor, KeyValuePairCursor, CursorIterator } from './read-cursor';
import type { WriteableData } from './writeable-data';
export declare class WriteKeyValuePairCursor extends KeyValuePairCursor {
valueCursor: WriteCursor;
keyCursor: WriteCursor;
constructor(valueCursor: WriteCursor, keyCursor: WriteCursor, hash: Uint8Array);
}
export declare class WriteCursor extends ReadCursor {
constructor(slotPtr: SlotPointer, db: Database);
writePath(path: PathPart[]): WriteCursor;
write(data: WriteableData | null): void;
writeIfEmpty(data: WriteableData): void;
readKeyValuePair(): WriteKeyValuePairCursor;
writer(): Writer;
[Symbol.iterator](): Iterator<WriteCursor>;
iterator(): WriteCursorIterator;
}
export declare class Writer {
parent: WriteCursor;
size: number;
slot: Slot;
startPosition: number;
relativePosition: number;
formatTag: Uint8Array | null;
constructor(parent: WriteCursor, size: number, slot: Slot, startPosition: number, relativePosition: number);
write(buffer: Uint8Array): void;
finish(): void;
seek(position: number): void;
}
export declare class WriteCursorIterator extends CursorIterator {
constructor(cursor: WriteCursor);
next(): WriteCursor | null;
}