@valentin30/signal 0.0.8 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +111 -118
- package/dist/index.d.ts +111 -118
- package/dist/index.js +208 -187
- package/dist/index.mjs +208 -187
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -1,41 +1,45 @@
|
|
|
1
|
-
type
|
|
1
|
+
type Callable = (...args: any[]) => any;
|
|
2
2
|
|
|
3
3
|
type Maybe<T> = T | null | undefined;
|
|
4
4
|
|
|
5
|
-
type Factory<Fn extends
|
|
5
|
+
type Factory<Fn extends Callable> = Fn & {
|
|
6
6
|
factory(factory: Maybe<Fn>): void;
|
|
7
7
|
default(factory: Maybe<Fn>): void;
|
|
8
8
|
configured(): boolean;
|
|
9
9
|
};
|
|
10
|
-
declare function factory<Fn extends
|
|
10
|
+
declare function factory<Fn extends Callable>(name: string): Factory<Fn>;
|
|
11
11
|
|
|
12
12
|
type Callback = () => void;
|
|
13
13
|
|
|
14
|
-
interface Collector
|
|
14
|
+
interface Collector<T> {
|
|
15
15
|
add(value: T): void;
|
|
16
16
|
collecting(): boolean;
|
|
17
17
|
collect(callback: Callback): Readonly<Set<T>>;
|
|
18
18
|
ignore(callback: Callback): void;
|
|
19
19
|
}
|
|
20
|
-
type CollectorFactory = <T>() => Collector
|
|
21
|
-
declare const collector
|
|
20
|
+
type CollectorFactory = <T>() => Collector<T>;
|
|
21
|
+
declare const collector: Factory<CollectorFactory>;
|
|
22
22
|
|
|
23
|
-
declare function
|
|
24
|
-
declare function
|
|
25
|
-
declare function
|
|
26
|
-
declare namespace
|
|
27
|
-
|
|
23
|
+
declare function internal_batch(callback: Callback): void;
|
|
24
|
+
declare function internal_batch(callback: Callback, collector: Collector<Callback>): void;
|
|
25
|
+
declare function internal_batch(callback: Callback, collector?: Collector<Callback>): void;
|
|
26
|
+
declare namespace internal_batch {
|
|
27
|
+
const collector: Factory<collector.Factory>;
|
|
28
|
+
namespace collector {
|
|
29
|
+
type Factory = () => Collector<Callback>;
|
|
30
|
+
}
|
|
28
31
|
}
|
|
29
|
-
type BatchCollectorFactory = () => Collector$1<Callback>;
|
|
30
32
|
|
|
31
|
-
declare function
|
|
32
|
-
declare
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
33
|
+
declare function internal_collector<T>(): Collector<T>;
|
|
34
|
+
declare namespace internal_collector {
|
|
35
|
+
class Constructor<T> implements Collector<T> {
|
|
36
|
+
#private;
|
|
37
|
+
constructor(values: Set<T> | null);
|
|
38
|
+
collecting(): boolean;
|
|
39
|
+
add(value: T): void;
|
|
40
|
+
collect(callback: Callback): Set<T>;
|
|
41
|
+
ignore(callback: Callback): void;
|
|
42
|
+
}
|
|
39
43
|
}
|
|
40
44
|
|
|
41
45
|
interface Comparable<T> {
|
|
@@ -61,120 +65,109 @@ interface Peekable<T> {
|
|
|
61
65
|
peek(): T;
|
|
62
66
|
}
|
|
63
67
|
|
|
64
|
-
interface Signal
|
|
68
|
+
interface Signal<T> extends Readable<T>, Writable<T>, Peekable<T>, Comparable<T>, Subscribable {
|
|
65
69
|
}
|
|
66
70
|
interface ReadonlySignal<T> extends Readable<T>, Peekable<T>, Comparable<T>, Subscribable {
|
|
67
71
|
}
|
|
68
|
-
type SignalFactory = <T>(value: T, equals?: Equals<T>) => Signal
|
|
69
|
-
declare const signal
|
|
70
|
-
|
|
71
|
-
declare function
|
|
72
|
-
declare namespace
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
type
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
declare function
|
|
89
|
-
declare namespace
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
72
|
+
type SignalFactory = <T>(value: T, equals?: Equals<T>) => Signal<T>;
|
|
73
|
+
declare const signal: Factory<SignalFactory>;
|
|
74
|
+
|
|
75
|
+
declare function internal_computed<T>(compute: () => T, equals?: Equals<T>): internal_computed.Constructor<T>;
|
|
76
|
+
declare namespace internal_computed {
|
|
77
|
+
const collector: Factory<collector.Factory>;
|
|
78
|
+
namespace collector {
|
|
79
|
+
type Factory = () => Collector<ReadonlySignal<unknown>>;
|
|
80
|
+
}
|
|
81
|
+
class Constructor<T> implements ReadonlySignal<T> {
|
|
82
|
+
#private;
|
|
83
|
+
constructor(empty: boolean, value: T | undefined, values: [ReadonlySignal<unknown>, unknown][], dependencies: Set<ReadonlySignal<unknown>>, listeners: Set<Callback>, collector: Collector<ReadonlySignal<unknown>>, compute: () => T, equals: Maybe<Equals<T>>);
|
|
84
|
+
read(): T;
|
|
85
|
+
peek(): T;
|
|
86
|
+
equals(other: T): boolean;
|
|
87
|
+
subscribe(callback: Callback): Callback;
|
|
88
|
+
unsubscribe(callback: Callback): void;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
declare function internal_composed<T>(compute: () => T, write: (value: T) => void, equals?: Equals<T>): internal_composed.Constructor<T>;
|
|
93
|
+
declare namespace internal_composed {
|
|
94
|
+
const batcher: Factory<batcher.Factory>;
|
|
95
|
+
namespace batcher {
|
|
96
|
+
type Factory = () => Collector<Callback>;
|
|
97
|
+
}
|
|
98
|
+
const collector: Factory<collector.Factory>;
|
|
99
|
+
namespace collector {
|
|
100
|
+
type Factory = () => Collector<ReadonlySignal<unknown>>;
|
|
101
|
+
}
|
|
102
|
+
class Constructor<T> extends internal_computed.Constructor<T> implements Signal<T> {
|
|
103
|
+
#private;
|
|
104
|
+
constructor(empty: boolean, value: T | undefined, values: [ReadonlySignal<unknown>, unknown][], dependencies: Set<ReadonlySignal<unknown>>, listeners: Set<Callback>, batcher: Collector<Callback>, collector: Collector<ReadonlySignal<unknown>>, compute: () => T, write: (value: T) => void, equals: Maybe<Equals<T>>);
|
|
105
|
+
write(value: T): void;
|
|
106
|
+
}
|
|
97
107
|
}
|
|
98
108
|
|
|
99
109
|
type Effect = (callback: EffectCallback) => Callback;
|
|
100
110
|
type EffectCallback = (init: boolean) => EffectCleanup | void;
|
|
101
111
|
type EffectCleanup = (destroy: boolean) => void;
|
|
102
|
-
declare const effect
|
|
103
|
-
|
|
104
|
-
declare function
|
|
105
|
-
declare namespace
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
type
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
declare
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
112
|
+
declare const effect: Factory<Effect>;
|
|
113
|
+
|
|
114
|
+
declare function internal_effect(cb: EffectCallback): Callback;
|
|
115
|
+
declare namespace internal_effect {
|
|
116
|
+
const collector: Factory<collector.Factory>;
|
|
117
|
+
namespace collector {
|
|
118
|
+
type Factory = () => Collector<ReadonlySignal<unknown>>;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
declare function internal_ignore<Value>(value: ReadonlySignal<Value>): Value;
|
|
123
|
+
declare function internal_ignore<Value>(callback: () => Value): Value;
|
|
124
|
+
declare function internal_ignore<Value, Args extends any[]>(callback: (...args: Args) => Value, ...args: Args): Value;
|
|
125
|
+
declare namespace internal_ignore {
|
|
126
|
+
const collector: Factory<collector.Factory>;
|
|
127
|
+
namespace collector {
|
|
128
|
+
type Factory = () => Collector<ReadonlySignal<unknown>>;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
declare namespace internal_shared {
|
|
133
|
+
function batcher(): Collector<Callback>;
|
|
134
|
+
function collector(): Collector<ReadonlySignal<unknown>>;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
declare function internal_signal<T>(value: T, equals?: Equals<T>): Signal<T>;
|
|
138
|
+
declare namespace internal_signal {
|
|
139
|
+
const batcher: Factory<batcher.Factory>;
|
|
140
|
+
namespace batcher {
|
|
141
|
+
type Factory = () => Collector<Callback>;
|
|
142
|
+
}
|
|
143
|
+
const collector: Factory<collector.Factory>;
|
|
144
|
+
namespace collector {
|
|
145
|
+
type Factory = () => Collector<ReadonlySignal<unknown>>;
|
|
146
|
+
}
|
|
147
|
+
class Constructor<T> implements Signal<T> {
|
|
148
|
+
#private;
|
|
149
|
+
constructor(value: T, equals: Maybe<Equals<T>>, listeners: Set<Callback>, batcher: Collector<Callback>, collector: Collector<ReadonlySignal<unknown>>);
|
|
150
|
+
read(): T;
|
|
151
|
+
peek(): T;
|
|
152
|
+
write(value: T): void;
|
|
153
|
+
equals(other: T): boolean;
|
|
154
|
+
subscribe(callback: Callback): Callback;
|
|
155
|
+
unsubscribe(callback: Callback): void;
|
|
156
|
+
}
|
|
144
157
|
}
|
|
145
158
|
|
|
146
|
-
type index_BatchCollectorFactory = BatchCollectorFactory;
|
|
147
|
-
type index_Collector<T> = Collector<T>;
|
|
148
|
-
declare const index_Collector: typeof Collector;
|
|
149
|
-
type index_Composed<T> = Composed<T>;
|
|
150
|
-
declare const index_Composed: typeof Composed;
|
|
151
|
-
type index_ComposedBatcherFactory = ComposedBatcherFactory;
|
|
152
|
-
type index_ComposedCollectorFactory = ComposedCollectorFactory;
|
|
153
|
-
type index_Computed<T> = Computed<T>;
|
|
154
|
-
declare const index_Computed: typeof Computed;
|
|
155
|
-
type index_ComputedCollectorFactory = ComputedCollectorFactory;
|
|
156
|
-
type index_EffectCollectorFactory = EffectCollectorFactory;
|
|
157
|
-
type index_IgnoreCollectorFactory = IgnoreCollectorFactory;
|
|
158
|
-
type index_Signal<T> = Signal<T>;
|
|
159
|
-
declare const index_Signal: typeof Signal;
|
|
160
|
-
type index_SignalBatcherFactory = SignalBatcherFactory;
|
|
161
|
-
type index_SignalCollectorFactory = SignalCollectorFactory;
|
|
162
|
-
declare const index_collector: typeof collector;
|
|
163
|
-
declare const index_effect: typeof effect;
|
|
164
|
-
declare const index_shared: typeof shared;
|
|
165
|
-
declare const index_signal: typeof signal;
|
|
166
159
|
declare namespace index {
|
|
167
|
-
export {
|
|
160
|
+
export { internal_batch as batch, internal_collector as collector, internal_composed as composed, internal_computed as computed, internal_effect as effect, internal_ignore as ignore, internal_shared as shared, internal_signal as signal };
|
|
168
161
|
}
|
|
169
162
|
|
|
170
163
|
interface Batch {
|
|
171
164
|
(callback: Callback): void;
|
|
172
|
-
(callback: Callback, collector: Collector
|
|
173
|
-
(callback: Callback, collector?: Collector
|
|
165
|
+
(callback: Callback, collector: Collector<Callback>): void;
|
|
166
|
+
(callback: Callback, collector?: Collector<Callback>): void;
|
|
174
167
|
}
|
|
175
168
|
declare const batch: Factory<Batch>;
|
|
176
169
|
|
|
177
|
-
type ComposedFactory = <T>(read: () => T, write: (value: T) => void, equals?: Equals<T>) => Signal
|
|
170
|
+
type ComposedFactory = <T>(read: () => T, write: (value: T) => void, equals?: Equals<T>) => Signal<T>;
|
|
178
171
|
declare const composed: Factory<ComposedFactory>;
|
|
179
172
|
|
|
180
173
|
type ComputedFactory = <T>(read: () => T, equals?: Equals<T>) => ReadonlySignal<T>;
|
|
@@ -194,8 +187,8 @@ interface Config {
|
|
|
194
187
|
composed?: Maybe<ComposedFactory>;
|
|
195
188
|
effect?: Maybe<Effect>;
|
|
196
189
|
batch?: Maybe<Batch>;
|
|
197
|
-
ignore?: Maybe<Ignore
|
|
190
|
+
ignore?: Maybe<Ignore>;
|
|
198
191
|
}
|
|
199
192
|
declare function config(config?: Config): void;
|
|
200
193
|
|
|
201
|
-
export { type Batch, type
|
|
194
|
+
export { type Batch, type Callable, type Callback, type Collector, type CollectorFactory, type Comparable, type ComposedFactory, type ComputedFactory, type Config, type Effect, type EffectCallback, type EffectCleanup, type Equals, type Factory, type Ignore, type Maybe, type Peekable, type Readable, type ReadonlySignal, type Signal, type SignalFactory, type Subscribable, type Writable, batch, collector, composed, computed, config, effect, factory, ignore, index as internal, signal };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,41 +1,45 @@
|
|
|
1
|
-
type
|
|
1
|
+
type Callable = (...args: any[]) => any;
|
|
2
2
|
|
|
3
3
|
type Maybe<T> = T | null | undefined;
|
|
4
4
|
|
|
5
|
-
type Factory<Fn extends
|
|
5
|
+
type Factory<Fn extends Callable> = Fn & {
|
|
6
6
|
factory(factory: Maybe<Fn>): void;
|
|
7
7
|
default(factory: Maybe<Fn>): void;
|
|
8
8
|
configured(): boolean;
|
|
9
9
|
};
|
|
10
|
-
declare function factory<Fn extends
|
|
10
|
+
declare function factory<Fn extends Callable>(name: string): Factory<Fn>;
|
|
11
11
|
|
|
12
12
|
type Callback = () => void;
|
|
13
13
|
|
|
14
|
-
interface Collector
|
|
14
|
+
interface Collector<T> {
|
|
15
15
|
add(value: T): void;
|
|
16
16
|
collecting(): boolean;
|
|
17
17
|
collect(callback: Callback): Readonly<Set<T>>;
|
|
18
18
|
ignore(callback: Callback): void;
|
|
19
19
|
}
|
|
20
|
-
type CollectorFactory = <T>() => Collector
|
|
21
|
-
declare const collector
|
|
20
|
+
type CollectorFactory = <T>() => Collector<T>;
|
|
21
|
+
declare const collector: Factory<CollectorFactory>;
|
|
22
22
|
|
|
23
|
-
declare function
|
|
24
|
-
declare function
|
|
25
|
-
declare function
|
|
26
|
-
declare namespace
|
|
27
|
-
|
|
23
|
+
declare function internal_batch(callback: Callback): void;
|
|
24
|
+
declare function internal_batch(callback: Callback, collector: Collector<Callback>): void;
|
|
25
|
+
declare function internal_batch(callback: Callback, collector?: Collector<Callback>): void;
|
|
26
|
+
declare namespace internal_batch {
|
|
27
|
+
const collector: Factory<collector.Factory>;
|
|
28
|
+
namespace collector {
|
|
29
|
+
type Factory = () => Collector<Callback>;
|
|
30
|
+
}
|
|
28
31
|
}
|
|
29
|
-
type BatchCollectorFactory = () => Collector$1<Callback>;
|
|
30
32
|
|
|
31
|
-
declare function
|
|
32
|
-
declare
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
33
|
+
declare function internal_collector<T>(): Collector<T>;
|
|
34
|
+
declare namespace internal_collector {
|
|
35
|
+
class Constructor<T> implements Collector<T> {
|
|
36
|
+
#private;
|
|
37
|
+
constructor(values: Set<T> | null);
|
|
38
|
+
collecting(): boolean;
|
|
39
|
+
add(value: T): void;
|
|
40
|
+
collect(callback: Callback): Set<T>;
|
|
41
|
+
ignore(callback: Callback): void;
|
|
42
|
+
}
|
|
39
43
|
}
|
|
40
44
|
|
|
41
45
|
interface Comparable<T> {
|
|
@@ -61,120 +65,109 @@ interface Peekable<T> {
|
|
|
61
65
|
peek(): T;
|
|
62
66
|
}
|
|
63
67
|
|
|
64
|
-
interface Signal
|
|
68
|
+
interface Signal<T> extends Readable<T>, Writable<T>, Peekable<T>, Comparable<T>, Subscribable {
|
|
65
69
|
}
|
|
66
70
|
interface ReadonlySignal<T> extends Readable<T>, Peekable<T>, Comparable<T>, Subscribable {
|
|
67
71
|
}
|
|
68
|
-
type SignalFactory = <T>(value: T, equals?: Equals<T>) => Signal
|
|
69
|
-
declare const signal
|
|
70
|
-
|
|
71
|
-
declare function
|
|
72
|
-
declare namespace
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
type
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
declare function
|
|
89
|
-
declare namespace
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
72
|
+
type SignalFactory = <T>(value: T, equals?: Equals<T>) => Signal<T>;
|
|
73
|
+
declare const signal: Factory<SignalFactory>;
|
|
74
|
+
|
|
75
|
+
declare function internal_computed<T>(compute: () => T, equals?: Equals<T>): internal_computed.Constructor<T>;
|
|
76
|
+
declare namespace internal_computed {
|
|
77
|
+
const collector: Factory<collector.Factory>;
|
|
78
|
+
namespace collector {
|
|
79
|
+
type Factory = () => Collector<ReadonlySignal<unknown>>;
|
|
80
|
+
}
|
|
81
|
+
class Constructor<T> implements ReadonlySignal<T> {
|
|
82
|
+
#private;
|
|
83
|
+
constructor(empty: boolean, value: T | undefined, values: [ReadonlySignal<unknown>, unknown][], dependencies: Set<ReadonlySignal<unknown>>, listeners: Set<Callback>, collector: Collector<ReadonlySignal<unknown>>, compute: () => T, equals: Maybe<Equals<T>>);
|
|
84
|
+
read(): T;
|
|
85
|
+
peek(): T;
|
|
86
|
+
equals(other: T): boolean;
|
|
87
|
+
subscribe(callback: Callback): Callback;
|
|
88
|
+
unsubscribe(callback: Callback): void;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
declare function internal_composed<T>(compute: () => T, write: (value: T) => void, equals?: Equals<T>): internal_composed.Constructor<T>;
|
|
93
|
+
declare namespace internal_composed {
|
|
94
|
+
const batcher: Factory<batcher.Factory>;
|
|
95
|
+
namespace batcher {
|
|
96
|
+
type Factory = () => Collector<Callback>;
|
|
97
|
+
}
|
|
98
|
+
const collector: Factory<collector.Factory>;
|
|
99
|
+
namespace collector {
|
|
100
|
+
type Factory = () => Collector<ReadonlySignal<unknown>>;
|
|
101
|
+
}
|
|
102
|
+
class Constructor<T> extends internal_computed.Constructor<T> implements Signal<T> {
|
|
103
|
+
#private;
|
|
104
|
+
constructor(empty: boolean, value: T | undefined, values: [ReadonlySignal<unknown>, unknown][], dependencies: Set<ReadonlySignal<unknown>>, listeners: Set<Callback>, batcher: Collector<Callback>, collector: Collector<ReadonlySignal<unknown>>, compute: () => T, write: (value: T) => void, equals: Maybe<Equals<T>>);
|
|
105
|
+
write(value: T): void;
|
|
106
|
+
}
|
|
97
107
|
}
|
|
98
108
|
|
|
99
109
|
type Effect = (callback: EffectCallback) => Callback;
|
|
100
110
|
type EffectCallback = (init: boolean) => EffectCleanup | void;
|
|
101
111
|
type EffectCleanup = (destroy: boolean) => void;
|
|
102
|
-
declare const effect
|
|
103
|
-
|
|
104
|
-
declare function
|
|
105
|
-
declare namespace
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
type
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
declare
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
112
|
+
declare const effect: Factory<Effect>;
|
|
113
|
+
|
|
114
|
+
declare function internal_effect(cb: EffectCallback): Callback;
|
|
115
|
+
declare namespace internal_effect {
|
|
116
|
+
const collector: Factory<collector.Factory>;
|
|
117
|
+
namespace collector {
|
|
118
|
+
type Factory = () => Collector<ReadonlySignal<unknown>>;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
declare function internal_ignore<Value>(value: ReadonlySignal<Value>): Value;
|
|
123
|
+
declare function internal_ignore<Value>(callback: () => Value): Value;
|
|
124
|
+
declare function internal_ignore<Value, Args extends any[]>(callback: (...args: Args) => Value, ...args: Args): Value;
|
|
125
|
+
declare namespace internal_ignore {
|
|
126
|
+
const collector: Factory<collector.Factory>;
|
|
127
|
+
namespace collector {
|
|
128
|
+
type Factory = () => Collector<ReadonlySignal<unknown>>;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
declare namespace internal_shared {
|
|
133
|
+
function batcher(): Collector<Callback>;
|
|
134
|
+
function collector(): Collector<ReadonlySignal<unknown>>;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
declare function internal_signal<T>(value: T, equals?: Equals<T>): Signal<T>;
|
|
138
|
+
declare namespace internal_signal {
|
|
139
|
+
const batcher: Factory<batcher.Factory>;
|
|
140
|
+
namespace batcher {
|
|
141
|
+
type Factory = () => Collector<Callback>;
|
|
142
|
+
}
|
|
143
|
+
const collector: Factory<collector.Factory>;
|
|
144
|
+
namespace collector {
|
|
145
|
+
type Factory = () => Collector<ReadonlySignal<unknown>>;
|
|
146
|
+
}
|
|
147
|
+
class Constructor<T> implements Signal<T> {
|
|
148
|
+
#private;
|
|
149
|
+
constructor(value: T, equals: Maybe<Equals<T>>, listeners: Set<Callback>, batcher: Collector<Callback>, collector: Collector<ReadonlySignal<unknown>>);
|
|
150
|
+
read(): T;
|
|
151
|
+
peek(): T;
|
|
152
|
+
write(value: T): void;
|
|
153
|
+
equals(other: T): boolean;
|
|
154
|
+
subscribe(callback: Callback): Callback;
|
|
155
|
+
unsubscribe(callback: Callback): void;
|
|
156
|
+
}
|
|
144
157
|
}
|
|
145
158
|
|
|
146
|
-
type index_BatchCollectorFactory = BatchCollectorFactory;
|
|
147
|
-
type index_Collector<T> = Collector<T>;
|
|
148
|
-
declare const index_Collector: typeof Collector;
|
|
149
|
-
type index_Composed<T> = Composed<T>;
|
|
150
|
-
declare const index_Composed: typeof Composed;
|
|
151
|
-
type index_ComposedBatcherFactory = ComposedBatcherFactory;
|
|
152
|
-
type index_ComposedCollectorFactory = ComposedCollectorFactory;
|
|
153
|
-
type index_Computed<T> = Computed<T>;
|
|
154
|
-
declare const index_Computed: typeof Computed;
|
|
155
|
-
type index_ComputedCollectorFactory = ComputedCollectorFactory;
|
|
156
|
-
type index_EffectCollectorFactory = EffectCollectorFactory;
|
|
157
|
-
type index_IgnoreCollectorFactory = IgnoreCollectorFactory;
|
|
158
|
-
type index_Signal<T> = Signal<T>;
|
|
159
|
-
declare const index_Signal: typeof Signal;
|
|
160
|
-
type index_SignalBatcherFactory = SignalBatcherFactory;
|
|
161
|
-
type index_SignalCollectorFactory = SignalCollectorFactory;
|
|
162
|
-
declare const index_collector: typeof collector;
|
|
163
|
-
declare const index_effect: typeof effect;
|
|
164
|
-
declare const index_shared: typeof shared;
|
|
165
|
-
declare const index_signal: typeof signal;
|
|
166
159
|
declare namespace index {
|
|
167
|
-
export {
|
|
160
|
+
export { internal_batch as batch, internal_collector as collector, internal_composed as composed, internal_computed as computed, internal_effect as effect, internal_ignore as ignore, internal_shared as shared, internal_signal as signal };
|
|
168
161
|
}
|
|
169
162
|
|
|
170
163
|
interface Batch {
|
|
171
164
|
(callback: Callback): void;
|
|
172
|
-
(callback: Callback, collector: Collector
|
|
173
|
-
(callback: Callback, collector?: Collector
|
|
165
|
+
(callback: Callback, collector: Collector<Callback>): void;
|
|
166
|
+
(callback: Callback, collector?: Collector<Callback>): void;
|
|
174
167
|
}
|
|
175
168
|
declare const batch: Factory<Batch>;
|
|
176
169
|
|
|
177
|
-
type ComposedFactory = <T>(read: () => T, write: (value: T) => void, equals?: Equals<T>) => Signal
|
|
170
|
+
type ComposedFactory = <T>(read: () => T, write: (value: T) => void, equals?: Equals<T>) => Signal<T>;
|
|
178
171
|
declare const composed: Factory<ComposedFactory>;
|
|
179
172
|
|
|
180
173
|
type ComputedFactory = <T>(read: () => T, equals?: Equals<T>) => ReadonlySignal<T>;
|
|
@@ -194,8 +187,8 @@ interface Config {
|
|
|
194
187
|
composed?: Maybe<ComposedFactory>;
|
|
195
188
|
effect?: Maybe<Effect>;
|
|
196
189
|
batch?: Maybe<Batch>;
|
|
197
|
-
ignore?: Maybe<Ignore
|
|
190
|
+
ignore?: Maybe<Ignore>;
|
|
198
191
|
}
|
|
199
192
|
declare function config(config?: Config): void;
|
|
200
193
|
|
|
201
|
-
export { type Batch, type
|
|
194
|
+
export { type Batch, type Callable, type Callback, type Collector, type CollectorFactory, type Comparable, type ComposedFactory, type ComputedFactory, type Config, type Effect, type EffectCallback, type EffectCleanup, type Equals, type Factory, type Ignore, type Maybe, type Peekable, type Readable, type ReadonlySignal, type Signal, type SignalFactory, type Subscribable, type Writable, batch, collector, composed, computed, config, effect, factory, ignore, index as internal, signal };
|