UNPKG

12 kBTypeScriptView Raw
1import type { Context } from 'react';
2import type { Atom, Scope } from './atom';
3import type { Store } from './store';
4declare type VersionedWrite = (write: (version?: object) => void) => void;
5export declare type ScopeContainer = {
6 s: Store;
7 w?: VersionedWrite;
8};
9export declare const createScopeContainer: (initialValues?: Iterable<readonly [Atom<unknown>, unknown]> | undefined, unstable_createStore?: ((initialValues?: Iterable<readonly [{
10 toString: () => string;
11 debugLabel?: string;
12 read: (get: {
13 <Value>(atom: Atom<Value | Promise<Value>>): Value;
14 <Value_1>(atom: Atom<Promise<Value_1>>): Value_1;
15 <Value_2>(atom: Atom<Value_2>): Value_2 extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? any : V : V : V : V : V : V : V : V : V : V : Value_2;
16 }) => unknown;
17}, unknown]> | undefined) => {
18 get: <Value_3>(atom: Atom<Value_3>) => (Value_3 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? any : V_1 : V_1 : V_1 : V_1 : V_1 : V_1 : V_1 : V_1 : V_1 : V_1 : Value_3) | undefined;
19 asyncGet: <Value_4>(atom: Atom<Value_4>) => Promise<Value_4 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? V_1 extends Promise<infer V_1> ? any : V_1 : V_1 : V_1 : V_1 : V_1 : V_1 : V_1 : V_1 : V_1 : V_1 : Value_4>;
20 set: <Value_5, Update, Result extends void | Promise<void>>(atom: import("./atom").WritableAtom<Value_5, Update, Result>, update: Update) => Result;
21 sub: (atom: {
22 toString: () => string;
23 debugLabel?: string;
24 read: (get: {
25 <Value>(atom: Atom<Value | Promise<Value>>): Value;
26 <Value_1>(atom: Atom<Promise<Value_1>>): Value_1;
27 <Value_2>(atom: Atom<Value_2>): Value_2 extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? any : V : V : V : V : V : V : V : V : V : V : Value_2;
28 }) => unknown;
29 }, callback: () => void) => () => void;
30 SECRET_INTERNAL_store: {
31 r: <Value_6>(readingAtom: Atom<Value_6>, version?: import("./store").VersionObject | undefined) => import("./store").AtomState<Value_6>;
32 w: <Value_7, Update_1, Result_1 extends void | Promise<void>>(writingAtom: import("./atom").WritableAtom<Value_7, Update_1, Result_1>, update: Update_1, version?: import("./store").VersionObject | undefined) => Result_1;
33 c: (_atom: {
34 toString: () => string;
35 debugLabel?: string;
36 read: (get: {
37 <Value>(atom: Atom<Value | Promise<Value>>): Value;
38 <Value_1>(atom: Atom<Promise<Value_1>>): Value_1;
39 <Value_2>(atom: Atom<Value_2>): Value_2 extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? any : V : V : V : V : V : V : V : V : V : V : Value_2;
40 }) => unknown;
41 } | null, version?: import("./store").VersionObject | undefined) => void;
42 s: (atom: {
43 toString: () => string;
44 debugLabel?: string;
45 read: (get: {
46 <Value>(atom: Atom<Value | Promise<Value>>): Value;
47 <Value_1>(atom: Atom<Promise<Value_1>>): Value_1;
48 <Value_2>(atom: Atom<Value_2>): Value_2 extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? any : V : V : V : V : V : V : V : V : V : V : Value_2;
49 }) => unknown;
50 }, callback: (version?: import("./store").VersionObject | undefined) => void) => () => void;
51 h: (values: Iterable<readonly [{
52 toString: () => string;
53 debugLabel?: string;
54 read: (get: {
55 <Value>(atom: Atom<Value | Promise<Value>>): Value;
56 <Value_1>(atom: Atom<Promise<Value_1>>): Value_1;
57 <Value_2>(atom: Atom<Value_2>): Value_2 extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? any : V : V : V : V : V : V : V : V : V : V : Value_2;
58 }) => unknown;
59 }, unknown]>, version?: import("./store").VersionObject | undefined) => void;
60 n: (l: () => void) => () => void;
61 l: () => IterableIterator<{
62 toString: () => string;
63 debugLabel?: string;
64 read: (get: {
65 <Value>(atom: Atom<Value | Promise<Value>>): Value;
66 <Value_1>(atom: Atom<Promise<Value_1>>): Value_1;
67 <Value_2>(atom: Atom<Value_2>): Value_2 extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? any : V : V : V : V : V : V : V : V : V : V : Value_2;
68 }) => unknown;
69 }>;
70 a: (a: {
71 toString: () => string;
72 debugLabel?: string;
73 read: (get: {
74 <Value>(atom: Atom<Value | Promise<Value>>): Value;
75 <Value_1>(atom: Atom<Promise<Value_1>>): Value_1;
76 <Value_2>(atom: Atom<Value_2>): Value_2 extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? any : V : V : V : V : V : V : V : V : V : V : Value_2;
77 }) => unknown;
78 }) => import("./store").AtomState<unknown> | undefined;
79 m: (a: {
80 toString: () => string;
81 debugLabel?: string;
82 read: (get: {
83 <Value>(atom: Atom<Value | Promise<Value>>): Value;
84 <Value_1>(atom: Atom<Promise<Value_1>>): Value_1;
85 <Value_2>(atom: Atom<Value_2>): Value_2 extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? any : V : V : V : V : V : V : V : V : V : V : Value_2;
86 }) => unknown;
87 }) => {
88 l: Set<(version?: import("./store").VersionObject | undefined) => void>;
89 t: Set<{
90 toString: () => string;
91 debugLabel?: string;
92 read: (get: {
93 <Value>(atom: Atom<Value | Promise<Value>>): Value;
94 <Value_1>(atom: Atom<Promise<Value_1>>): Value_1;
95 <Value_2>(atom: Atom<Value_2>): Value_2 extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? any : V : V : V : V : V : V : V : V : V : V : Value_2;
96 }) => unknown;
97 }>;
98 u?: () => void;
99 } | undefined;
100 } | {
101 r: <Value_6>(readingAtom: Atom<Value_6>, version?: import("./store").VersionObject | undefined) => import("./store").AtomState<Value_6>;
102 w: <Value_7, Update_1, Result_1 extends void | Promise<void>>(writingAtom: import("./atom").WritableAtom<Value_7, Update_1, Result_1>, update: Update_1, version?: import("./store").VersionObject | undefined) => Result_1;
103 c: (_atom: {
104 toString: () => string;
105 debugLabel?: string;
106 read: (get: {
107 <Value>(atom: Atom<Value | Promise<Value>>): Value;
108 <Value_1>(atom: Atom<Promise<Value_1>>): Value_1;
109 <Value_2>(atom: Atom<Value_2>): Value_2 extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? any : V : V : V : V : V : V : V : V : V : V : Value_2;
110 }) => unknown;
111 } | null, version?: import("./store").VersionObject | undefined) => void;
112 s: (atom: {
113 toString: () => string;
114 debugLabel?: string;
115 read: (get: {
116 <Value>(atom: Atom<Value | Promise<Value>>): Value;
117 <Value_1>(atom: Atom<Promise<Value_1>>): Value_1;
118 <Value_2>(atom: Atom<Value_2>): Value_2 extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? any : V : V : V : V : V : V : V : V : V : V : Value_2;
119 }) => unknown;
120 }, callback: (version?: import("./store").VersionObject | undefined) => void) => () => void;
121 h: (values: Iterable<readonly [{
122 toString: () => string;
123 debugLabel?: string;
124 read: (get: {
125 <Value>(atom: Atom<Value | Promise<Value>>): Value;
126 <Value_1>(atom: Atom<Promise<Value_1>>): Value_1;
127 <Value_2>(atom: Atom<Value_2>): Value_2 extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? V extends Promise<infer V> ? any : V : V : V : V : V : V : V : V : V : V : Value_2;
128 }) => unknown;
129 }, unknown]>, version?: import("./store").VersionObject | undefined) => void;
130 n?: never;
131 l?: never;
132 a?: never;
133 m?: never;
134 };
135}) | undefined) => ScopeContainer;
136declare type ScopeContext = Context<ScopeContainer>;
137export declare const getScopeContext: (scope?: Scope | undefined) => ScopeContext;
138export {};