@ersbeth/picoflow 0.0.1 → 0.2.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.
Files changed (169) hide show
  1. package/api/doc/index.md +1 -1
  2. package/api/doc/picoflow.array.md +55 -0
  3. package/api/doc/picoflow.constant.md +55 -0
  4. package/api/doc/picoflow.derivation.md +1 -1
  5. package/api/doc/picoflow.effect.md +1 -1
  6. package/api/doc/picoflow.flowarray._constructor_.md +49 -0
  7. package/api/doc/picoflow.flowarray._lastaction.md +13 -0
  8. package/api/doc/picoflow.flowarray.clear.md +17 -0
  9. package/api/doc/picoflow.flowarray.dispose.md +55 -0
  10. package/api/doc/picoflow.flowarray.get.md +19 -0
  11. package/api/doc/picoflow.flowarray.length.md +13 -0
  12. package/api/doc/picoflow.flowarray.md +273 -0
  13. package/api/doc/picoflow.flowarray.pop.md +17 -0
  14. package/api/doc/picoflow.flowarray.push.md +53 -0
  15. package/api/doc/picoflow.flowarray.set.md +53 -0
  16. package/api/doc/picoflow.flowarray.setitem.md +69 -0
  17. package/api/doc/picoflow.flowarray.shift.md +17 -0
  18. package/api/doc/picoflow.flowarray.splice.md +85 -0
  19. package/api/doc/picoflow.flowarray.unshift.md +53 -0
  20. package/api/doc/picoflow.flowarrayaction.md +37 -0
  21. package/api/doc/picoflow.flowconstant._constructor_.md +49 -0
  22. package/api/doc/picoflow.flowconstant.get.md +25 -0
  23. package/api/doc/picoflow.flowconstant.md +88 -0
  24. package/api/doc/picoflow.flowderivation._constructor_.md +2 -2
  25. package/api/doc/picoflow.flowderivation.get.md +2 -2
  26. package/api/doc/picoflow.flowderivation.md +2 -2
  27. package/api/doc/picoflow.flowdisposable.dispose.md +55 -0
  28. package/api/doc/picoflow.flowdisposable.md +43 -0
  29. package/api/doc/picoflow.floweffect._constructor_.md +7 -2
  30. package/api/doc/picoflow.floweffect.dispose.md +3 -3
  31. package/api/doc/picoflow.floweffect.disposed.md +1 -1
  32. package/api/doc/picoflow.floweffect.md +4 -4
  33. package/api/doc/picoflow.flowgetter.md +2 -2
  34. package/api/doc/picoflow.flowmap._lastdeleted.md +1 -1
  35. package/api/doc/picoflow.flowmap._lastset.md +1 -1
  36. package/api/doc/picoflow.flowmap.delete.md +6 -2
  37. package/api/doc/picoflow.flowmap.md +5 -7
  38. package/api/doc/picoflow.flowmap.setat.md +6 -2
  39. package/api/doc/picoflow.flowobservable.get.md +3 -3
  40. package/api/doc/picoflow.flowobservable.md +18 -4
  41. package/api/doc/picoflow.flowobservable.subscribe.md +55 -0
  42. package/api/doc/picoflow.flowresource._constructor_.md +2 -18
  43. package/api/doc/picoflow.flowresource.fetch.md +1 -1
  44. package/api/doc/picoflow.flowresource.get.md +4 -4
  45. package/api/doc/picoflow.flowresource.md +4 -4
  46. package/api/doc/picoflow.flowresourceasync._constructor_.md +49 -0
  47. package/api/doc/picoflow.flowresourceasync.fetch.md +27 -0
  48. package/api/doc/picoflow.flowresourceasync.get.md +23 -0
  49. package/api/doc/picoflow.flowresourceasync.md +100 -0
  50. package/api/doc/picoflow.flowsignal.dispose.md +42 -8
  51. package/api/doc/picoflow.flowsignal.disposed.md +2 -2
  52. package/api/doc/picoflow.flowsignal.md +8 -7
  53. package/api/doc/picoflow.flowsignal.trigger.md +3 -7
  54. package/api/doc/picoflow.flowstate.md +4 -52
  55. package/api/doc/picoflow.flowstate.set.md +5 -5
  56. package/api/doc/picoflow.flowstream._constructor_.md +3 -19
  57. package/api/doc/picoflow.flowstream.dispose.md +1 -1
  58. package/api/doc/picoflow.flowstream.get.md +4 -4
  59. package/api/doc/picoflow.flowstream.md +5 -5
  60. package/api/doc/picoflow.flowstreamasync._constructor_.md +54 -0
  61. package/api/doc/picoflow.flowstreamasync.dispose.md +21 -0
  62. package/api/doc/picoflow.flowstreamasync.get.md +23 -0
  63. package/api/doc/picoflow.flowstreamasync.md +100 -0
  64. package/api/doc/picoflow.flowstreamdisposer.md +13 -0
  65. package/api/doc/picoflow.flowstreamsetter.md +13 -0
  66. package/api/doc/picoflow.flowstreamupdater.md +19 -0
  67. package/api/doc/picoflow.flowwatcher.md +1 -1
  68. package/api/doc/picoflow.isdisposable.md +55 -0
  69. package/api/doc/picoflow.map.md +1 -1
  70. package/api/doc/picoflow.md +149 -13
  71. package/api/doc/picoflow.resource.md +2 -18
  72. package/api/doc/picoflow.resourceasync.md +55 -0
  73. package/api/doc/picoflow.signal.md +1 -1
  74. package/api/doc/picoflow.state.md +3 -3
  75. package/api/doc/picoflow.stream.md +2 -18
  76. package/api/doc/picoflow.streamasync.md +55 -0
  77. package/api/picoflow.public.api.md +192 -0
  78. package/api-extractor.json +2 -1
  79. package/dist/picoflow.js +513 -305
  80. package/dist/types/advanced/array.d.ts +116 -0
  81. package/dist/types/advanced/array.d.ts.map +1 -0
  82. package/dist/types/advanced/index.d.ts +9 -0
  83. package/dist/types/advanced/index.d.ts.map +1 -0
  84. package/dist/types/{map.d.ts → advanced/map.d.ts} +12 -12
  85. package/dist/types/advanced/map.d.ts.map +1 -0
  86. package/dist/types/advanced/resource.d.ts +39 -0
  87. package/dist/types/advanced/resource.d.ts.map +1 -0
  88. package/dist/types/{resource.d.ts → advanced/resourceAsync.d.ts} +6 -11
  89. package/dist/types/advanced/resourceAsync.d.ts.map +1 -0
  90. package/dist/types/advanced/stream.d.ts +59 -0
  91. package/dist/types/advanced/stream.d.ts.map +1 -0
  92. package/dist/types/advanced/streamAsync.d.ts +43 -0
  93. package/dist/types/advanced/streamAsync.d.ts.map +1 -0
  94. package/dist/types/basic/constant.d.ts +32 -0
  95. package/dist/types/basic/constant.d.ts.map +1 -0
  96. package/dist/types/basic/derivation.d.ts +40 -0
  97. package/dist/types/basic/derivation.d.ts.map +1 -0
  98. package/dist/types/basic/disposable.d.ts +23 -0
  99. package/dist/types/basic/disposable.d.ts.map +1 -0
  100. package/dist/types/basic/effect.d.ts +56 -0
  101. package/dist/types/basic/effect.d.ts.map +1 -0
  102. package/dist/types/basic/index.d.ts +11 -0
  103. package/dist/types/basic/index.d.ts.map +1 -0
  104. package/dist/types/basic/observable.d.ts +34 -0
  105. package/dist/types/basic/observable.d.ts.map +1 -0
  106. package/dist/types/basic/signal.d.ts +40 -0
  107. package/dist/types/basic/signal.d.ts.map +1 -0
  108. package/dist/types/basic/state.d.ts +26 -0
  109. package/dist/types/basic/state.d.ts.map +1 -0
  110. package/dist/types/creators.d.ts +38 -13
  111. package/dist/types/creators.d.ts.map +1 -1
  112. package/dist/types/index.d.ts +4 -9
  113. package/dist/types/index.d.ts.map +1 -1
  114. package/package.json +1 -1
  115. package/src/advanced/array.ts +224 -0
  116. package/src/advanced/index.ts +12 -0
  117. package/src/{map.ts → advanced/map.ts} +14 -14
  118. package/src/advanced/resource.ts +56 -0
  119. package/src/{resource.ts → advanced/resourceAsync.ts} +9 -16
  120. package/src/advanced/stream.ts +87 -0
  121. package/src/advanced/streamAsync.ts +82 -0
  122. package/src/basic/constant.ts +64 -0
  123. package/src/basic/derivation.ts +86 -0
  124. package/src/basic/disposable.ts +27 -0
  125. package/src/basic/effect.ts +96 -0
  126. package/src/basic/index.ts +10 -0
  127. package/src/basic/observable.ts +51 -0
  128. package/src/basic/signal.ts +117 -0
  129. package/src/basic/state.ts +39 -0
  130. package/src/creators.ts +66 -15
  131. package/src/index.ts +26 -11
  132. package/test/array.test.ts +620 -0
  133. package/test/constant.test.ts +46 -0
  134. package/test/derivation.test.ts +30 -6
  135. package/test/effect.test.ts +29 -0
  136. package/test/map.test.ts +38 -0
  137. package/test/resource.test.ts +18 -16
  138. package/test/resourceAsync.test.ts +108 -0
  139. package/test/signal.test.ts +18 -1
  140. package/test/state.test.ts +107 -2
  141. package/test/stream.test.ts +38 -13
  142. package/test/streamAsync.test.ts +194 -0
  143. package/tsconfig.json +3 -1
  144. package/api/doc/picoflow.flowdisposer.md +0 -13
  145. package/api/doc/picoflow.flowsetter.md +0 -13
  146. package/api/doc/picoflow.flowstate._constructor_.md +0 -49
  147. package/api/doc/picoflow.flowstate.get.md +0 -23
  148. package/api/doc/picoflow.flowupdater.md +0 -19
  149. package/api/picoflow.api.md +0 -145
  150. package/dist/types/derivation.d.ts +0 -58
  151. package/dist/types/derivation.d.ts.map +0 -1
  152. package/dist/types/effect.d.ts +0 -108
  153. package/dist/types/effect.d.ts.map +0 -1
  154. package/dist/types/map.d.ts.map +0 -1
  155. package/dist/types/observable.d.ts +0 -40
  156. package/dist/types/observable.d.ts.map +0 -1
  157. package/dist/types/resource.d.ts.map +0 -1
  158. package/dist/types/signal.d.ts +0 -111
  159. package/dist/types/signal.d.ts.map +0 -1
  160. package/dist/types/state.d.ts +0 -39
  161. package/dist/types/state.d.ts.map +0 -1
  162. package/dist/types/stream.d.ts +0 -71
  163. package/dist/types/stream.d.ts.map +0 -1
  164. package/src/derivation.ts +0 -96
  165. package/src/effect.ts +0 -152
  166. package/src/observable.ts +0 -50
  167. package/src/signal.ts +0 -166
  168. package/src/state.ts +0 -52
  169. package/src/stream.ts +0 -99
@@ -1,6 +1,6 @@
1
1
  <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
2
 
3
- [Home](./index.md) &gt; [picoflow](./picoflow.md) &gt; [FlowState](./picoflow.flowstate.md)
3
+ [Home](./index.md) &gt; [@ersbeth/picoflow](./picoflow.md) &gt; [FlowState](./picoflow.flowstate.md)
4
4
 
5
5
  ## FlowState class
6
6
 
@@ -9,47 +9,13 @@ Represents a reactive state that holds a mutable value.
9
9
  **Signature:**
10
10
 
11
11
  ```typescript
12
- export declare class FlowState<T> extends FlowObservable<T>
12
+ export declare class FlowState<T> extends FlowConstant<T>
13
13
  ```
14
- **Extends:** [FlowObservable](./picoflow.flowobservable.md)<!-- -->&lt;T&gt;
14
+ **Extends:** [FlowConstant](./picoflow.flowconstant.md)<!-- -->&lt;T&gt;
15
15
 
16
16
  ## Remarks
17
17
 
18
- FlowState extends FlowObservable to provide a simple reactive state primitive. Use the [FlowState.get()](./picoflow.flowstate.get.md) method to read the current state and [FlowState.set()](./picoflow.flowstate.set.md) to update it. When the state is updated, subscribers are notified automatically.
19
-
20
- ## Constructors
21
-
22
- <table><thead><tr><th>
23
-
24
- Constructor
25
-
26
-
27
- </th><th>
28
-
29
- Modifiers
30
-
31
-
32
- </th><th>
33
-
34
- Description
35
-
36
-
37
- </th></tr></thead>
38
- <tbody><tr><td>
39
-
40
- [(constructor)(value)](./picoflow.flowstate._constructor_.md)
41
-
42
-
43
- </td><td>
44
-
45
-
46
- </td><td>
47
-
48
- Creates a new FlowState with the given initial value.
49
-
50
-
51
- </td></tr>
52
- </tbody></table>
18
+ FlowState extends FlowConstant, which provides the [FlowConstant.get()](./picoflow.flowconstant.get.md) method to read the current state. Use the [FlowState.set()](./picoflow.flowstate.set.md) method to update the state. When the state is updated, subscribers are notified automatically. This class notifies subscribers only when the value changes.
53
19
 
54
20
  ## Methods
55
21
 
@@ -71,20 +37,6 @@ Description
71
37
  </th></tr></thead>
72
38
  <tbody><tr><td>
73
39
 
74
- [get()](./picoflow.flowstate.get.md)
75
-
76
-
77
- </td><td>
78
-
79
-
80
- </td><td>
81
-
82
- Retrieves the current state value.
83
-
84
-
85
- </td></tr>
86
- <tr><td>
87
-
88
40
  [set(value)](./picoflow.flowstate.set.md)
89
41
 
90
42
 
@@ -1,6 +1,6 @@
1
1
  <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
2
 
3
- [Home](./index.md) &gt; [picoflow](./picoflow.md) &gt; [FlowState](./picoflow.flowstate.md) &gt; [set](./picoflow.flowstate.set.md)
3
+ [Home](./index.md) &gt; [@ersbeth/picoflow](./picoflow.md) &gt; [FlowState](./picoflow.flowstate.md) &gt; [set](./picoflow.flowstate.set.md)
4
4
 
5
5
  ## FlowState.set() method
6
6
 
@@ -9,7 +9,7 @@ Updates the state with a new value.
9
9
  **Signature:**
10
10
 
11
11
  ```typescript
12
- set(value: T): void;
12
+ set(value: T | ((current: T) => T)): void;
13
13
  ```
14
14
 
15
15
  ## Parameters
@@ -37,12 +37,12 @@ value
37
37
 
38
38
  </td><td>
39
39
 
40
- T
40
+ T \| ((current: T) =&gt; T)
41
41
 
42
42
 
43
43
  </td><td>
44
44
 
45
- The new value to set.
45
+ A new value or a callback function that computes a new value based on the current state.
46
46
 
47
47
 
48
48
  </td></tr>
@@ -57,5 +57,5 @@ Error if the state has been disposed.
57
57
 
58
58
  ## Remarks
59
59
 
60
- If the new value is identical to the current value, no update or notification occurs. Otherwise, the state is updated and all subscribers are notified.
60
+ If the computed new value is strictly equal to the current state value, no change is made and subscribers will not be notified. Otherwise, the state is updated and all subscribers are informed of the change.
61
61
 
@@ -1,6 +1,6 @@
1
1
  <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
2
 
3
- [Home](./index.md) &gt; [picoflow](./picoflow.md) &gt; [FlowStream](./picoflow.flowstream.md) &gt; [(constructor)](./picoflow.flowstream._constructor_.md)
3
+ [Home](./index.md) &gt; [@ersbeth/picoflow](./picoflow.md) &gt; [FlowStream](./picoflow.flowstream.md) &gt; [(constructor)](./picoflow.flowstream._constructor_.md)
4
4
 
5
5
  ## FlowStream.(constructor)
6
6
 
@@ -9,7 +9,7 @@ Creates a new FlowStream.
9
9
  **Signature:**
10
10
 
11
11
  ```typescript
12
- constructor(updater: FlowUpdater<T>, initial: T);
12
+ constructor(updater: FlowStreamUpdater<T>);
13
13
  ```
14
14
 
15
15
  ## Parameters
@@ -37,7 +37,7 @@ updater
37
37
 
38
38
  </td><td>
39
39
 
40
- [FlowUpdater](./picoflow.flowupdater.md)<!-- -->&lt;T&gt;
40
+ [FlowStreamUpdater](./picoflow.flowstreamupdater.md)<!-- -->&lt;T&gt;
41
41
 
42
42
 
43
43
  </td><td>
@@ -45,21 +45,5 @@ updater
45
45
  A function that receives a setter to update the stream's value. It should return a disposer function that will be called upon disposal.
46
46
 
47
47
 
48
- </td></tr>
49
- <tr><td>
50
-
51
- initial
52
-
53
-
54
- </td><td>
55
-
56
- T
57
-
58
-
59
- </td><td>
60
-
61
- The initial value of the stream.
62
-
63
-
64
48
  </td></tr>
65
49
  </tbody></table>
@@ -1,6 +1,6 @@
1
1
  <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
2
 
3
- [Home](./index.md) &gt; [picoflow](./picoflow.md) &gt; [FlowStream](./picoflow.flowstream.md) &gt; [dispose](./picoflow.flowstream.dispose.md)
3
+ [Home](./index.md) &gt; [@ersbeth/picoflow](./picoflow.md) &gt; [FlowStream](./picoflow.flowstream.md) &gt; [dispose](./picoflow.flowstream.dispose.md)
4
4
 
5
5
  ## FlowStream.dispose() method
6
6
 
@@ -1,6 +1,6 @@
1
1
  <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
2
 
3
- [Home](./index.md) &gt; [picoflow](./picoflow.md) &gt; [FlowStream](./picoflow.flowstream.md) &gt; [get](./picoflow.flowstream.get.md)
3
+ [Home](./index.md) &gt; [@ersbeth/picoflow](./picoflow.md) &gt; [FlowStream](./picoflow.flowstream.md) &gt; [get](./picoflow.flowstream.get.md)
4
4
 
5
5
  ## FlowStream.get() method
6
6
 
@@ -9,13 +9,13 @@ Retrieves the current value of the stream.
9
9
  **Signature:**
10
10
 
11
11
  ```typescript
12
- get(): T;
12
+ get(): T | undefined;
13
13
  ```
14
14
  **Returns:**
15
15
 
16
- T
16
+ T \| undefined
17
17
 
18
- The current value.
18
+ The current value, or undefined if no value has been set yet.
19
19
 
20
20
  ## Exceptions
21
21
 
@@ -1,6 +1,6 @@
1
1
  <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
2
 
3
- [Home](./index.md) &gt; [picoflow](./picoflow.md) &gt; [FlowStream](./picoflow.flowstream.md)
3
+ [Home](./index.md) &gt; [@ersbeth/picoflow](./picoflow.md) &gt; [FlowStream](./picoflow.flowstream.md)
4
4
 
5
5
  ## FlowStream class
6
6
 
@@ -9,13 +9,13 @@ Represents a reactive stream that updates its value based on an updater function
9
9
  **Signature:**
10
10
 
11
11
  ```typescript
12
- export declare class FlowStream<T> extends FlowObservable<T>
12
+ export declare class FlowStream<T> extends FlowObservable<T | undefined>
13
13
  ```
14
- **Extends:** [FlowObservable](./picoflow.flowobservable.md)<!-- -->&lt;T&gt;
14
+ **Extends:** [FlowObservable](./picoflow.flowobservable.md)<!-- -->&lt;T \| undefined&gt;
15
15
 
16
16
  ## Remarks
17
17
 
18
- A FlowStream extends FlowObservable and encapsulates a mechanism for updating its value via an external updater function. The updater is invoked during construction with a setter, and it returns a disposer to be called when the stream is disposed.
18
+ FlowStream extends FlowObservable to encapsulate an update mechanism provided by an external updater function. The updater is invoked during construction with a setter, and it returns a disposer to be called upon disposal. Note: The stream's current value may be undefined until explicitly set.
19
19
 
20
20
  ## Constructors
21
21
 
@@ -37,7 +37,7 @@ Description
37
37
  </th></tr></thead>
38
38
  <tbody><tr><td>
39
39
 
40
- [(constructor)(updater, initial)](./picoflow.flowstream._constructor_.md)
40
+ [(constructor)(updater)](./picoflow.flowstream._constructor_.md)
41
41
 
42
42
 
43
43
  </td><td>
@@ -0,0 +1,54 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@ersbeth/picoflow](./picoflow.md) &gt; [FlowStreamAsync](./picoflow.flowstreamasync.md) &gt; [(constructor)](./picoflow.flowstreamasync._constructor_.md)
4
+
5
+ ## FlowStreamAsync.(constructor)
6
+
7
+ Creates a new asynchronous FlowStream.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ constructor(updater: FlowStreamUpdater<T>);
13
+ ```
14
+
15
+ ## Parameters
16
+
17
+ <table><thead><tr><th>
18
+
19
+ Parameter
20
+
21
+
22
+ </th><th>
23
+
24
+ Type
25
+
26
+
27
+ </th><th>
28
+
29
+ Description
30
+
31
+
32
+ </th></tr></thead>
33
+ <tbody><tr><td>
34
+
35
+ updater
36
+
37
+
38
+ </td><td>
39
+
40
+ [FlowStreamUpdater](./picoflow.flowstreamupdater.md)<!-- -->&lt;T&gt;
41
+
42
+
43
+ </td><td>
44
+
45
+ A function that receives a setter to update the stream's value. It should return a disposer function that will be called upon disposal.
46
+
47
+
48
+ </td></tr>
49
+ </tbody></table>
50
+
51
+ ## Remarks
52
+
53
+ The updater function can invoke the setter asynchronously to update the stream.
54
+
@@ -0,0 +1,21 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@ersbeth/picoflow](./picoflow.md) &gt; [FlowStreamAsync](./picoflow.flowstreamasync.md) &gt; [dispose](./picoflow.flowstreamasync.dispose.md)
4
+
5
+ ## FlowStreamAsync.dispose() method
6
+
7
+ Disposes the stream, releasing all resources.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ dispose(): void;
13
+ ```
14
+ **Returns:**
15
+
16
+ void
17
+
18
+ ## Remarks
19
+
20
+ In addition to disposing the underlying observable, this method calls the disposer returned by the updater.
21
+
@@ -0,0 +1,23 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@ersbeth/picoflow](./picoflow.md) &gt; [FlowStreamAsync](./picoflow.flowstreamasync.md) &gt; [get](./picoflow.flowstreamasync.get.md)
4
+
5
+ ## FlowStreamAsync.get() method
6
+
7
+ Retrieves the current value of the stream as a Promise.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ get(): Promise<T>;
13
+ ```
14
+ **Returns:**
15
+
16
+ Promise&lt;T&gt;
17
+
18
+ A Promise that resolves to the current value.
19
+
20
+ ## Exceptions
21
+
22
+ Error if the stream is disposed.
23
+
@@ -0,0 +1,100 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@ersbeth/picoflow](./picoflow.md) &gt; [FlowStreamAsync](./picoflow.flowstreamasync.md)
4
+
5
+ ## FlowStreamAsync class
6
+
7
+ Represents an asynchronous reactive stream that updates its value based on an updater function.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ export declare class FlowStreamAsync<T> extends FlowObservable<Promise<T>>
13
+ ```
14
+ **Extends:** [FlowObservable](./picoflow.flowobservable.md)<!-- -->&lt;Promise&lt;T&gt;&gt;
15
+
16
+ ## Remarks
17
+
18
+ A FlowStreamAsync extends FlowObservable and encapsulates a mechanism for asynchronously updating its value. The updater is invoked during construction with a setter, and its returned disposer is called upon disposal. Note: The stream's current value may be undefined until it is set.
19
+
20
+ ## Constructors
21
+
22
+ <table><thead><tr><th>
23
+
24
+ Constructor
25
+
26
+
27
+ </th><th>
28
+
29
+ Modifiers
30
+
31
+
32
+ </th><th>
33
+
34
+ Description
35
+
36
+
37
+ </th></tr></thead>
38
+ <tbody><tr><td>
39
+
40
+ [(constructor)(updater)](./picoflow.flowstreamasync._constructor_.md)
41
+
42
+
43
+ </td><td>
44
+
45
+
46
+ </td><td>
47
+
48
+ Creates a new asynchronous FlowStream.
49
+
50
+
51
+ </td></tr>
52
+ </tbody></table>
53
+
54
+ ## Methods
55
+
56
+ <table><thead><tr><th>
57
+
58
+ Method
59
+
60
+
61
+ </th><th>
62
+
63
+ Modifiers
64
+
65
+
66
+ </th><th>
67
+
68
+ Description
69
+
70
+
71
+ </th></tr></thead>
72
+ <tbody><tr><td>
73
+
74
+ [dispose()](./picoflow.flowstreamasync.dispose.md)
75
+
76
+
77
+ </td><td>
78
+
79
+
80
+ </td><td>
81
+
82
+ Disposes the stream, releasing all resources.
83
+
84
+
85
+ </td></tr>
86
+ <tr><td>
87
+
88
+ [get()](./picoflow.flowstreamasync.get.md)
89
+
90
+
91
+ </td><td>
92
+
93
+
94
+ </td><td>
95
+
96
+ Retrieves the current value of the stream as a Promise.
97
+
98
+
99
+ </td></tr>
100
+ </tbody></table>
@@ -0,0 +1,13 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@ersbeth/picoflow](./picoflow.md) &gt; [FlowStreamDisposer](./picoflow.flowstreamdisposer.md)
4
+
5
+ ## FlowStreamDisposer type
6
+
7
+ A function type that disposes of a resource.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ export type FlowStreamDisposer = () => void;
13
+ ```
@@ -0,0 +1,13 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@ersbeth/picoflow](./picoflow.md) &gt; [FlowStreamSetter](./picoflow.flowstreamsetter.md)
4
+
5
+ ## FlowStreamSetter type
6
+
7
+ A function type that sets a new value for the reactive stream.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ export type FlowStreamSetter<T> = (value: T) => void;
13
+ ```
@@ -0,0 +1,19 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@ersbeth/picoflow](./picoflow.md) &gt; [FlowStreamUpdater](./picoflow.flowstreamupdater.md)
4
+
5
+ ## FlowStreamUpdater type
6
+
7
+ A function type that updates a stream and returns a disposer for cleanup.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ export type FlowStreamUpdater<T> = (set: FlowStreamSetter<T>) => FlowStreamDisposer;
13
+ ```
14
+ **References:** [FlowStreamSetter](./picoflow.flowstreamsetter.md)<!-- -->, [FlowStreamDisposer](./picoflow.flowstreamdisposer.md)
15
+
16
+ ## Remarks
17
+
18
+ The updater receives a setter function to update the stream's value. It should return a disposer function to release any resources or subscriptions.
19
+
@@ -1,6 +1,6 @@
1
1
  <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
2
 
3
- [Home](./index.md) &gt; [picoflow](./picoflow.md) &gt; [FlowWatcher](./picoflow.flowwatcher.md)
3
+ [Home](./index.md) &gt; [@ersbeth/picoflow](./picoflow.md) &gt; [FlowWatcher](./picoflow.flowwatcher.md)
4
4
 
5
5
  ## FlowWatcher type
6
6
 
@@ -0,0 +1,55 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@ersbeth/picoflow](./picoflow.md) &gt; [isDisposable](./picoflow.isdisposable.md)
4
+
5
+ ## isDisposable() function
6
+
7
+ Checks whether an object implements the FlowDisposable interface.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ export declare function isDisposable(obj: unknown): obj is FlowDisposable;
13
+ ```
14
+
15
+ ## Parameters
16
+
17
+ <table><thead><tr><th>
18
+
19
+ Parameter
20
+
21
+
22
+ </th><th>
23
+
24
+ Type
25
+
26
+
27
+ </th><th>
28
+
29
+ Description
30
+
31
+
32
+ </th></tr></thead>
33
+ <tbody><tr><td>
34
+
35
+ obj
36
+
37
+
38
+ </td><td>
39
+
40
+ unknown
41
+
42
+
43
+ </td><td>
44
+
45
+ The object to test.
46
+
47
+
48
+ </td></tr>
49
+ </tbody></table>
50
+ **Returns:**
51
+
52
+ obj is [FlowDisposable](./picoflow.flowdisposable.md)
53
+
54
+ True if the object has a dispose method, otherwise false.
55
+
@@ -1,6 +1,6 @@
1
1
  <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
2
 
3
- [Home](./index.md) &gt; [picoflow](./picoflow.md) &gt; [map](./picoflow.map.md)
3
+ [Home](./index.md) &gt; [@ersbeth/picoflow](./picoflow.md) &gt; [map](./picoflow.map.md)
4
4
 
5
5
  ## map() function
6
6