import { A as ReactiveOptions, M as StateMode, O as Missing, c as UnwrapOption, i as InferInputWritable, l as WithParser, r as InferInputValue, s as ParserInput } from "../types-DinLZp4i.mjs"; import { a as StorageInstance, c as Unsubscribe, i as StorageConfig, l as createStorage, n as KeyListener, o as StorageListener, r as StorageAdapter, s as StorageOptions, t as ErrorHandler } from "../create-storage-DESmB4bY.mjs"; import { Ref } from "vue"; //#region src/storage/define-storage-state.d.ts type StorageSource = StorageInstance | 'local' | 'session'; interface StorageStateOptions { key: string; storage?: StorageSource; parser?: ParserInput; missing?: unknown; clearOnDefault?: boolean; mode?: StateMode; } interface StorageState { readonly key: string; readonly storage: StorageInstance; get: () => T; set: (value: W) => void; remove: () => void; subscribe: (listener: () => void) => Unsubscribe; } export declare function defineStorageState

(options: WithParser): StorageState, InferInputWritable>; //#endregion //#region src/storage/presets.d.ts export declare function createMemoryStorage(config?: StorageConfig): StorageInstance; export declare function createLocalStorage(config?: StorageConfig): StorageInstance; export declare function createSessionStorage(config?: StorageConfig): StorageInstance; //#endregion //#region src/storage/use-storage.d.ts type UseStorageOptions

= ReactiveOptions, 'missing'>; type UseLocalStorageOptions

= ReactiveOptions, P, M>, 'missing'>; type UseSessionStorageOptions

= UseLocalStorageOptions; type NotStorageState = { get?: never; }; export declare function useStorage

(options: UseStorageOptions & NotStorageState): Ref>, InferInputWritable>>; export declare function useStorage(state: StorageState): Ref; export declare function useLocalStorage

(options: UseLocalStorageOptions): Ref>, InferInputWritable>>; export declare function useSessionStorage

(options: UseSessionStorageOptions): Ref>, InferInputWritable>>; //#endregion export { type ErrorHandler, type KeyListener, type StateMode, type StorageAdapter, type StorageConfig, type StorageInstance, type StorageListener, type StorageOptions, type StorageSource, type StorageState, type StorageStateOptions, type Unsubscribe, type UseLocalStorageOptions, type UseSessionStorageOptions, type UseStorageOptions, createStorage };