import { BytesLike } from '@ethersproject/bytes'; import { KeyValue, StorageKv, Value } from '../node/index.js'; import { KvIterator } from './iterator.js'; export declare class KvClient { inner: StorageKv; constructor(rpc: string); newIterator(streamId: string, version?: number): KvIterator; getValue(streamId: string, key: BytesLike, version?: number): Promise; get(streamId: string, key: BytesLike, startIndex: number, length: number, version?: number): Promise; getNext(streamId: string, key: BytesLike, startIndex: number, length: number, inclusive: boolean, version?: number): Promise; /** * Like `getNext`, but always returns the *fully assembled* value: * tries a single-RPC `getNext` with `MAX_QUERY_SIZE` budget first * (covers the common case where the value fits in one chunk), and * falls back to `getValue`'s chunk-assembly loop if the value * spans multiple chunks. Callers don't need to think about * `startIndex`/`length` or partial-value reassembly. * * Returns `null` at end-of-stream (when the underlying RPC * returns null/undefined for "no key found"). */ getNextWithValue(streamId: string, key: BytesLike, inclusive: boolean, version?: number): Promise; getPrev(streamId: string, key: BytesLike, startIndex: number, length: number, inclusive: boolean, version?: number): Promise; getFirst(streamId: string, startIndex: number, length: number, version?: number): Promise; getLast(streamId: string, startIndex: number, length: number, version?: number): Promise; getTransactionResult(txSeq: number): Promise; getHoldingStreamIds(): Promise; hasWritePermission(account: string, streamId: string, key: BytesLike, version?: number): Promise; isAdmin(account: string, streamId: string, version?: number): Promise; isSpecialKey(streamId: string, key: BytesLike, version?: number): Promise; isWriterOfKey(account: string, streamId: string, key: BytesLike, version?: number): Promise; isWriterOfStream(account: string, streamId: string, version?: number): Promise; } //# sourceMappingURL=client.d.ts.map