import { Atom, ExtractAtomArgs, ExtractAtomResult, ExtractAtomValue, WritableAtom } from 'jotai/vanilla'; import { useAtomValue } from './useAtomValue'; type SetAtom = (...args: Args) => Result; type Options = Parameters[1]; export declare function useAtom(atom: WritableAtom, options?: Options): [ Awaited, SetAtom ]; export declare function useAtom(atom: Atom, options?: Options): [ Awaited, never ]; export declare function useAtom>(atom: AtomType, options?: Options): [ Awaited>, SetAtom, ExtractAtomResult> ]; export declare function useAtom>(atom: AtomType, options?: Options): [ Awaited>, never ]; export {}; declare type Awaited = T extends Promise ? V : T;