@angular/core 20.0.0-next.1 → 20.0.0-next.3

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 (54) hide show
  1. package/fesm2022/core.mjs +770 -2144
  2. package/fesm2022/core.mjs.map +1 -1
  3. package/fesm2022/primitives/di.mjs +3 -2
  4. package/fesm2022/primitives/di.mjs.map +1 -1
  5. package/fesm2022/primitives/event-dispatch.mjs +2 -589
  6. package/fesm2022/primitives/event-dispatch.mjs.map +1 -1
  7. package/fesm2022/primitives/signals.mjs +44 -13
  8. package/fesm2022/primitives/signals.mjs.map +1 -1
  9. package/fesm2022/rxjs-interop.mjs +7 -39
  10. package/fesm2022/rxjs-interop.mjs.map +1 -1
  11. package/fesm2022/testing.mjs +116 -143
  12. package/fesm2022/testing.mjs.map +1 -1
  13. package/fesm2022/weak_ref-DrMdAIDh.mjs +12 -0
  14. package/fesm2022/weak_ref-DrMdAIDh.mjs.map +1 -0
  15. package/index.d.ts +14366 -15214
  16. package/navigation_types.d-u4EOrrdZ.d.ts +121 -0
  17. package/package.json +2 -2
  18. package/primitives/di/index.d.ts +66 -59
  19. package/primitives/event-dispatch/index.d.ts +205 -309
  20. package/primitives/signals/index.d.ts +161 -195
  21. package/rxjs-interop/index.d.ts +71 -100
  22. package/schematics/bundles/{apply_import_manager-e2a7fe5b.js → apply_import_manager-BXQEjo09.js} +15 -19
  23. package/schematics/bundles/{checker-af521da6.js → checker-BHb19MHt.js} +3695 -1175
  24. package/schematics/bundles/cleanup-unused-imports.js +56 -89
  25. package/schematics/bundles/{compiler_host-5a29293c.js → compiler_host-Bk3repE2.js} +19 -23
  26. package/schematics/bundles/control-flow-migration.js +81 -38
  27. package/schematics/bundles/{imports-047fbbc8.js → imports-CIX-JgAN.js} +9 -14
  28. package/schematics/bundles/{index-1bef3025.js → index-BL9kAIe5.js} +62 -66
  29. package/schematics/bundles/{program-a449f9bf.js → index-I8VbxQcO.js} +1508 -3178
  30. package/schematics/bundles/inject-flags.js +147 -0
  31. package/schematics/bundles/inject-migration.js +121 -127
  32. package/schematics/bundles/{leading_space-f8944434.js → leading_space-D9nQ8UQC.js} +1 -1
  33. package/schematics/bundles/{migrate_ts_type_references-2a3e9e6b.js → migrate_ts_type_references-KlOTWeDl.js} +121 -126
  34. package/schematics/bundles/{ng_decorators-b0d8b324.js → ng_decorators-DznZ5jMl.js} +4 -8
  35. package/schematics/bundles/{nodes-7758dbf6.js → nodes-B16H9JUd.js} +2 -6
  36. package/schematics/bundles/output-migration.js +94 -128
  37. package/schematics/bundles/{project_tsconfig_paths-b558633b.js → project_tsconfig_paths-CDVxT6Ov.js} +1 -1
  38. package/schematics/bundles/{property_name-ac18447e.js → property_name-BBwFuqMe.js} +3 -7
  39. package/schematics/bundles/route-lazy-loading.js +35 -41
  40. package/schematics/bundles/{project_paths-17dc204d.js → run_in_devkit-C0JPtK2u.js} +283 -216
  41. package/schematics/bundles/self-closing-tags-migration.js +55 -91
  42. package/schematics/bundles/signal-input-migration.js +121 -156
  43. package/schematics/bundles/signal-queries-migration.js +119 -154
  44. package/schematics/bundles/signals.js +12 -14
  45. package/schematics/bundles/standalone-migration.js +180 -200
  46. package/schematics/bundles/symbol-VPWguRxr.js +25 -0
  47. package/schematics/bundles/test-bed-get.js +98 -0
  48. package/schematics/migrations.json +8 -14
  49. package/testing/index.d.ts +289 -471
  50. package/weak_ref.d-ttyj86RV.d.ts +9 -0
  51. package/schematics/bundles/explicit-standalone-flag.js +0 -184
  52. package/schematics/bundles/index-ef1bffbb.js +0 -30
  53. package/schematics/bundles/pending-tasks.js +0 -103
  54. package/schematics/bundles/provide-initializer.js +0 -186
@@ -1,166 +1,38 @@
1
1
  /**
2
- * @license Angular v20.0.0-next.1
2
+ * @license Angular v20.0.0-next.3
3
3
  * (c) 2010-2025 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
6
6
 
7
-
8
- export declare type ComputationFn<S, D> = (source: S, previous?: {
9
- source: S;
10
- value: D;
11
- }) => D;
12
-
13
- declare type ComputedGetter<T> = (() => T) & {
14
- [SIGNAL]: ComputedNode<T>;
15
- };
16
-
17
- /**
18
- * A computation, which derives a value from a declarative reactive expression.
19
- *
20
- * `Computed`s are both producers and consumers of reactivity.
21
- */
22
- export declare interface ComputedNode<T> extends ReactiveNode {
23
- /**
24
- * Current value of the computation, or one of the sentinel values above (`UNSET`, `COMPUTING`,
25
- * `ERROR`).
26
- */
27
- value: T;
28
- /**
29
- * If `value` is `ERRORED`, the error caught from the last computation attempt which will
30
- * be re-thrown.
31
- */
32
- error: unknown;
33
- /**
34
- * The computation function which will produce a new value.
35
- */
36
- computation: () => T;
37
- equal: ValueEqualityFn<T>;
38
- }
7
+ export { s as setAlternateWeakRefImpl } from '../../weak_ref.d-ttyj86RV.js';
39
8
 
40
9
  /**
41
- * Finalize this consumer's state after a reactive computation has run.
42
- *
43
- * Must be called by subclasses which represent reactive computations, after those computations
44
- * have finished.
45
- */
46
- export declare function consumerAfterComputation(node: ReactiveNode | null, prevConsumer: ReactiveNode | null): void;
47
-
48
- /**
49
- * Prepare this consumer to run a computation in its reactive context.
50
- *
51
- * Must be called by subclasses which represent reactive computations, before those computations
52
- * begin.
53
- */
54
- export declare function consumerBeforeComputation(node: ReactiveNode | null): ReactiveNode | null;
55
-
56
- /**
57
- * Disconnect this consumer from the graph.
58
- */
59
- export declare function consumerDestroy(node: ReactiveNode): void;
60
-
61
- export declare function consumerMarkDirty(node: ReactiveNode): void;
62
-
63
- /**
64
- * Determine whether this consumer has any dependencies which have changed since the last time
65
- * they were read.
66
- */
67
- export declare function consumerPollProducersForChange(node: ReactiveNode): boolean;
68
-
69
- /**
70
- * Create a computed signal which derives a reactive value from an expression.
71
- */
72
- export declare function createComputed<T>(computation: () => T): ComputedGetter<T>;
73
-
74
- export declare function createLinkedSignal<S, D>(sourceFn: () => S, computationFn: ComputationFn<S, D>, equalityFn?: ValueEqualityFn<D>): LinkedSignalGetter<S, D>;
75
-
76
- /**
77
- * Create a `Signal` that can be set or updated directly.
10
+ * A comparison function which can determine if two values are equal.
78
11
  */
79
- export declare function createSignal<T>(initialValue: T): SignalGetter<T>;
80
-
81
- export declare function createWatch(fn: (onCleanup: WatchCleanupRegisterFn) => void, schedule: (watch: Watch) => void, allowSignalWrites: boolean): Watch;
82
-
12
+ type ValueEqualityFn<T> = (a: T, b: T) => boolean;
83
13
  /**
84
14
  * The default equality function used for `signal` and `computed`, which uses referential equality.
85
15
  */
86
- export declare function defaultEquals<T>(a: T, b: T): boolean;
87
-
88
- export declare function getActiveConsumer(): ReactiveNode | null;
16
+ declare function defaultEquals<T>(a: T, b: T): boolean;
89
17
 
90
- export declare function isInNotificationPhase(): boolean;
91
-
92
- export declare function isReactive(value: unknown): value is Reactive;
93
-
94
- export declare type LinkedSignalGetter<S, D> = (() => D) & {
95
- [SIGNAL]: LinkedSignalNode<S, D>;
18
+ type Version = number & {
19
+ __brand: 'Version';
96
20
  };
97
-
98
- export declare interface LinkedSignalNode<S, D> extends ReactiveNode {
99
- /**
100
- * Value of the source signal that was used to derive the computed value.
101
- */
102
- sourceValue: S;
103
- /**
104
- * Current state value, or one of the sentinel values (`UNSET`, `COMPUTING`,
105
- * `ERROR`).
106
- */
107
- value: D;
108
- /**
109
- * If `value` is `ERRORED`, the error caught from the last computation attempt which will
110
- * be re-thrown.
111
- */
112
- error: unknown;
113
- /**
114
- * The source function represents reactive dependency based on which the linked state is reset.
115
- */
116
- source: () => S;
117
- /**
118
- * The computation function which will produce a new value based on the source and, optionally - previous values.
119
- */
120
- computation: ComputationFn<S, D>;
121
- equal: ValueEqualityFn<D>;
122
- }
123
-
124
- export declare function linkedSignalSetFn<S, D>(node: LinkedSignalNode<S, D>, newValue: D): void;
125
-
126
- export declare function linkedSignalUpdateFn<S, D>(node: LinkedSignalNode<S, D>, updater: (value: D) => D): void;
127
-
21
+ type ReactiveHookFn = (node: ReactiveNode) => void;
128
22
  /**
129
- * Called by implementations when a producer's signal is read.
130
- */
131
- export declare function producerAccessed(node: ReactiveNode): void;
132
-
133
- /**
134
- * Increment the global epoch counter.
23
+ * Symbol used to tell `Signal`s apart from other functions.
135
24
  *
136
- * Called by source producers (that is, not computeds) whenever their values change.
137
- */
138
- export declare function producerIncrementEpoch(): void;
139
-
140
- export declare function producerMarkClean(node: ReactiveNode): void;
141
-
142
- /**
143
- * Propagate a dirty notification to live consumers of this producer.
144
- */
145
- export declare function producerNotifyConsumers(node: ReactiveNode): void;
146
-
147
- /**
148
- * Whether this `ReactiveNode` in its producer capacity is currently allowed to initiate updates,
149
- * based on the current consumer context.
150
- */
151
- export declare function producerUpdatesAllowed(): boolean;
152
-
153
- /**
154
- * Ensure this producer's `version` is up-to-date.
25
+ * This can be used to auto-unwrap signals in various cases, or to auto-wrap non-signal values.
155
26
  */
156
- export declare function producerUpdateValueVersion(node: ReactiveNode): void;
157
-
158
- export declare interface Reactive {
27
+ declare const SIGNAL: unique symbol;
28
+ declare function setActiveConsumer(consumer: ReactiveNode | null): ReactiveNode | null;
29
+ declare function getActiveConsumer(): ReactiveNode | null;
30
+ declare function isInNotificationPhase(): boolean;
31
+ interface Reactive {
159
32
  [SIGNAL]: ReactiveNode;
160
33
  }
161
-
162
- export declare const REACTIVE_NODE: ReactiveNode;
163
-
34
+ declare function isReactive(value: unknown): value is Reactive;
35
+ declare const REACTIVE_NODE: ReactiveNode;
164
36
  /**
165
37
  * A producer and/or consumer which participates in the reactive graph.
166
38
  *
@@ -173,7 +45,7 @@ export declare const REACTIVE_NODE: ReactiveNode;
173
45
  *
174
46
  * A `ReactiveNode` may be both a producer and consumer.
175
47
  */
176
- export declare interface ReactiveNode {
48
+ interface ReactiveNode {
177
49
  /**
178
50
  * Version of the value that this node produces.
179
51
  *
@@ -270,56 +142,155 @@ export declare interface ReactiveNode {
270
142
  */
271
143
  kind: string;
272
144
  }
273
-
274
- export declare function runPostSignalSetFn(): void;
275
-
276
- export declare function setActiveConsumer(consumer: ReactiveNode | null): ReactiveNode | null;
277
-
278
-
279
- export declare function setAlternateWeakRefImpl(impl: unknown): void;
280
-
281
- export declare function setPostSignalSetFn(fn: (() => void) | null): (() => void) | null;
282
-
283
- export declare function setThrowInvalidWriteToSignalError(fn: <T>(node: SignalNode<T>) => never): void;
284
-
285
145
  /**
286
- * Symbol used to tell `Signal`s apart from other functions.
146
+ * Called by implementations when a producer's signal is read.
147
+ */
148
+ declare function producerAccessed(node: ReactiveNode): void;
149
+ /**
150
+ * Increment the global epoch counter.
287
151
  *
288
- * This can be used to auto-unwrap signals in various cases, or to auto-wrap non-signal values.
152
+ * Called by source producers (that is, not computeds) whenever their values change.
289
153
  */
290
- export declare const SIGNAL: unique symbol;
291
-
292
- export declare const SIGNAL_NODE: SignalNode<unknown>;
154
+ declare function producerIncrementEpoch(): void;
155
+ /**
156
+ * Ensure this producer's `version` is up-to-date.
157
+ */
158
+ declare function producerUpdateValueVersion(node: ReactiveNode): void;
159
+ /**
160
+ * Propagate a dirty notification to live consumers of this producer.
161
+ */
162
+ declare function producerNotifyConsumers(node: ReactiveNode): void;
163
+ /**
164
+ * Whether this `ReactiveNode` in its producer capacity is currently allowed to initiate updates,
165
+ * based on the current consumer context.
166
+ */
167
+ declare function producerUpdatesAllowed(): boolean;
168
+ declare function consumerMarkDirty(node: ReactiveNode): void;
169
+ declare function producerMarkClean(node: ReactiveNode): void;
170
+ /**
171
+ * Prepare this consumer to run a computation in its reactive context.
172
+ *
173
+ * Must be called by subclasses which represent reactive computations, before those computations
174
+ * begin.
175
+ */
176
+ declare function consumerBeforeComputation(node: ReactiveNode | null): ReactiveNode | null;
177
+ /**
178
+ * Finalize this consumer's state after a reactive computation has run.
179
+ *
180
+ * Must be called by subclasses which represent reactive computations, after those computations
181
+ * have finished.
182
+ */
183
+ declare function consumerAfterComputation(node: ReactiveNode | null, prevConsumer: ReactiveNode | null): void;
184
+ /**
185
+ * Determine whether this consumer has any dependencies which have changed since the last time
186
+ * they were read.
187
+ */
188
+ declare function consumerPollProducersForChange(node: ReactiveNode): boolean;
189
+ /**
190
+ * Disconnect this consumer from the graph.
191
+ */
192
+ declare function consumerDestroy(node: ReactiveNode): void;
193
+ declare function runPostProducerCreatedFn(node: ReactiveNode): void;
194
+ declare function setPostProducerCreatedFn(fn: ReactiveHookFn | null): ReactiveHookFn | null;
293
195
 
294
- declare type SignalBaseGetter<T> = (() => T) & {
295
- readonly [SIGNAL]: unknown;
196
+ /**
197
+ * A computation, which derives a value from a declarative reactive expression.
198
+ *
199
+ * `Computed`s are both producers and consumers of reactivity.
200
+ */
201
+ interface ComputedNode<T> extends ReactiveNode {
202
+ /**
203
+ * Current value of the computation, or one of the sentinel values above (`UNSET`, `COMPUTING`,
204
+ * `ERROR`).
205
+ */
206
+ value: T;
207
+ /**
208
+ * If `value` is `ERRORED`, the error caught from the last computation attempt which will
209
+ * be re-thrown.
210
+ */
211
+ error: unknown;
212
+ /**
213
+ * The computation function which will produce a new value.
214
+ */
215
+ computation: () => T;
216
+ equal: ValueEqualityFn<T>;
217
+ }
218
+ type ComputedGetter<T> = (() => T) & {
219
+ [SIGNAL]: ComputedNode<T>;
296
220
  };
221
+ /**
222
+ * Create a computed signal which derives a reactive value from an expression.
223
+ */
224
+ declare function createComputed<T>(computation: () => T, equal?: ValueEqualityFn<T>): ComputedGetter<T>;
297
225
 
298
- export declare interface SignalGetter<T> extends SignalBaseGetter<T> {
299
- readonly [SIGNAL]: SignalNode<T>;
226
+ type ComputationFn<S, D> = (source: S, previous?: {
227
+ source: S;
228
+ value: D;
229
+ }) => D;
230
+ interface LinkedSignalNode<S, D> extends ReactiveNode {
231
+ /**
232
+ * Value of the source signal that was used to derive the computed value.
233
+ */
234
+ sourceValue: S;
235
+ /**
236
+ * Current state value, or one of the sentinel values (`UNSET`, `COMPUTING`,
237
+ * `ERROR`).
238
+ */
239
+ value: D;
240
+ /**
241
+ * If `value` is `ERRORED`, the error caught from the last computation attempt which will
242
+ * be re-thrown.
243
+ */
244
+ error: unknown;
245
+ /**
246
+ * The source function represents reactive dependency based on which the linked state is reset.
247
+ */
248
+ source: () => S;
249
+ /**
250
+ * The computation function which will produce a new value based on the source and, optionally - previous values.
251
+ */
252
+ computation: ComputationFn<S, D>;
253
+ equal: ValueEqualityFn<D>;
300
254
  }
255
+ type LinkedSignalGetter<S, D> = (() => D) & {
256
+ [SIGNAL]: LinkedSignalNode<S, D>;
257
+ };
258
+ declare function createLinkedSignal<S, D>(sourceFn: () => S, computationFn: ComputationFn<S, D>, equalityFn?: ValueEqualityFn<D>): LinkedSignalGetter<S, D>;
259
+ declare function linkedSignalSetFn<S, D>(node: LinkedSignalNode<S, D>, newValue: D): void;
260
+ declare function linkedSignalUpdateFn<S, D>(node: LinkedSignalNode<S, D>, updater: (value: D) => D): void;
301
261
 
302
- export declare interface SignalNode<T> extends ReactiveNode {
262
+ interface SignalNode<T> extends ReactiveNode {
303
263
  value: T;
304
264
  equal: ValueEqualityFn<T>;
305
265
  }
306
-
307
- export declare function signalSetFn<T>(node: SignalNode<T>, newValue: T): void;
308
-
309
- export declare function signalUpdateFn<T>(node: SignalNode<T>, updater: (value: T) => T): void;
310
-
311
-
266
+ type SignalBaseGetter<T> = (() => T) & {
267
+ readonly [SIGNAL]: unknown;
268
+ };
269
+ interface SignalGetter<T> extends SignalBaseGetter<T> {
270
+ readonly [SIGNAL]: SignalNode<T>;
271
+ }
312
272
  /**
313
- * A comparison function which can determine if two values are equal.
273
+ * Create a `Signal` that can be set or updated directly.
314
274
  */
315
- export declare type ValueEqualityFn<T> = (a: T, b: T) => boolean;
275
+ declare function createSignal<T>(initialValue: T, equal?: ValueEqualityFn<T>): SignalGetter<T>;
276
+ declare function setPostSignalSetFn(fn: ReactiveHookFn | null): ReactiveHookFn | null;
277
+ declare function signalSetFn<T>(node: SignalNode<T>, newValue: T): void;
278
+ declare function signalUpdateFn<T>(node: SignalNode<T>, updater: (value: T) => T): void;
279
+ declare function runPostSignalSetFn<T>(node: SignalNode<T>): void;
280
+ declare const SIGNAL_NODE: SignalNode<unknown>;
316
281
 
282
+ declare function setThrowInvalidWriteToSignalError(fn: <T>(node: SignalNode<T>) => never): void;
317
283
 
318
- declare type Version = number & {
319
- __brand: 'Version';
320
- };
321
-
322
- export declare interface Watch {
284
+ /**
285
+ * A cleanup function that can be optionally registered from the watch logic. If registered, the
286
+ * cleanup logic runs before the next watch execution.
287
+ */
288
+ type WatchCleanupFn = () => void;
289
+ /**
290
+ * A callback passed to the watch function that makes it possible to register cleanup logic.
291
+ */
292
+ type WatchCleanupRegisterFn = (cleanupFn: WatchCleanupFn) => void;
293
+ interface Watch {
323
294
  notify(): void;
324
295
  /**
325
296
  * Execute the reactive expression in the context of this `Watch` consumer.
@@ -337,24 +308,19 @@ export declare interface Watch {
337
308
  destroy(): void;
338
309
  [SIGNAL]: WatchNode;
339
310
  }
340
-
341
- /**
342
- * A cleanup function that can be optionally registered from the watch logic. If registered, the
343
- * cleanup logic runs before the next watch execution.
344
- */
345
- export declare type WatchCleanupFn = () => void;
346
-
347
- /**
348
- * A callback passed to the watch function that makes it possible to register cleanup logic.
349
- */
350
- export declare type WatchCleanupRegisterFn = (cleanupFn: WatchCleanupFn) => void;
351
-
352
- declare interface WatchNode extends ReactiveNode {
311
+ interface WatchNode extends ReactiveNode {
353
312
  hasRun: boolean;
354
313
  fn: ((onCleanup: WatchCleanupRegisterFn) => void) | null;
355
314
  schedule: ((watch: Watch) => void) | null;
356
315
  cleanupFn: WatchCleanupFn;
357
316
  ref: Watch;
358
317
  }
318
+ declare function createWatch(fn: (onCleanup: WatchCleanupRegisterFn) => void, schedule: (watch: Watch) => void, allowSignalWrites: boolean): Watch;
319
+
320
+ /**
321
+ * Execute an arbitrary function in a non-reactive (non-tracking) context. The executed function
322
+ * can, optionally, return a value.
323
+ */
324
+ declare function untracked<T>(nonReactiveReadsFn: () => T): T;
359
325
 
360
- export { }
326
+ export { type ComputationFn, type ComputedNode, type LinkedSignalGetter, type LinkedSignalNode, REACTIVE_NODE, type Reactive, type ReactiveHookFn, type ReactiveNode, SIGNAL, SIGNAL_NODE, type SignalGetter, type SignalNode, type ValueEqualityFn, type Watch, type WatchCleanupFn, type WatchCleanupRegisterFn, consumerAfterComputation, consumerBeforeComputation, consumerDestroy, consumerMarkDirty, consumerPollProducersForChange, createComputed, createLinkedSignal, createSignal, createWatch, defaultEquals, getActiveConsumer, isInNotificationPhase, isReactive, linkedSignalSetFn, linkedSignalUpdateFn, producerAccessed, producerIncrementEpoch, producerMarkClean, producerNotifyConsumers, producerUpdateValueVersion, producerUpdatesAllowed, runPostProducerCreatedFn, runPostSignalSetFn, setActiveConsumer, setPostProducerCreatedFn, setPostSignalSetFn, setThrowInvalidWriteToSignalError, signalSetFn, signalUpdateFn, untracked };
@@ -1,21 +1,11 @@
1
1
  /**
2
- * @license Angular v20.0.0-next.1
2
+ * @license Angular v20.0.0-next.3
3
3
  * (c) 2010-2025 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
6
6
 
7
-
8
- import { BaseResourceOptions } from '@angular/core';
9
- import { DestroyRef } from '@angular/core';
10
- import { Injector } from '@angular/core';
11
- import { MonoTypeOperatorFunction } from 'rxjs';
12
- import { Observable } from 'rxjs';
13
- import { OutputOptions } from '@angular/core';
14
- import { OutputRef } from '@angular/core';
15
- import { ResourceLoaderParams } from '@angular/core';
16
- import { ResourceRef } from '@angular/core';
17
- import { Signal } from '@angular/core';
18
- import { Subscribable } from 'rxjs';
7
+ import { OutputOptions, OutputRef, DestroyRef, Signal, Injector, BaseResourceOptions, ResourceLoaderParams, ResourceRef } from '@angular/core';
8
+ import { Observable, MonoTypeOperatorFunction, Subscribable } from 'rxjs';
19
9
  import { ValueEqualityFn } from '@angular/core/primitives/signals';
20
10
 
21
11
  /**
@@ -42,7 +32,7 @@ import { ValueEqualityFn } from '@angular/core/primitives/signals';
42
32
  *
43
33
  * @publicApi
44
34
  */
45
- export declare function outputFromObservable<T>(observable: Observable<T>, opts?: OutputOptions): OutputRef<T>;
35
+ declare function outputFromObservable<T>(observable: Observable<T>, opts?: OutputOptions): OutputRef<T>;
46
36
 
47
37
  /**
48
38
  * Converts an Angular output declared via `output()` or `outputFromObservable()`
@@ -52,45 +42,7 @@ export declare function outputFromObservable<T>(observable: Observable<T>, opts?
52
42
  *
53
43
  * @publicApi
54
44
  */
55
- export declare function outputToObservable<T>(ref: OutputRef<T>): Observable<T>;
56
-
57
- /**
58
- * Operator which makes the application unstable until the observable emits, complets, errors, or is unsubscribed.
59
- *
60
- * Use this operator in observables whose subscriptions are important for rendering and should be included in SSR serialization.
61
- *
62
- * @param injector The `Injector` to use during creation. If this is not provided, the current injection context will be used instead (via `inject`).
63
- *
64
- * @experimental
65
- */
66
- export declare function pendingUntilEvent<T>(injector?: Injector): MonoTypeOperatorFunction<T>;
67
-
68
- /**
69
- * Like `resource` but uses an RxJS based `loader` which maps the request to an `Observable` of the
70
- * resource's value.
71
- *
72
- * @experimental
73
- */
74
- export declare function rxResource<T, R>(opts: RxResourceOptions<T, R> & {
75
- defaultValue: NoInfer<T>;
76
- }): ResourceRef<T>;
77
-
78
- /**
79
- * Like `resource` but uses an RxJS based `loader` which maps the request to an `Observable` of the
80
- * resource's value.
81
- *
82
- * @experimental
83
- */
84
- export declare function rxResource<T, R>(opts: RxResourceOptions<T, R>): ResourceRef<T | undefined>;
85
-
86
- /**
87
- * Like `ResourceOptions` but uses an RxJS-based `loader`.
88
- *
89
- * @experimental
90
- */
91
- export declare interface RxResourceOptions<T, R> extends BaseResourceOptions<T, R> {
92
- loader: (params: ResourceLoaderParams<R>) => Observable<T>;
93
- }
45
+ declare function outputToObservable<T>(ref: OutputRef<T>): Observable<T>;
94
46
 
95
47
  /**
96
48
  * Operator which completes the Observable when the calling context (component, directive, service,
@@ -102,25 +54,14 @@ export declare interface RxResourceOptions<T, R> extends BaseResourceOptions<T,
102
54
  *
103
55
  * @publicApi
104
56
  */
105
- export declare function takeUntilDestroyed<T>(destroyRef?: DestroyRef): MonoTypeOperatorFunction<T>;
106
-
107
- /**
108
- * Exposes the value of an Angular `Signal` as an RxJS `Observable`.
109
- *
110
- * The signal's value will be propagated into the `Observable`'s subscribers using an `effect`.
111
- *
112
- * `toObservable` must be called in an injection context unless an injector is provided via options.
113
- *
114
- * @developerPreview
115
- */
116
- export declare function toObservable<T>(source: Signal<T>, options?: ToObservableOptions): Observable<T>;
57
+ declare function takeUntilDestroyed<T>(destroyRef?: DestroyRef): MonoTypeOperatorFunction<T>;
117
58
 
118
59
  /**
119
60
  * Options for `toObservable`.
120
61
  *
121
62
  * @developerPreview
122
63
  */
123
- export declare interface ToObservableOptions {
64
+ interface ToObservableOptions {
124
65
  /**
125
66
  * The `Injector` to use when creating the underlying `effect` which watches the signal.
126
67
  *
@@ -129,35 +70,23 @@ export declare interface ToObservableOptions {
129
70
  */
130
71
  injector?: Injector;
131
72
  }
132
-
133
- export declare function toSignal<T>(source: Observable<T> | Subscribable<T>): Signal<T | undefined>;
134
-
135
- export declare function toSignal<T>(source: Observable<T> | Subscribable<T>, options: NoInfer<ToSignalOptions<T | undefined>> & {
136
- initialValue?: undefined;
137
- requireSync?: false;
138
- }): Signal<T | undefined>;
139
-
140
- export declare function toSignal<T>(source: Observable<T> | Subscribable<T>, options: NoInfer<ToSignalOptions<T | null>> & {
141
- initialValue?: null;
142
- requireSync?: false;
143
- }): Signal<T | null>;
144
-
145
- export declare function toSignal<T>(source: Observable<T> | Subscribable<T>, options: NoInfer<ToSignalOptions<T>> & {
146
- initialValue?: undefined;
147
- requireSync: true;
148
- }): Signal<T>;
149
-
150
- export declare function toSignal<T, const U extends T>(source: Observable<T> | Subscribable<T>, options: NoInfer<ToSignalOptions<T | U>> & {
151
- initialValue: U;
152
- requireSync?: false;
153
- }): Signal<T | U>;
73
+ /**
74
+ * Exposes the value of an Angular `Signal` as an RxJS `Observable`.
75
+ *
76
+ * The signal's value will be propagated into the `Observable`'s subscribers using an `effect`.
77
+ *
78
+ * `toObservable` must be called in an injection context unless an injector is provided via options.
79
+ *
80
+ * @developerPreview
81
+ */
82
+ declare function toObservable<T>(source: Signal<T>, options?: ToObservableOptions): Observable<T>;
154
83
 
155
84
  /**
156
85
  * Options for `toSignal`.
157
86
  *
158
87
  * @publicApi
159
88
  */
160
- export declare interface ToSignalOptions<T> {
89
+ interface ToSignalOptions<T> {
161
90
  /**
162
91
  * Initial value for the signal produced by `toSignal`.
163
92
  *
@@ -188,15 +117,6 @@ export declare interface ToSignalOptions<T> {
188
117
  * until the `Observable` itself completes.
189
118
  */
190
119
  manualCleanup?: boolean;
191
- /**
192
- * Whether `toSignal` should throw errors from the Observable error channel back to RxJS, where
193
- * they'll be processed as uncaught exceptions.
194
- *
195
- * In practice, this means that the signal returned by `toSignal` will keep returning the last
196
- * good value forever, as Observables which error produce no further values. This option emulates
197
- * the behavior of the `async` pipe.
198
- */
199
- rejectErrors?: boolean;
200
120
  /**
201
121
  * A comparison function which defines equality for values emitted by the observable.
202
122
  *
@@ -204,7 +124,58 @@ export declare interface ToSignalOptions<T> {
204
124
  */
205
125
  equal?: ValueEqualityFn<T>;
206
126
  }
127
+ declare function toSignal<T>(source: Observable<T> | Subscribable<T>): Signal<T | undefined>;
128
+ declare function toSignal<T>(source: Observable<T> | Subscribable<T>, options: NoInfer<ToSignalOptions<T | undefined>> & {
129
+ initialValue?: undefined;
130
+ requireSync?: false;
131
+ }): Signal<T | undefined>;
132
+ declare function toSignal<T>(source: Observable<T> | Subscribable<T>, options: NoInfer<ToSignalOptions<T | null>> & {
133
+ initialValue?: null;
134
+ requireSync?: false;
135
+ }): Signal<T | null>;
136
+ declare function toSignal<T>(source: Observable<T> | Subscribable<T>, options: NoInfer<ToSignalOptions<T>> & {
137
+ initialValue?: undefined;
138
+ requireSync: true;
139
+ }): Signal<T>;
140
+ declare function toSignal<T, const U extends T>(source: Observable<T> | Subscribable<T>, options: NoInfer<ToSignalOptions<T | U>> & {
141
+ initialValue: U;
142
+ requireSync?: false;
143
+ }): Signal<T | U>;
144
+
145
+ /**
146
+ * Operator which makes the application unstable until the observable emits, complets, errors, or is unsubscribed.
147
+ *
148
+ * Use this operator in observables whose subscriptions are important for rendering and should be included in SSR serialization.
149
+ *
150
+ * @param injector The `Injector` to use during creation. If this is not provided, the current injection context will be used instead (via `inject`).
151
+ *
152
+ * @experimental
153
+ */
154
+ declare function pendingUntilEvent<T>(injector?: Injector): MonoTypeOperatorFunction<T>;
207
155
 
208
- export declare function ɵtoObservableMicrotask<T>(source: Signal<T>, options?: ToObservableOptions): Observable<T>;
156
+ /**
157
+ * Like `ResourceOptions` but uses an RxJS-based `loader`.
158
+ *
159
+ * @experimental
160
+ */
161
+ interface RxResourceOptions<T, R> extends BaseResourceOptions<T, R> {
162
+ loader: (params: ResourceLoaderParams<R>) => Observable<T>;
163
+ }
164
+ /**
165
+ * Like `resource` but uses an RxJS based `loader` which maps the request to an `Observable` of the
166
+ * resource's value.
167
+ *
168
+ * @experimental
169
+ */
170
+ declare function rxResource<T, R>(opts: RxResourceOptions<T, R> & {
171
+ defaultValue: NoInfer<T>;
172
+ }): ResourceRef<T>;
173
+ /**
174
+ * Like `resource` but uses an RxJS based `loader` which maps the request to an `Observable` of the
175
+ * resource's value.
176
+ *
177
+ * @experimental
178
+ */
179
+ declare function rxResource<T, R>(opts: RxResourceOptions<T, R>): ResourceRef<T | undefined>;
209
180
 
210
- export { }
181
+ export { type RxResourceOptions, type ToObservableOptions, type ToSignalOptions, outputFromObservable, outputToObservable, pendingUntilEvent, rxResource, takeUntilDestroyed, toObservable, toSignal };