/** * @license * Copyright 2025 Steven Roussey * SPDX-License-Identifier: Apache-2.0 */ import type { BaseTabularStorage } from "../tabular/BaseTabularStorage"; import { DefaultKeyValueKey, DefaultKeyValueSchema } from "./IKvStorage"; import { KvStorage } from "./KvStorage"; export declare abstract class KvViaTabularStorage extends KvStorage { abstract tabularRepository: BaseTabularStorage; private get needsJsonSerialization(); private _needsJsonSerialization; /** * Deserialize a stored value back to the runtime form. When the schema * isn't a primitive we round-trip through JSON; if the stored bytes * aren't valid JSON we return them as-is so callers see what's on disk * rather than an exception. */ private deserialize; /** Must be called before using any other methods. */ setupDatabase(): Promise; put(key: Key, value: Value): Promise; putBulk(items: Array<{ key: Key; value: Value; }>): Promise; get(key: Key): Promise; /** * Delegates to the underlying tabular `getBulk` so SQL-backed KV stores * (Postgres, SQLite) get push-down for free. */ getBulk(keys: readonly Key[]): Promise; delete(key: Key): Promise; getAll(): Promise; deleteAll(): Promise; size(): Promise; destroy(): void; } //# sourceMappingURL=KvViaTabularStorage.d.ts.map