1 | import React from 'react';
|
2 | import { Atom, WritableAtom, AnyAtom } from './types';
|
3 | export declare type AtomState<Value = unknown> = {
|
4 | error?: Error;
|
5 | promise?: Promise<void>;
|
6 | value: Value;
|
7 | };
|
8 | declare type State = Map<AnyAtom, AtomState>;
|
9 | export declare type PartialState = State;
|
10 | export declare type Actions = {
|
11 | add: <Value>(id: symbol, atom: Atom<Value>, partialState?: PartialState) => void;
|
12 | del: (id: symbol) => void;
|
13 | read: <Value>(state: State, atom: Atom<Value>) => readonly [AtomState, PartialState];
|
14 | write: <Value, Update>(atom: WritableAtom<Value, Update>, update: Update) => void;
|
15 | };
|
16 | export declare const ActionsContext: React.Context<Actions>;
|
17 | export declare const StateContext: React.Context<State>;
|
18 | export declare const Provider: React.FC;
|
19 | export {};
|