import { Accessor } from 'solid-js'; import { UseStorageOptions, SerializerAsync } from '../useStorage/index.js'; import { StorageLikeAsync } from '../ssr-handlers.js'; import { RemovableSignal } from '@solidjs-use/shared'; import '../_configurable.js'; interface UseStorageAsyncOptions extends Omit, 'serializer'> { /** * Custom data serialization */ serializer?: SerializerAsync; } declare function useStorageAsync(key: string, initialValue: Accessor, storage?: StorageLikeAsync, options?: UseStorageAsyncOptions): Accessor; declare function useStorageAsync(key: string, initialValue: string, storage?: StorageLikeAsync, options?: UseStorageAsyncOptions): RemovableSignal; declare function useStorageAsync(key: string, initialValue: Accessor, storage?: StorageLikeAsync, options?: UseStorageAsyncOptions): Accessor; declare function useStorageAsync(key: string, initialValue: boolean, storage?: StorageLikeAsync, options?: UseStorageAsyncOptions): RemovableSignal; declare function useStorageAsync(key: string, initialValue: Accessor, storage?: StorageLikeAsync, options?: UseStorageAsyncOptions): Accessor; declare function useStorageAsync(key: string, initialValue: number, storage?: StorageLikeAsync, options?: UseStorageAsyncOptions): RemovableSignal; declare function useStorageAsync(key: string, initialValue: Accessor, storage?: StorageLikeAsync, options?: UseStorageAsyncOptions): Accessor; declare function useStorageAsync(key: string, initialValue: T, storage?: StorageLikeAsync, options?: UseStorageAsyncOptions): RemovableSignal; declare function useStorageAsync(key: string, initialValue: Accessor, storage?: StorageLikeAsync, options?: UseStorageAsyncOptions): Accessor; declare function useStorageAsync(key: string, initialValue: null, storage?: StorageLikeAsync, options?: UseStorageAsyncOptions): RemovableSignal; export { UseStorageAsyncOptions, useStorageAsync };