import { f as StateStorage } from "../persist-core-B649IGlX.mjs";

//#region src/adapters/backends/node-fs.d.ts
interface NodeFsStorageOptions {
  /** Directory holding one file per persisted key (created lazily on first write). */
  dir: string;
}
/**
 * Node `fs` storage backend — one file per key under `dir` (async `fs.promises`).
 * Keys are sanitized to filename-safe segments (`app:prefs:v1` → `app_prefs_v1`).
 * Compose with `createStorage(() => nodeFsStateStorage({ dir }), codec)`.
 *
 * @example
 * ```ts
 * import { createStorage } from "@stainless-code/persist";
 * import { serovalCodec } from "@stainless-code/persist/codecs/seroval";
 * import { nodeFsStateStorage } from "@stainless-code/persist/backends/node-fs";
 *
 * const storage = createStorage<Prefs>(() => nodeFsStateStorage({ dir: "./.persist" }), serovalCodec());
 * ```
 */
declare function nodeFsStateStorage(options: NodeFsStorageOptions): StateStorage<string>;
//#endregion
export { NodeFsStorageOptions, nodeFsStateStorage };