UNPKG

@stainless-code/persist

Version:

Hydration-aware persistence for any reactive store — zero-dep persistSource core; codecs, backends, cross-tab transport, source + framework hydration adapters ship as opt-in recipes

24 lines (23 loc) • 1.01 kB
import { f as StateStorage, n as CreateStorageOptions, p as StorageCodec, u as PersistStorage } from "../persist-core-B649IGlX.mjs"; //#region src/adapters/codecs/seroval.d.ts /** Same options as `createStorage` (`clearCorruptOnFailure`). */ type SerovalStorageOptions = CreateStorageOptions; /** * Seroval codec — round-trips `Set` / `Map` / `Date`. The `toJSON` / * `fromJSON` envelope keeps the payload JSON-serializable. */ declare const serovalCodec: <S>() => StorageCodec<S>; /** * Build a seroval-encoded `PersistStorage` (round-trips `Set`/`Map`/`Date`). * * @example * ```ts * // any string-keyed Storage works: localStorage, sessionStorage, custom * const storage = createSerovalStorage<Prefs>(() => localStorage, { * clearCorruptOnFailure: true, * }); * ``` */ declare function createSerovalStorage<S>(getStorage: () => StateStorage, options?: SerovalStorageOptions): PersistStorage<S> | undefined; //#endregion export { SerovalStorageOptions, createSerovalStorage, serovalCodec };