import { either, io, ioOption, option } from 'fp-ts'; import type { IO } from 'fp-ts/IO'; import type { Refinement } from 'fp-ts/Refinement'; import * as t from 'io-ts'; import type { DocKey, Stack } from '../type'; import type { Env, MockableWindow } from './type'; export declare const setItem: (getWindow: IO, key: string, value: string) => io.IO; export declare const removeItem: (getWindow: IO, key: string) => io.IO; export declare const getItem: (getWindow: IO, key: string) => io.IO>; export declare const getObjectItem: (getWindow: IO, key: string, refinement: Refinement, onFalse: (data: unknown) => K) => io.IO>>; export declare const setObjectItem: (getWindow: IO, key: string, data: T) => io.IO; export declare const DB: t.RecordC>; export type DB = t.TypeOf; export declare const dbLocalStorageKey = "db"; export declare const getDb: (getWindow: IO) => io.IO>>; export declare const stringifyDocKey: (key: DocKey) => string; export declare const validateGetDoc: (param: { readonly env: Env; readonly key: Pick; }) => io.IO>>>; export declare const notifySubscriberWithOnChanged: (param: { readonly env: Env; readonly key: Pick; readonly onChanged: Stack.client.db.OnSnapshot.OnChangedCallback; readonly docState: Stack.client.db.OnSnapshot.DocState; }) => io.IO; export declare const notifySubscriber: (param: { readonly env: Env; readonly key: DocKey; readonly docState: Stack.client.db.OnSnapshot.DocState; }) => ioOption.IOOption; //# sourceMappingURL=util.d.ts.map