@angular/core 20.0.0-next.4 → 20.0.0-next.6
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/api.d-DQLNOR5l.d.ts +297 -0
- package/discovery.d-CFs2MaLO.d.ts +7383 -0
- package/{event_dispatcher.d-pVP0-wST.d.ts → event_dispatcher.d-DlbccpYq.d.ts} +3 -2
- package/fesm2022/attribute-BWp59EjE.mjs +24 -0
- package/fesm2022/attribute-BWp59EjE.mjs.map +1 -0
- package/fesm2022/core.mjs +586 -36873
- package/fesm2022/core.mjs.map +1 -1
- package/fesm2022/debug_node-z_3NG8qT.mjs +32079 -0
- package/fesm2022/debug_node-z_3NG8qT.mjs.map +1 -0
- package/fesm2022/primitives/di.mjs +18 -4
- package/fesm2022/primitives/di.mjs.map +1 -1
- package/fesm2022/primitives/event-dispatch.mjs +2 -16
- package/fesm2022/primitives/event-dispatch.mjs.map +1 -1
- package/fesm2022/primitives/signals.mjs +5 -3
- package/fesm2022/primitives/signals.mjs.map +1 -1
- package/fesm2022/resource-CPPwEcg7.mjs +619 -0
- package/fesm2022/resource-CPPwEcg7.mjs.map +1 -0
- package/fesm2022/root_effect_scheduler-VSXfCzDX.mjs +3847 -0
- package/fesm2022/root_effect_scheduler-VSXfCzDX.mjs.map +1 -0
- package/fesm2022/rxjs-interop.mjs +16 -9
- package/fesm2022/rxjs-interop.mjs.map +1 -1
- package/fesm2022/{untracked-DkcXpNb_.mjs → signal-B6pMq7KS.mjs} +16 -114
- package/fesm2022/signal-B6pMq7KS.mjs.map +1 -0
- package/fesm2022/testing.mjs +265 -201
- package/fesm2022/testing.mjs.map +1 -1
- package/fesm2022/untracked-Bz5WMeU1.mjs +117 -0
- package/fesm2022/untracked-Bz5WMeU1.mjs.map +1 -0
- package/fesm2022/weak_ref-BaIq-pgY.mjs +12 -0
- package/fesm2022/weak_ref-BaIq-pgY.mjs.map +1 -0
- package/{weak_ref.d-BZ7gyRag.d.ts → graph.d-BcIOep_B.d.ts} +3 -24
- package/index.d.ts +2624 -10909
- package/ng_i18n_closure_mode.d-C9d2CaSt.d.ts +832 -0
- package/package.json +3 -3
- package/primitives/di/index.d.ts +3 -2
- package/primitives/event-dispatch/index.d.ts +3 -3
- package/primitives/signals/index.d.ts +8 -4
- package/rxjs-interop/index.d.ts +10 -7
- package/schematics/bundles/{apply_import_manager-CeNv8GIG.js → apply_import_manager-DnMqg1pY.js} +6 -6
- package/schematics/bundles/{compiler_host-DwM3ugW3.js → change_tracker-UMPkv-eH.js} +3 -121
- package/schematics/bundles/checker-BFBQyesT.js +17719 -0
- package/schematics/bundles/cleanup-unused-imports.js +25 -19
- package/schematics/bundles/{checker-k591b6WQ.js → compiler-BQ7R7w2v.js} +1325 -18286
- package/schematics/bundles/compiler_host-CAfDJO3W.js +129 -0
- package/schematics/bundles/control-flow-migration.js +28 -40
- package/schematics/bundles/document-core.js +96 -0
- package/schematics/bundles/imports-CIX-JgAN.js +1 -1
- package/schematics/bundles/{index-B4OAlHh8.js → index-Cv4Q415G.js} +641 -547
- package/schematics/bundles/{index-BhELUmYx.js → index-D8tMJPKa.js} +35 -34
- package/schematics/bundles/inject-flags.js +14 -13
- package/schematics/bundles/inject-migration.js +29 -10
- package/schematics/bundles/leading_space-D9nQ8UQC.js +1 -1
- package/schematics/bundles/{migrate_ts_type_references-Be0TNYen.js → migrate_ts_type_references-Cq_ZBuT4.js} +21 -20
- package/schematics/bundles/ng_decorators-DznZ5jMl.js +1 -1
- package/schematics/bundles/nodes-B16H9JUd.js +1 -1
- package/schematics/bundles/output-migration.js +88 -25
- package/schematics/bundles/{run_in_devkit-CkvEksWP.js → project_paths-ql6qcf_c.js} +254 -243
- package/schematics/bundles/project_tsconfig_paths-CDVxT6Ov.js +1 -1
- package/schematics/bundles/property_name-BBwFuqMe.js +1 -1
- package/schematics/bundles/route-lazy-loading.js +7 -5
- package/schematics/bundles/self-closing-tags-migration.js +25 -19
- package/schematics/bundles/signal-input-migration.js +26 -20
- package/schematics/bundles/signal-queries-migration.js +51 -33
- package/schematics/bundles/signals.js +8 -7
- package/schematics/bundles/standalone-migration.js +11 -9
- package/schematics/bundles/symbol-VPWguRxr.js +1 -1
- package/schematics/bundles/test-bed-get.js +13 -12
- package/schematics/collection.json +0 -6
- package/schematics/migrations.json +11 -0
- package/signal.d-E0e5nW1p.d.ts +31 -0
- package/testing/index.d.ts +16 -28
- package/weak_ref.d-eGOEP9S1.d.ts +9 -0
- package/fesm2022/injector-BlLwZ2sr.mjs +0 -24
- package/fesm2022/injector-BlLwZ2sr.mjs.map +0 -1
- package/fesm2022/untracked-DkcXpNb_.mjs.map +0 -1
- package/navigation_types.d-DgDrF5rp.d.ts +0 -121
- package/schematics/ng-generate/control-flow-migration/schema.json +0 -20
|
@@ -0,0 +1,832 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license Angular v20.0.0-next.6
|
|
3
|
+
* (c) 2010-2025 Google LLC. https://angular.io/
|
|
4
|
+
* License: MIT
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { SIGNAL } from './graph.d-BcIOep_B.js';
|
|
8
|
+
import { EventContract } from './event_dispatcher.d-DlbccpYq.js';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* A reactive value which notifies consumers of any changes.
|
|
12
|
+
*
|
|
13
|
+
* Signals are functions which returns their current value. To access the current value of a signal,
|
|
14
|
+
* call it.
|
|
15
|
+
*
|
|
16
|
+
* Ordinary values can be turned into `Signal`s with the `signal` function.
|
|
17
|
+
*/
|
|
18
|
+
type Signal<T> = (() => T) & {
|
|
19
|
+
[SIGNAL]: unknown;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Checks if the given `value` is a reactive `Signal`.
|
|
23
|
+
*/
|
|
24
|
+
declare function isSignal(value: unknown): value is Signal<unknown>;
|
|
25
|
+
/**
|
|
26
|
+
* A comparison function which can determine if two values are equal.
|
|
27
|
+
*/
|
|
28
|
+
type ValueEqualityFn<T> = (a: T, b: T) => boolean;
|
|
29
|
+
|
|
30
|
+
/** Symbol used distinguish `WritableSignal` from other non-writable signals and functions. */
|
|
31
|
+
declare const ɵWRITABLE_SIGNAL: unique symbol;
|
|
32
|
+
/**
|
|
33
|
+
* A `Signal` with a value that can be mutated via a setter interface.
|
|
34
|
+
*/
|
|
35
|
+
interface WritableSignal<T> extends Signal<T> {
|
|
36
|
+
[ɵWRITABLE_SIGNAL]: T;
|
|
37
|
+
/**
|
|
38
|
+
* Directly set the signal to a new value, and notify any dependents.
|
|
39
|
+
*/
|
|
40
|
+
set(value: T): void;
|
|
41
|
+
/**
|
|
42
|
+
* Update the value of the signal based on its current value, and
|
|
43
|
+
* notify any dependents.
|
|
44
|
+
*/
|
|
45
|
+
update(updateFn: (value: T) => T): void;
|
|
46
|
+
/**
|
|
47
|
+
* Returns a readonly version of this signal. Readonly signals can be accessed to read their value
|
|
48
|
+
* but can't be changed using set or update methods. The readonly signals do _not_ have
|
|
49
|
+
* any built-in mechanism that would prevent deep-mutation of their value.
|
|
50
|
+
*/
|
|
51
|
+
asReadonly(): Signal<T>;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Utility function used during template type checking to extract the value from a `WritableSignal`.
|
|
55
|
+
* @codeGenApi
|
|
56
|
+
*/
|
|
57
|
+
declare function ɵunwrapWritableSignal<T>(value: T | {
|
|
58
|
+
[ɵWRITABLE_SIGNAL]: T;
|
|
59
|
+
}): T;
|
|
60
|
+
/**
|
|
61
|
+
* Options passed to the `signal` creation function.
|
|
62
|
+
*/
|
|
63
|
+
interface CreateSignalOptions<T> {
|
|
64
|
+
/**
|
|
65
|
+
* A comparison function which defines equality for signal values.
|
|
66
|
+
*/
|
|
67
|
+
equal?: ValueEqualityFn<T>;
|
|
68
|
+
/**
|
|
69
|
+
* A debug name for the signal. Used in Angular DevTools to identify the signal.
|
|
70
|
+
*/
|
|
71
|
+
debugName?: string;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Create a `Signal` that can be set or updated directly.
|
|
75
|
+
*/
|
|
76
|
+
declare function signal<T>(initialValue: T, options?: CreateSignalOptions<T>): WritableSignal<T>;
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Function that can be used to manually clean up a
|
|
80
|
+
* programmatic {@link OutputRef#subscribe} subscription.
|
|
81
|
+
*
|
|
82
|
+
* Note: Angular will automatically clean up subscriptions
|
|
83
|
+
* when the directive/component of the output is destroyed.
|
|
84
|
+
*
|
|
85
|
+
* @publicAPI
|
|
86
|
+
*/
|
|
87
|
+
interface OutputRefSubscription {
|
|
88
|
+
unsubscribe(): void;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* A reference to an Angular output.
|
|
92
|
+
*
|
|
93
|
+
* @publicAPI
|
|
94
|
+
*/
|
|
95
|
+
interface OutputRef<T> {
|
|
96
|
+
/**
|
|
97
|
+
* Registers a callback that is invoked whenever the output
|
|
98
|
+
* emits a new value of type `T`.
|
|
99
|
+
*
|
|
100
|
+
* Angular will automatically clean up the subscription when
|
|
101
|
+
* the directive/component of the output is destroyed.
|
|
102
|
+
*/
|
|
103
|
+
subscribe(callback: (value: T) => void): OutputRefSubscription;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* @description
|
|
108
|
+
*
|
|
109
|
+
* Represents an abstract class `T`, if applied to a concrete class it would stop being
|
|
110
|
+
* instantiable.
|
|
111
|
+
*
|
|
112
|
+
* @publicApi
|
|
113
|
+
*/
|
|
114
|
+
interface AbstractType<T> extends Function {
|
|
115
|
+
prototype: T;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* @description
|
|
119
|
+
*
|
|
120
|
+
* Represents a type that a Component or other object is instances of.
|
|
121
|
+
*
|
|
122
|
+
* An example of a `Type` is `MyCustomComponent` class, which in JavaScript is represented by
|
|
123
|
+
* the `MyCustomComponent` constructor function.
|
|
124
|
+
*
|
|
125
|
+
* @publicApi
|
|
126
|
+
*/
|
|
127
|
+
declare const Type: FunctionConstructor;
|
|
128
|
+
interface Type<T> extends Function {
|
|
129
|
+
new (...args: any[]): T;
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Returns a writable type version of type.
|
|
133
|
+
*
|
|
134
|
+
* USAGE:
|
|
135
|
+
* Given:
|
|
136
|
+
* ```ts
|
|
137
|
+
* interface Person {readonly name: string}
|
|
138
|
+
* ```
|
|
139
|
+
*
|
|
140
|
+
* We would like to get a read/write version of `Person`.
|
|
141
|
+
* ```ts
|
|
142
|
+
* const WritablePerson = Writable<Person>;
|
|
143
|
+
* ```
|
|
144
|
+
*
|
|
145
|
+
* The result is that you can do:
|
|
146
|
+
*
|
|
147
|
+
* ```ts
|
|
148
|
+
* const readonlyPerson: Person = {name: 'Marry'};
|
|
149
|
+
* readonlyPerson.name = 'John'; // TypeError
|
|
150
|
+
* (readonlyPerson as WritablePerson).name = 'John'; // OK
|
|
151
|
+
*
|
|
152
|
+
* // Error: Correctly detects that `Person` did not have `age` property.
|
|
153
|
+
* (readonlyPerson as WritablePerson).age = 30;
|
|
154
|
+
* ```
|
|
155
|
+
*/
|
|
156
|
+
type Writable<T> = {
|
|
157
|
+
-readonly [K in keyof T]: T[K];
|
|
158
|
+
};
|
|
159
|
+
|
|
160
|
+
/**
|
|
161
|
+
* Creates a token that can be used in a DI Provider.
|
|
162
|
+
*
|
|
163
|
+
* Use an `InjectionToken` whenever the type you are injecting is not reified (does not have a
|
|
164
|
+
* runtime representation) such as when injecting an interface, callable type, array or
|
|
165
|
+
* parameterized type.
|
|
166
|
+
*
|
|
167
|
+
* `InjectionToken` is parameterized on `T` which is the type of object which will be returned by
|
|
168
|
+
* the `Injector`. This provides an additional level of type safety.
|
|
169
|
+
*
|
|
170
|
+
* <div class="docs-alert docs-alert-helpful">
|
|
171
|
+
*
|
|
172
|
+
* **Important Note**: Ensure that you use the same instance of the `InjectionToken` in both the
|
|
173
|
+
* provider and the injection call. Creating a new instance of `InjectionToken` in different places,
|
|
174
|
+
* even with the same description, will be treated as different tokens by Angular's DI system,
|
|
175
|
+
* leading to a `NullInjectorError`.
|
|
176
|
+
*
|
|
177
|
+
* </div>
|
|
178
|
+
*
|
|
179
|
+
* {@example injection-token/src/main.ts region='InjectionToken'}
|
|
180
|
+
*
|
|
181
|
+
* When creating an `InjectionToken`, you can optionally specify a factory function which returns
|
|
182
|
+
* (possibly by creating) a default value of the parameterized type `T`. This sets up the
|
|
183
|
+
* `InjectionToken` using this factory as a provider as if it was defined explicitly in the
|
|
184
|
+
* application's root injector. If the factory function, which takes zero arguments, needs to inject
|
|
185
|
+
* dependencies, it can do so using the [`inject`](api/core/inject) function.
|
|
186
|
+
* As you can see in the Tree-shakable InjectionToken example below.
|
|
187
|
+
*
|
|
188
|
+
* Additionally, if a `factory` is specified you can also specify the `providedIn` option, which
|
|
189
|
+
* overrides the above behavior and marks the token as belonging to a particular `@NgModule` (note:
|
|
190
|
+
* this option is now deprecated). As mentioned above, `'root'` is the default value for
|
|
191
|
+
* `providedIn`.
|
|
192
|
+
*
|
|
193
|
+
* The `providedIn: NgModule` and `providedIn: 'any'` options are deprecated.
|
|
194
|
+
*
|
|
195
|
+
* @usageNotes
|
|
196
|
+
* ### Basic Examples
|
|
197
|
+
*
|
|
198
|
+
* ### Plain InjectionToken
|
|
199
|
+
*
|
|
200
|
+
* {@example core/di/ts/injector_spec.ts region='InjectionToken'}
|
|
201
|
+
*
|
|
202
|
+
* ### Tree-shakable InjectionToken
|
|
203
|
+
*
|
|
204
|
+
* {@example core/di/ts/injector_spec.ts region='ShakableInjectionToken'}
|
|
205
|
+
*
|
|
206
|
+
* @publicApi
|
|
207
|
+
*/
|
|
208
|
+
declare class InjectionToken<T> {
|
|
209
|
+
protected _desc: string;
|
|
210
|
+
readonly ɵprov: unknown;
|
|
211
|
+
/**
|
|
212
|
+
* @param _desc Description for the token,
|
|
213
|
+
* used only for debugging purposes,
|
|
214
|
+
* it should but does not need to be unique
|
|
215
|
+
* @param options Options for the token's usage, as described above
|
|
216
|
+
*/
|
|
217
|
+
constructor(_desc: string, options?: {
|
|
218
|
+
providedIn?: Type<any> | 'root' | 'platform' | 'any' | null;
|
|
219
|
+
factory: () => T;
|
|
220
|
+
});
|
|
221
|
+
toString(): string;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
/**
|
|
225
|
+
* Configures the `Injector` to return a value for a token.
|
|
226
|
+
* Base for `ValueProvider` decorator.
|
|
227
|
+
*
|
|
228
|
+
* @publicApi
|
|
229
|
+
*/
|
|
230
|
+
interface ValueSansProvider {
|
|
231
|
+
/**
|
|
232
|
+
* The value to inject.
|
|
233
|
+
*/
|
|
234
|
+
useValue: any;
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Configures the `Injector` to return a value for a token.
|
|
238
|
+
* @see [Dependency Injection Guide](guide/di/dependency-injection.
|
|
239
|
+
*
|
|
240
|
+
* @usageNotes
|
|
241
|
+
*
|
|
242
|
+
* ### Example
|
|
243
|
+
*
|
|
244
|
+
* {@example core/di/ts/provider_spec.ts region='ValueProvider'}
|
|
245
|
+
*
|
|
246
|
+
* ### Multi-value example
|
|
247
|
+
*
|
|
248
|
+
* {@example core/di/ts/provider_spec.ts region='MultiProviderAspect'}
|
|
249
|
+
*
|
|
250
|
+
* @publicApi
|
|
251
|
+
*/
|
|
252
|
+
interface ValueProvider extends ValueSansProvider {
|
|
253
|
+
/**
|
|
254
|
+
* An injection token. Typically an instance of `Type` or `InjectionToken`, but can be `any`.
|
|
255
|
+
*/
|
|
256
|
+
provide: any;
|
|
257
|
+
/**
|
|
258
|
+
* When true, injector returns an array of instances. This is useful to allow multiple
|
|
259
|
+
* providers spread across many files to provide configuration information to a common token.
|
|
260
|
+
*/
|
|
261
|
+
multi?: boolean;
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Configures the `Injector` to return an instance of `useClass` for a token.
|
|
265
|
+
* Base for `StaticClassProvider` decorator.
|
|
266
|
+
*
|
|
267
|
+
* @publicApi
|
|
268
|
+
*/
|
|
269
|
+
interface StaticClassSansProvider {
|
|
270
|
+
/**
|
|
271
|
+
* An optional class to instantiate for the `token`. By default, the `provide`
|
|
272
|
+
* class is instantiated.
|
|
273
|
+
*/
|
|
274
|
+
useClass: Type<any>;
|
|
275
|
+
/**
|
|
276
|
+
* A list of `token`s to be resolved by the injector. The list of values is then
|
|
277
|
+
* used as arguments to the `useClass` constructor.
|
|
278
|
+
*/
|
|
279
|
+
deps: any[];
|
|
280
|
+
}
|
|
281
|
+
/**
|
|
282
|
+
* Configures the `Injector` to return an instance of `useClass` for a token.
|
|
283
|
+
* @see [Dependency Injection Guide](guide/di/dependency-injection.
|
|
284
|
+
*
|
|
285
|
+
* @usageNotes
|
|
286
|
+
*
|
|
287
|
+
* {@example core/di/ts/provider_spec.ts region='StaticClassProvider'}
|
|
288
|
+
*
|
|
289
|
+
* Note that following two providers are not equal:
|
|
290
|
+
*
|
|
291
|
+
* {@example core/di/ts/provider_spec.ts region='StaticClassProviderDifference'}
|
|
292
|
+
*
|
|
293
|
+
* ### Multi-value example
|
|
294
|
+
*
|
|
295
|
+
* {@example core/di/ts/provider_spec.ts region='MultiProviderAspect'}
|
|
296
|
+
*
|
|
297
|
+
* @publicApi
|
|
298
|
+
*/
|
|
299
|
+
interface StaticClassProvider extends StaticClassSansProvider {
|
|
300
|
+
/**
|
|
301
|
+
* An injection token. Typically an instance of `Type` or `InjectionToken`, but can be `any`.
|
|
302
|
+
*/
|
|
303
|
+
provide: any;
|
|
304
|
+
/**
|
|
305
|
+
* When true, injector returns an array of instances. This is useful to allow multiple
|
|
306
|
+
* providers spread across many files to provide configuration information to a common token.
|
|
307
|
+
*/
|
|
308
|
+
multi?: boolean;
|
|
309
|
+
}
|
|
310
|
+
/**
|
|
311
|
+
* Configures the `Injector` to return an instance of a token.
|
|
312
|
+
*
|
|
313
|
+
* @see [Dependency Injection Guide](guide/di/dependency-injection.
|
|
314
|
+
*
|
|
315
|
+
* @usageNotes
|
|
316
|
+
*
|
|
317
|
+
* ```ts
|
|
318
|
+
* @Injectable(SomeModule, {deps: []})
|
|
319
|
+
* class MyService {}
|
|
320
|
+
* ```
|
|
321
|
+
*
|
|
322
|
+
* @publicApi
|
|
323
|
+
*/
|
|
324
|
+
interface ConstructorSansProvider {
|
|
325
|
+
/**
|
|
326
|
+
* A list of `token`s to be resolved by the injector.
|
|
327
|
+
*/
|
|
328
|
+
deps?: any[];
|
|
329
|
+
}
|
|
330
|
+
/**
|
|
331
|
+
* Configures the `Injector` to return an instance of a token.
|
|
332
|
+
*
|
|
333
|
+
* @see [Dependency Injection Guide](guide/di/dependency-injection.
|
|
334
|
+
*
|
|
335
|
+
* @usageNotes
|
|
336
|
+
*
|
|
337
|
+
* {@example core/di/ts/provider_spec.ts region='ConstructorProvider'}
|
|
338
|
+
*
|
|
339
|
+
* ### Multi-value example
|
|
340
|
+
*
|
|
341
|
+
* {@example core/di/ts/provider_spec.ts region='MultiProviderAspect'}
|
|
342
|
+
*
|
|
343
|
+
* @publicApi
|
|
344
|
+
*/
|
|
345
|
+
interface ConstructorProvider extends ConstructorSansProvider {
|
|
346
|
+
/**
|
|
347
|
+
* An injection token. Typically an instance of `Type` or `InjectionToken`, but can be `any`.
|
|
348
|
+
*/
|
|
349
|
+
provide: Type<any>;
|
|
350
|
+
/**
|
|
351
|
+
* When true, injector returns an array of instances. This is useful to allow multiple
|
|
352
|
+
* providers spread across many files to provide configuration information to a common token.
|
|
353
|
+
*/
|
|
354
|
+
multi?: boolean;
|
|
355
|
+
}
|
|
356
|
+
/**
|
|
357
|
+
* Configures the `Injector` to return a value of another `useExisting` token.
|
|
358
|
+
*
|
|
359
|
+
* @see {@link ExistingProvider}
|
|
360
|
+
* @see [Dependency Injection Guide](guide/di/dependency-injection.
|
|
361
|
+
*
|
|
362
|
+
* @publicApi
|
|
363
|
+
*/
|
|
364
|
+
interface ExistingSansProvider {
|
|
365
|
+
/**
|
|
366
|
+
* Existing `token` to return. (Equivalent to `injector.get(useExisting)`)
|
|
367
|
+
*/
|
|
368
|
+
useExisting: any;
|
|
369
|
+
}
|
|
370
|
+
/**
|
|
371
|
+
* Configures the `Injector` to return a value of another `useExisting` token.
|
|
372
|
+
*
|
|
373
|
+
* @see [Dependency Injection Guide](guide/di/dependency-injection.
|
|
374
|
+
*
|
|
375
|
+
* @usageNotes
|
|
376
|
+
*
|
|
377
|
+
* {@example core/di/ts/provider_spec.ts region='ExistingProvider'}
|
|
378
|
+
*
|
|
379
|
+
* ### Multi-value example
|
|
380
|
+
*
|
|
381
|
+
* {@example core/di/ts/provider_spec.ts region='MultiProviderAspect'}
|
|
382
|
+
*
|
|
383
|
+
* @publicApi
|
|
384
|
+
*/
|
|
385
|
+
interface ExistingProvider extends ExistingSansProvider {
|
|
386
|
+
/**
|
|
387
|
+
* An injection token. Typically an instance of `Type` or `InjectionToken`, but can be `any`.
|
|
388
|
+
*/
|
|
389
|
+
provide: any;
|
|
390
|
+
/**
|
|
391
|
+
* When true, injector returns an array of instances. This is useful to allow multiple
|
|
392
|
+
* providers spread across many files to provide configuration information to a common token.
|
|
393
|
+
*/
|
|
394
|
+
multi?: boolean;
|
|
395
|
+
}
|
|
396
|
+
/**
|
|
397
|
+
* Configures the `Injector` to return a value by invoking a `useFactory` function.
|
|
398
|
+
*
|
|
399
|
+
* @see {@link FactoryProvider}
|
|
400
|
+
* @see [Dependency Injection Guide](guide/di/dependency-injection.
|
|
401
|
+
*
|
|
402
|
+
* @publicApi
|
|
403
|
+
*/
|
|
404
|
+
interface FactorySansProvider {
|
|
405
|
+
/**
|
|
406
|
+
* A function to invoke to create a value for this `token`. The function is invoked with
|
|
407
|
+
* resolved values of `token`s in the `deps` field.
|
|
408
|
+
*/
|
|
409
|
+
useFactory: Function;
|
|
410
|
+
/**
|
|
411
|
+
* A list of `token`s to be resolved by the injector. The list of values is then
|
|
412
|
+
* used as arguments to the `useFactory` function.
|
|
413
|
+
*/
|
|
414
|
+
deps?: any[];
|
|
415
|
+
}
|
|
416
|
+
/**
|
|
417
|
+
* Configures the `Injector` to return a value by invoking a `useFactory` function.
|
|
418
|
+
* @see [Dependency Injection Guide](guide/di/dependency-injection.
|
|
419
|
+
*
|
|
420
|
+
* @usageNotes
|
|
421
|
+
*
|
|
422
|
+
* {@example core/di/ts/provider_spec.ts region='FactoryProvider'}
|
|
423
|
+
*
|
|
424
|
+
* Dependencies can also be marked as optional:
|
|
425
|
+
*
|
|
426
|
+
* {@example core/di/ts/provider_spec.ts region='FactoryProviderOptionalDeps'}
|
|
427
|
+
*
|
|
428
|
+
* ### Multi-value example
|
|
429
|
+
*
|
|
430
|
+
* {@example core/di/ts/provider_spec.ts region='MultiProviderAspect'}
|
|
431
|
+
*
|
|
432
|
+
* @publicApi
|
|
433
|
+
*/
|
|
434
|
+
interface FactoryProvider extends FactorySansProvider {
|
|
435
|
+
/**
|
|
436
|
+
* An injection token. (Typically an instance of `Type` or `InjectionToken`, but can be `any`).
|
|
437
|
+
*/
|
|
438
|
+
provide: any;
|
|
439
|
+
/**
|
|
440
|
+
* When true, injector returns an array of instances. This is useful to allow multiple
|
|
441
|
+
* providers spread across many files to provide configuration information to a common token.
|
|
442
|
+
*/
|
|
443
|
+
multi?: boolean;
|
|
444
|
+
}
|
|
445
|
+
/**
|
|
446
|
+
* Describes how an `Injector` should be configured as static (that is, without reflection).
|
|
447
|
+
* A static provider provides tokens to an injector for various types of dependencies.
|
|
448
|
+
*
|
|
449
|
+
* @see {@link Injector.create()}
|
|
450
|
+
* @see [Dependency Injection Guide](guide/di/dependency-injection-providers).
|
|
451
|
+
*
|
|
452
|
+
* @publicApi
|
|
453
|
+
*/
|
|
454
|
+
type StaticProvider = ValueProvider | ExistingProvider | StaticClassProvider | ConstructorProvider | FactoryProvider | any[];
|
|
455
|
+
/**
|
|
456
|
+
* Configures the `Injector` to return an instance of `Type` when `Type' is used as the token.
|
|
457
|
+
*
|
|
458
|
+
* Create an instance by invoking the `new` operator and supplying additional arguments.
|
|
459
|
+
* This form is a short form of `TypeProvider`;
|
|
460
|
+
*
|
|
461
|
+
* For more details, see the ["Dependency Injection Guide"](guide/di/dependency-injection.
|
|
462
|
+
*
|
|
463
|
+
* @usageNotes
|
|
464
|
+
*
|
|
465
|
+
* {@example core/di/ts/provider_spec.ts region='TypeProvider'}
|
|
466
|
+
*
|
|
467
|
+
* @publicApi
|
|
468
|
+
*/
|
|
469
|
+
interface TypeProvider extends Type<any> {
|
|
470
|
+
}
|
|
471
|
+
/**
|
|
472
|
+
* Configures the `Injector` to return a value by invoking a `useClass` function.
|
|
473
|
+
* Base for `ClassProvider` decorator.
|
|
474
|
+
*
|
|
475
|
+
* @see [Dependency Injection Guide](guide/di/dependency-injection.
|
|
476
|
+
*
|
|
477
|
+
* @publicApi
|
|
478
|
+
*/
|
|
479
|
+
interface ClassSansProvider {
|
|
480
|
+
/**
|
|
481
|
+
* Class to instantiate for the `token`.
|
|
482
|
+
*/
|
|
483
|
+
useClass: Type<any>;
|
|
484
|
+
}
|
|
485
|
+
/**
|
|
486
|
+
* Configures the `Injector` to return an instance of `useClass` for a token.
|
|
487
|
+
* @see [Dependency Injection Guide](guide/di/dependency-injection.
|
|
488
|
+
*
|
|
489
|
+
* @usageNotes
|
|
490
|
+
*
|
|
491
|
+
* {@example core/di/ts/provider_spec.ts region='ClassProvider'}
|
|
492
|
+
*
|
|
493
|
+
* Note that following two providers are not equal:
|
|
494
|
+
*
|
|
495
|
+
* {@example core/di/ts/provider_spec.ts region='ClassProviderDifference'}
|
|
496
|
+
*
|
|
497
|
+
* ### Multi-value example
|
|
498
|
+
*
|
|
499
|
+
* {@example core/di/ts/provider_spec.ts region='MultiProviderAspect'}
|
|
500
|
+
*
|
|
501
|
+
* @publicApi
|
|
502
|
+
*/
|
|
503
|
+
interface ClassProvider extends ClassSansProvider {
|
|
504
|
+
/**
|
|
505
|
+
* An injection token. (Typically an instance of `Type` or `InjectionToken`, but can be `any`).
|
|
506
|
+
*/
|
|
507
|
+
provide: any;
|
|
508
|
+
/**
|
|
509
|
+
* When true, injector returns an array of instances. This is useful to allow multiple
|
|
510
|
+
* providers spread across many files to provide configuration information to a common token.
|
|
511
|
+
*/
|
|
512
|
+
multi?: boolean;
|
|
513
|
+
}
|
|
514
|
+
/**
|
|
515
|
+
* Describes how the `Injector` should be configured.
|
|
516
|
+
* @see [Dependency Injection Guide](guide/di/dependency-injection.
|
|
517
|
+
*
|
|
518
|
+
* @see {@link StaticProvider}
|
|
519
|
+
*
|
|
520
|
+
* @publicApi
|
|
521
|
+
*/
|
|
522
|
+
type Provider = TypeProvider | ValueProvider | ClassProvider | ConstructorProvider | ExistingProvider | FactoryProvider | any[];
|
|
523
|
+
/**
|
|
524
|
+
* Encapsulated `Provider`s that are only accepted during creation of an `EnvironmentInjector` (e.g.
|
|
525
|
+
* in an `NgModule`).
|
|
526
|
+
*
|
|
527
|
+
* Using this wrapper type prevents providers which are only designed to work in
|
|
528
|
+
* application/environment injectors from being accidentally included in
|
|
529
|
+
* `@Component.providers` and ending up in a component injector.
|
|
530
|
+
*
|
|
531
|
+
* This wrapper type prevents access to the `Provider`s inside.
|
|
532
|
+
*
|
|
533
|
+
* @see {@link makeEnvironmentProviders}
|
|
534
|
+
* @see {@link importProvidersFrom}
|
|
535
|
+
*
|
|
536
|
+
* @publicApi
|
|
537
|
+
*/
|
|
538
|
+
type EnvironmentProviders = {
|
|
539
|
+
ɵbrand: 'EnvironmentProviders';
|
|
540
|
+
};
|
|
541
|
+
interface InternalEnvironmentProviders extends EnvironmentProviders {
|
|
542
|
+
ɵproviders: (Provider | EnvironmentProviders)[];
|
|
543
|
+
/**
|
|
544
|
+
* If present, indicates that the `EnvironmentProviders` were derived from NgModule providers.
|
|
545
|
+
*
|
|
546
|
+
* This is used to produce clearer error messages.
|
|
547
|
+
*/
|
|
548
|
+
ɵfromNgModule?: true;
|
|
549
|
+
}
|
|
550
|
+
declare function isEnvironmentProviders(value: Provider | EnvironmentProviders | InternalEnvironmentProviders): value is InternalEnvironmentProviders;
|
|
551
|
+
/**
|
|
552
|
+
* Describes a function that is used to process provider lists (such as provider
|
|
553
|
+
* overrides).
|
|
554
|
+
*/
|
|
555
|
+
type ProcessProvidersFunction = (providers: Provider[]) => Provider[];
|
|
556
|
+
/**
|
|
557
|
+
* A wrapper around an NgModule that associates it with providers
|
|
558
|
+
* Usage without a generic type is deprecated.
|
|
559
|
+
*
|
|
560
|
+
* @publicApi
|
|
561
|
+
*/
|
|
562
|
+
interface ModuleWithProviders<T> {
|
|
563
|
+
ngModule: Type<T>;
|
|
564
|
+
providers?: Array<Provider | EnvironmentProviders>;
|
|
565
|
+
}
|
|
566
|
+
/**
|
|
567
|
+
* Providers that were imported from NgModules via the `importProvidersFrom` function.
|
|
568
|
+
*
|
|
569
|
+
* These providers are meant for use in an application injector (or other environment injectors) and
|
|
570
|
+
* should not be used in component injectors.
|
|
571
|
+
*
|
|
572
|
+
* This type cannot be directly implemented. It's returned from the `importProvidersFrom` function
|
|
573
|
+
* and serves to prevent the extracted NgModule providers from being used in the wrong contexts.
|
|
574
|
+
*
|
|
575
|
+
* @see {@link importProvidersFrom}
|
|
576
|
+
*
|
|
577
|
+
* @publicApi
|
|
578
|
+
* @deprecated replaced by `EnvironmentProviders`
|
|
579
|
+
*/
|
|
580
|
+
type ImportedNgModuleProviders = EnvironmentProviders;
|
|
581
|
+
|
|
582
|
+
declare global {
|
|
583
|
+
/**
|
|
584
|
+
* Values of ngDevMode
|
|
585
|
+
* Depending on the current state of the application, ngDevMode may have one of several values.
|
|
586
|
+
*
|
|
587
|
+
* For convenience, the “truthy” value which enables dev mode is also an object which contains
|
|
588
|
+
* Angular’s performance counters. This is not necessary, but cuts down on boilerplate for the
|
|
589
|
+
* perf counters.
|
|
590
|
+
*
|
|
591
|
+
* ngDevMode may also be set to false. This can happen in one of a few ways:
|
|
592
|
+
* - The user explicitly sets `window.ngDevMode = false` somewhere in their app.
|
|
593
|
+
* - The user calls `enableProdMode()`.
|
|
594
|
+
* - The URL contains a `ngDevMode=false` text.
|
|
595
|
+
* Finally, ngDevMode may not have been defined at all.
|
|
596
|
+
*/
|
|
597
|
+
const ngDevMode: null | NgDevModePerfCounters;
|
|
598
|
+
interface NgDevModePerfCounters {
|
|
599
|
+
hydratedNodes: number;
|
|
600
|
+
hydratedComponents: number;
|
|
601
|
+
dehydratedViewsRemoved: number;
|
|
602
|
+
dehydratedViewsCleanupRuns: number;
|
|
603
|
+
componentsSkippedHydration: number;
|
|
604
|
+
deferBlocksWithIncrementalHydration: number;
|
|
605
|
+
}
|
|
606
|
+
}
|
|
607
|
+
|
|
608
|
+
/**
|
|
609
|
+
* This enum is an exact copy of the `InjectFlags` enum above, but the difference is that this is a
|
|
610
|
+
* const enum, so actual enum values would be inlined in generated code. The `InjectFlags` enum can
|
|
611
|
+
* be turned into a const enum when ViewEngine is removed (see TODO at the `InjectFlags` enum
|
|
612
|
+
* above). The benefit of inlining is that we can use these flags at the top level without affecting
|
|
613
|
+
* tree-shaking (see "no-toplevel-property-access" tslint rule for more info).
|
|
614
|
+
* Keep this enum in sync with `InjectFlags` enum above.
|
|
615
|
+
*/
|
|
616
|
+
declare const enum InternalInjectFlags {
|
|
617
|
+
/** Check self and check parent injector if needed */
|
|
618
|
+
Default = 0,
|
|
619
|
+
/**
|
|
620
|
+
* Specifies that an injector should retrieve a dependency from any injector until reaching the
|
|
621
|
+
* host element of the current component. (Only used with Element Injector)
|
|
622
|
+
*/
|
|
623
|
+
Host = 1,
|
|
624
|
+
/** Don't ascend to ancestors of the node requesting injection. */
|
|
625
|
+
Self = 2,
|
|
626
|
+
/** Skip the node that is requesting injection. */
|
|
627
|
+
SkipSelf = 4,
|
|
628
|
+
/** Inject `defaultValue` instead if token not found. */
|
|
629
|
+
Optional = 8,
|
|
630
|
+
/**
|
|
631
|
+
* This token is being injected into a pipe.
|
|
632
|
+
*
|
|
633
|
+
* This flag is intentionally not in the public facing `InjectFlags` because it is only added by
|
|
634
|
+
* the compiler and is not a developer applicable flag.
|
|
635
|
+
*/
|
|
636
|
+
ForPipe = 16
|
|
637
|
+
}
|
|
638
|
+
/**
|
|
639
|
+
* Type of the options argument to [`inject`](api/core/inject).
|
|
640
|
+
*
|
|
641
|
+
* @publicApi
|
|
642
|
+
*/
|
|
643
|
+
interface InjectOptions {
|
|
644
|
+
/**
|
|
645
|
+
* Use optional injection, and return `null` if the requested token is not found.
|
|
646
|
+
*/
|
|
647
|
+
optional?: boolean;
|
|
648
|
+
/**
|
|
649
|
+
* Start injection at the parent of the current injector.
|
|
650
|
+
*/
|
|
651
|
+
skipSelf?: boolean;
|
|
652
|
+
/**
|
|
653
|
+
* Only query the current injector for the token, and don't fall back to the parent injector if
|
|
654
|
+
* it's not found.
|
|
655
|
+
*/
|
|
656
|
+
self?: boolean;
|
|
657
|
+
/**
|
|
658
|
+
* Stop injection at the host component's injector. Only relevant when injecting from an element
|
|
659
|
+
* injector, and a no-op for environment injectors.
|
|
660
|
+
*/
|
|
661
|
+
host?: boolean;
|
|
662
|
+
}
|
|
663
|
+
|
|
664
|
+
/**
|
|
665
|
+
* @description
|
|
666
|
+
*
|
|
667
|
+
* Token that can be used to retrieve an instance from an injector or through a query.
|
|
668
|
+
*
|
|
669
|
+
* @publicApi
|
|
670
|
+
*/
|
|
671
|
+
type ProviderToken<T> = Type<T> | AbstractType<T> | InjectionToken<T>;
|
|
672
|
+
|
|
673
|
+
/**
|
|
674
|
+
* Concrete injectors implement this interface. Injectors are configured
|
|
675
|
+
* with [providers](guide/di/dependency-injection-providers) that associate
|
|
676
|
+
* dependencies of various types with [injection tokens](guide/di/dependency-injection-providers).
|
|
677
|
+
*
|
|
678
|
+
* @see [DI Providers](guide/di/dependency-injection-providers).
|
|
679
|
+
* @see {@link StaticProvider}
|
|
680
|
+
*
|
|
681
|
+
* @usageNotes
|
|
682
|
+
*
|
|
683
|
+
* The following example creates a service injector instance.
|
|
684
|
+
*
|
|
685
|
+
* {@example core/di/ts/provider_spec.ts region='ConstructorProvider'}
|
|
686
|
+
*
|
|
687
|
+
* ### Usage example
|
|
688
|
+
*
|
|
689
|
+
* {@example core/di/ts/injector_spec.ts region='Injector'}
|
|
690
|
+
*
|
|
691
|
+
* `Injector` returns itself when given `Injector` as a token:
|
|
692
|
+
*
|
|
693
|
+
* {@example core/di/ts/injector_spec.ts region='injectInjector'}
|
|
694
|
+
*
|
|
695
|
+
* @publicApi
|
|
696
|
+
*/
|
|
697
|
+
declare abstract class Injector {
|
|
698
|
+
static THROW_IF_NOT_FOUND: {};
|
|
699
|
+
static NULL: Injector;
|
|
700
|
+
/**
|
|
701
|
+
* Retrieves an instance from the injector based on the provided token.
|
|
702
|
+
* @returns The instance from the injector if defined, otherwise the `notFoundValue`.
|
|
703
|
+
* @throws When the `notFoundValue` is `undefined` or `Injector.THROW_IF_NOT_FOUND`.
|
|
704
|
+
*/
|
|
705
|
+
abstract get<T>(token: ProviderToken<T>, notFoundValue: undefined, options: InjectOptions & {
|
|
706
|
+
optional?: false;
|
|
707
|
+
}): T;
|
|
708
|
+
/**
|
|
709
|
+
* Retrieves an instance from the injector based on the provided token.
|
|
710
|
+
* @returns The instance from the injector if defined, otherwise the `notFoundValue`.
|
|
711
|
+
* @throws When the `notFoundValue` is `undefined` or `Injector.THROW_IF_NOT_FOUND`.
|
|
712
|
+
*/
|
|
713
|
+
abstract get<T>(token: ProviderToken<T>, notFoundValue: null | undefined, options: InjectOptions): T | null;
|
|
714
|
+
/**
|
|
715
|
+
* Retrieves an instance from the injector based on the provided token.
|
|
716
|
+
* @returns The instance from the injector if defined, otherwise the `notFoundValue`.
|
|
717
|
+
* @throws When the `notFoundValue` is `undefined` or `Injector.THROW_IF_NOT_FOUND`.
|
|
718
|
+
*/
|
|
719
|
+
abstract get<T>(token: ProviderToken<T>, notFoundValue?: T, options?: InjectOptions): T;
|
|
720
|
+
/**
|
|
721
|
+
* @deprecated from v4.0.0 use ProviderToken<T>
|
|
722
|
+
* @suppress {duplicate}
|
|
723
|
+
*/
|
|
724
|
+
abstract get<T>(token: string | ProviderToken<T>, notFoundValue?: any): any;
|
|
725
|
+
/**
|
|
726
|
+
* @deprecated from v5 use the new signature Injector.create(options)
|
|
727
|
+
*/
|
|
728
|
+
static create(providers: StaticProvider[], parent?: Injector): Injector;
|
|
729
|
+
/**
|
|
730
|
+
* Creates a new injector instance that provides one or more dependencies,
|
|
731
|
+
* according to a given type or types of `StaticProvider`.
|
|
732
|
+
*
|
|
733
|
+
* @param options An object with the following properties:
|
|
734
|
+
* * `providers`: An array of providers of the [StaticProvider type](api/core/StaticProvider).
|
|
735
|
+
* * `parent`: (optional) A parent injector.
|
|
736
|
+
* * `name`: (optional) A developer-defined identifying name for the new injector.
|
|
737
|
+
*
|
|
738
|
+
* @returns The new injector instance.
|
|
739
|
+
*
|
|
740
|
+
*/
|
|
741
|
+
static create(options: {
|
|
742
|
+
providers: Array<Provider | StaticProvider>;
|
|
743
|
+
parent?: Injector;
|
|
744
|
+
name?: string;
|
|
745
|
+
}): DestroyableInjector;
|
|
746
|
+
/** @nocollapse */
|
|
747
|
+
static ɵprov: unknown;
|
|
748
|
+
}
|
|
749
|
+
/**
|
|
750
|
+
* An Injector that the owner can destroy and trigger the DestroyRef.destroy hooks.
|
|
751
|
+
*
|
|
752
|
+
* @publicApi
|
|
753
|
+
*/
|
|
754
|
+
interface DestroyableInjector extends Injector {
|
|
755
|
+
destroy(): void;
|
|
756
|
+
}
|
|
757
|
+
|
|
758
|
+
/**
|
|
759
|
+
* `DestroyRef` lets you set callbacks to run for any cleanup or destruction behavior.
|
|
760
|
+
* The scope of this destruction depends on where `DestroyRef` is injected. If `DestroyRef`
|
|
761
|
+
* is injected in a component or directive, the callbacks run when that component or
|
|
762
|
+
* directive is destroyed. Otherwise the callbacks run when a corresponding injector is destroyed.
|
|
763
|
+
*
|
|
764
|
+
* @publicApi
|
|
765
|
+
*/
|
|
766
|
+
declare abstract class DestroyRef {
|
|
767
|
+
/**
|
|
768
|
+
* Registers a destroy callback in a given lifecycle scope. Returns a cleanup function that can
|
|
769
|
+
* be invoked to unregister the callback.
|
|
770
|
+
*
|
|
771
|
+
* @usageNotes
|
|
772
|
+
* ### Example
|
|
773
|
+
* ```ts
|
|
774
|
+
* const destroyRef = inject(DestroyRef);
|
|
775
|
+
*
|
|
776
|
+
* // register a destroy callback
|
|
777
|
+
* const unregisterFn = destroyRef.onDestroy(() => doSomethingOnDestroy());
|
|
778
|
+
*
|
|
779
|
+
* // stop the destroy callback from executing if needed
|
|
780
|
+
* unregisterFn();
|
|
781
|
+
* ```
|
|
782
|
+
*/
|
|
783
|
+
abstract onDestroy(callback: () => void): () => void;
|
|
784
|
+
}
|
|
785
|
+
|
|
786
|
+
declare global {
|
|
787
|
+
/**
|
|
788
|
+
* Indicates whether HMR is enabled for the application.
|
|
789
|
+
*
|
|
790
|
+
* `ngHmrMode` is a global flag set by Angular's CLI.
|
|
791
|
+
*
|
|
792
|
+
* @remarks
|
|
793
|
+
* - **Internal Angular Flag**: This is an *internal* Angular flag (not a public API), avoid relying on it in application code.
|
|
794
|
+
* - **Avoid Direct Use**: This variable is intended for runtime configuration; it should not be accessed directly in application code.
|
|
795
|
+
*/
|
|
796
|
+
var ngHmrMode: boolean | undefined;
|
|
797
|
+
}
|
|
798
|
+
|
|
799
|
+
declare global {
|
|
800
|
+
const ngJitMode: boolean;
|
|
801
|
+
}
|
|
802
|
+
|
|
803
|
+
declare global {
|
|
804
|
+
/**
|
|
805
|
+
* Indicates whether the application is operating in server-rendering mode.
|
|
806
|
+
*
|
|
807
|
+
* `ngServerMode` is a global flag set by Angular's server-side rendering mechanisms,
|
|
808
|
+
* typically configured by `provideServerRendering` and `platformServer` during runtime.
|
|
809
|
+
*
|
|
810
|
+
* @remarks
|
|
811
|
+
* - **Internal Angular Flag**: This is an *internal* Angular flag (not a public API), avoid relying on it in application code.
|
|
812
|
+
* - **Avoid Direct Use**: This variable is intended for runtime configuration; it should not be accessed directly in application code.
|
|
813
|
+
*/
|
|
814
|
+
var ngServerMode: boolean | undefined;
|
|
815
|
+
}
|
|
816
|
+
|
|
817
|
+
declare global {
|
|
818
|
+
interface Element {
|
|
819
|
+
__jsaction_fns: Map<string, Function[]> | undefined;
|
|
820
|
+
}
|
|
821
|
+
}
|
|
822
|
+
interface EventContractDetails {
|
|
823
|
+
instance?: EventContract;
|
|
824
|
+
}
|
|
825
|
+
declare const JSACTION_EVENT_CONTRACT: InjectionToken<EventContractDetails>;
|
|
826
|
+
|
|
827
|
+
declare global {
|
|
828
|
+
const ngI18nClosureMode: boolean;
|
|
829
|
+
}
|
|
830
|
+
|
|
831
|
+
export { DestroyRef, InjectionToken, Injector, InternalInjectFlags, JSACTION_EVENT_CONTRACT, Type, isEnvironmentProviders, isSignal, signal, ɵunwrapWritableSignal };
|
|
832
|
+
export type { AbstractType, ClassProvider, ClassSansProvider, ConstructorProvider, ConstructorSansProvider, CreateSignalOptions, DestroyableInjector, EnvironmentProviders, ExistingProvider, ExistingSansProvider, FactoryProvider, FactorySansProvider, ImportedNgModuleProviders, InjectOptions, InternalEnvironmentProviders, ModuleWithProviders, OutputRef, OutputRefSubscription, ProcessProvidersFunction, Provider, ProviderToken, Signal, StaticClassProvider, StaticClassSansProvider, StaticProvider, TypeProvider, ValueEqualityFn, ValueProvider, ValueSansProvider, Writable, WritableSignal };
|