@angular/platform-browser 14.0.0-next.7 → 14.0.0-rc.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 (37) hide show
  1. package/animations/{animations.d.ts → index.d.ts} +155 -154
  2. package/esm2020/animations/src/animation_builder.mjs +3 -3
  3. package/esm2020/animations/src/animation_renderer.mjs +7 -7
  4. package/esm2020/animations/src/module.mjs +8 -8
  5. package/esm2020/animations/src/providers.mjs +3 -3
  6. package/esm2020/src/browser/meta.mjs +3 -3
  7. package/esm2020/src/browser/testability.mjs +2 -5
  8. package/esm2020/src/browser/title.mjs +3 -3
  9. package/esm2020/src/browser/transfer_state.mjs +8 -8
  10. package/esm2020/src/browser/xhr.mjs +3 -3
  11. package/esm2020/src/browser.mjs +111 -19
  12. package/esm2020/src/dom/dom_renderer.mjs +3 -3
  13. package/esm2020/src/dom/events/dom_events.mjs +3 -3
  14. package/esm2020/src/dom/events/event_manager.mjs +3 -3
  15. package/esm2020/src/dom/events/hammer_gestures.mjs +10 -10
  16. package/esm2020/src/dom/events/key_events.mjs +3 -3
  17. package/esm2020/src/dom/shared_styles_host.mjs +6 -6
  18. package/esm2020/src/platform-browser.mjs +2 -2
  19. package/esm2020/src/security/dom_sanitization_service.mjs +12 -12
  20. package/esm2020/src/version.mjs +1 -1
  21. package/esm2020/testing/src/browser.mjs +4 -4
  22. package/esm2020/testing/src/matchers.mjs +1 -18
  23. package/fesm2015/animations.mjs +21 -21
  24. package/fesm2015/animations.mjs.map +1 -1
  25. package/fesm2015/platform-browser.mjs +171 -81
  26. package/fesm2015/platform-browser.mjs.map +1 -1
  27. package/fesm2015/testing.mjs +5 -5
  28. package/fesm2020/animations.mjs +21 -21
  29. package/fesm2020/animations.mjs.map +1 -1
  30. package/fesm2020/platform-browser.mjs +170 -81
  31. package/fesm2020/platform-browser.mjs.map +1 -1
  32. package/fesm2020/testing.mjs +5 -5
  33. package/{platform-browser.d.ts → index.d.ts} +896 -832
  34. package/package.json +8 -8
  35. package/testing/{testing.d.ts → index.d.ts} +26 -25
  36. package/animations/package.json +0 -10
  37. package/testing/package.json +0 -9
@@ -1,837 +1,901 @@
1
1
  /**
2
- * @license Angular v14.0.0-next.7
2
+ * @license Angular v14.0.0-rc.0
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
6
6
 
7
- import { ComponentRef } from '@angular/core';
8
- import { DebugElement } from '@angular/core';
9
- import { DebugNode } from '@angular/core';
10
- import { GetTestability } from '@angular/core';
11
- import * as i0 from '@angular/core';
12
- import * as i1 from '@angular/common';
13
- import { InjectionToken } from '@angular/core';
14
- import { ModuleWithProviders } from '@angular/core';
15
- import { NgZone } from '@angular/core';
16
- import { OnDestroy } from '@angular/core';
17
- import { PlatformRef } from '@angular/core';
18
- import { Predicate } from '@angular/core';
19
- import { Renderer2 } from '@angular/core';
20
- import { RendererFactory2 } from '@angular/core';
21
- import { RendererType2 } from '@angular/core';
22
- import { Sanitizer } from '@angular/core';
23
- import { SecurityContext } from '@angular/core';
24
- import { StaticProvider } from '@angular/core';
25
- import { Testability } from '@angular/core';
26
- import { TestabilityRegistry } from '@angular/core';
27
- import { Type } from '@angular/core';
28
- import { Version } from '@angular/core';
29
- import { ɵConsole } from '@angular/core';
30
- import { ɵDomAdapter } from '@angular/common';
31
- import { ɵgetDOM } from '@angular/common';
32
-
33
- /**
34
- * Exports required infrastructure for all Angular apps.
35
- * Included by default in all Angular apps created with the CLI
36
- * `new` command.
37
- * Re-exports `CommonModule` and `ApplicationModule`, making their
38
- * exports and providers available to all apps.
39
- *
40
- * @publicApi
41
- */
42
- export declare class BrowserModule {
43
- constructor(parentModule: BrowserModule | null);
44
- /**
45
- * Configures a browser-based app to transition from a server-rendered app, if
46
- * one is present on the page.
47
- *
48
- * @param params An object containing an identifier for the app to transition.
49
- * The ID must match between the client and server versions of the app.
50
- * @returns The reconfigured `BrowserModule` to import into the app's root `AppModule`.
51
- */
52
- static withServerTransition(params: {
53
- appId: string;
54
- }): ModuleWithProviders<BrowserModule>;
55
- static ɵfac: i0.ɵɵFactoryDeclaration<BrowserModule, [{ optional: true; skipSelf: true; }]>;
56
- static ɵmod: i0.ɵɵNgModuleDeclaration<BrowserModule, never, never, [typeof i1.CommonModule, typeof i0.ApplicationModule]>;
57
- static ɵinj: i0.ɵɵInjectorDeclaration<BrowserModule>;
58
- }
59
-
60
- /**
61
- * NgModule to install on the client side while using the `TransferState` to transfer state from
62
- * server to client.
63
- *
64
- * @publicApi
65
- */
66
- export declare class BrowserTransferStateModule {
67
- static ɵfac: i0.ɵɵFactoryDeclaration<BrowserTransferStateModule, never>;
68
- static ɵmod: i0.ɵɵNgModuleDeclaration<BrowserTransferStateModule, never, never, never>;
69
- static ɵinj: i0.ɵɵInjectorDeclaration<BrowserTransferStateModule>;
70
- }
71
-
72
- /**
73
- * Predicates for use with {@link DebugElement}'s query functions.
74
- *
75
- * @publicApi
76
- */
77
- export declare class By {
78
- /**
79
- * Match all nodes.
80
- *
81
- * @usageNotes
82
- * ### Example
83
- *
84
- * {@example platform-browser/dom/debug/ts/by/by.ts region='by_all'}
85
- */
86
- static all(): Predicate<DebugNode>;
87
- /**
88
- * Match elements by the given CSS selector.
89
- *
90
- * @usageNotes
91
- * ### Example
92
- *
93
- * {@example platform-browser/dom/debug/ts/by/by.ts region='by_css'}
94
- */
95
- static css(selector: string): Predicate<DebugElement>;
96
- /**
97
- * Match nodes that have the given directive present.
98
- *
99
- * @usageNotes
100
- * ### Example
101
- *
102
- * {@example platform-browser/dom/debug/ts/by/by.ts region='by_directive'}
103
- */
104
- static directive(type: Type<any>): Predicate<DebugNode>;
105
- }
106
-
107
- /**
108
- * Disables Angular tools.
109
- *
110
- * @publicApi
111
- */
112
- export declare function disableDebugTools(): void;
113
-
114
- /**
115
- * DomSanitizer helps preventing Cross Site Scripting Security bugs (XSS) by sanitizing
116
- * values to be safe to use in the different DOM contexts.
117
- *
118
- * For example, when binding a URL in an `<a [href]="someValue">` hyperlink, `someValue` will be
119
- * sanitized so that an attacker cannot inject e.g. a `javascript:` URL that would execute code on
120
- * the website.
121
- *
122
- * In specific situations, it might be necessary to disable sanitization, for example if the
123
- * application genuinely needs to produce a `javascript:` style link with a dynamic value in it.
124
- * Users can bypass security by constructing a value with one of the `bypassSecurityTrust...`
125
- * methods, and then binding to that value from the template.
126
- *
127
- * These situations should be very rare, and extraordinary care must be taken to avoid creating a
128
- * Cross Site Scripting (XSS) security bug!
129
- *
130
- * When using `bypassSecurityTrust...`, make sure to call the method as early as possible and as
131
- * close as possible to the source of the value, to make it easy to verify no security bug is
132
- * created by its use.
133
- *
134
- * It is not required (and not recommended) to bypass security if the value is safe, e.g. a URL that
135
- * does not start with a suspicious protocol, or an HTML snippet that does not contain dangerous
136
- * code. The sanitizer leaves safe values intact.
137
- *
138
- * @security Calling any of the `bypassSecurityTrust...` APIs disables Angular's built-in
139
- * sanitization for the value passed in. Carefully check and audit all values and code paths going
140
- * into this call. Make sure any user data is appropriately escaped for this security context.
141
- * For more detail, see the [Security Guide](https://g.co/ng/security).
142
- *
143
- * @publicApi
144
- */
145
- export declare abstract class DomSanitizer implements Sanitizer {
146
- /**
147
- * Sanitizes a value for use in the given SecurityContext.
148
- *
149
- * If value is trusted for the context, this method will unwrap the contained safe value and use
150
- * it directly. Otherwise, value will be sanitized to be safe in the given context, for example
151
- * by replacing URLs that have an unsafe protocol part (such as `javascript:`). The implementation
152
- * is responsible to make sure that the value can definitely be safely used in the given context.
153
- */
154
- abstract sanitize(context: SecurityContext, value: SafeValue | string | null): string | null;
155
- /**
156
- * Bypass security and trust the given value to be safe HTML. Only use this when the bound HTML
157
- * is unsafe (e.g. contains `<script>` tags) and the code should be executed. The sanitizer will
158
- * leave safe HTML intact, so in most situations this method should not be used.
159
- *
160
- * **WARNING:** calling this method with untrusted user data exposes your application to XSS
161
- * security risks!
162
- */
163
- abstract bypassSecurityTrustHtml(value: string): SafeHtml;
164
- /**
165
- * Bypass security and trust the given value to be safe style value (CSS).
166
- *
167
- * **WARNING:** calling this method with untrusted user data exposes your application to XSS
168
- * security risks!
169
- */
170
- abstract bypassSecurityTrustStyle(value: string): SafeStyle;
171
- /**
172
- * Bypass security and trust the given value to be safe JavaScript.
173
- *
174
- * **WARNING:** calling this method with untrusted user data exposes your application to XSS
175
- * security risks!
176
- */
177
- abstract bypassSecurityTrustScript(value: string): SafeScript;
178
- /**
179
- * Bypass security and trust the given value to be a safe style URL, i.e. a value that can be used
180
- * in hyperlinks or `<img src>`.
181
- *
182
- * **WARNING:** calling this method with untrusted user data exposes your application to XSS
183
- * security risks!
184
- */
185
- abstract bypassSecurityTrustUrl(value: string): SafeUrl;
186
- /**
187
- * Bypass security and trust the given value to be a safe resource URL, i.e. a location that may
188
- * be used to load executable code from, like `<script src>`, or `<iframe src>`.
189
- *
190
- * **WARNING:** calling this method with untrusted user data exposes your application to XSS
191
- * security risks!
192
- */
193
- abstract bypassSecurityTrustResourceUrl(value: string): SafeResourceUrl;
194
- static ɵfac: i0.ɵɵFactoryDeclaration<DomSanitizer, never>;
195
- static ɵprov: i0.ɵɵInjectableDeclaration<DomSanitizer>;
196
- }
197
-
198
- /**
199
- * Enabled Angular debug tools that are accessible via your browser's
200
- * developer console.
201
- *
202
- * Usage:
203
- *
204
- * 1. Open developer console (e.g. in Chrome Ctrl + Shift + j)
205
- * 1. Type `ng.` (usually the console will show auto-complete suggestion)
206
- * 1. Try the change detection profiler `ng.profiler.timeChangeDetection()`
207
- * then hit Enter.
208
- *
209
- * @publicApi
210
- */
211
- export declare function enableDebugTools<T>(ref: ComponentRef<T>): ComponentRef<T>;
212
-
213
- /**
214
- * The injection token for the event-manager plug-in service.
215
- *
216
- * @publicApi
217
- */
218
- export declare const EVENT_MANAGER_PLUGINS: InjectionToken<EventManagerPlugin[]>;
219
-
220
- /**
221
- * An injectable service that provides event management for Angular
222
- * through a browser plug-in.
223
- *
224
- * @publicApi
225
- */
226
- export declare class EventManager {
227
- private _zone;
228
- private _plugins;
229
- private _eventNameToPlugin;
230
- /**
231
- * Initializes an instance of the event-manager service.
232
- */
233
- constructor(plugins: EventManagerPlugin[], _zone: NgZone);
234
- /**
235
- * Registers a handler for a specific element and event.
236
- *
237
- * @param element The HTML element to receive event notifications.
238
- * @param eventName The name of the event to listen for.
239
- * @param handler A function to call when the notification occurs. Receives the
240
- * event object as an argument.
241
- * @returns A callback function that can be used to remove the handler.
242
- */
243
- addEventListener(element: HTMLElement, eventName: string, handler: Function): Function;
244
- /**
245
- * Registers a global handler for an event in a target view.
246
- *
247
- * @param target A target for global event notifications. One of "window", "document", or "body".
248
- * @param eventName The name of the event to listen for.
249
- * @param handler A function to call when the notification occurs. Receives the
250
- * event object as an argument.
251
- * @returns A callback function that can be used to remove the handler.
252
- * @deprecated No longer being used in Ivy code. To be removed in version 14.
253
- */
254
- addGlobalEventListener(target: string, eventName: string, handler: Function): Function;
255
- /**
256
- * Retrieves the compilation zone in which event listeners are registered.
257
- */
258
- getZone(): NgZone;
259
- static ɵfac: i0.ɵɵFactoryDeclaration<EventManager, never>;
260
- static ɵprov: i0.ɵɵInjectableDeclaration<EventManager>;
261
- }
262
-
263
- declare abstract class EventManagerPlugin {
264
- private _doc;
265
- constructor(_doc: any);
266
- manager: EventManager;
267
- abstract supports(eventName: string): boolean;
268
- abstract addEventListener(element: HTMLElement, eventName: string, handler: Function): Function;
269
- addGlobalEventListener(element: string, eventName: string, handler: Function): Function;
270
- }
271
-
272
- /**
273
- * Provides DOM operations in any browser environment.
274
- *
275
- * @security Tread carefully! Interacting with the DOM directly is dangerous and
276
- * can introduce XSS risks.
277
- */
278
- declare abstract class GenericBrowserDomAdapter extends ɵDomAdapter {
279
- readonly supportsDOMEvents: boolean;
280
- }
281
-
282
- /**
283
- * DI token for providing [HammerJS](https://hammerjs.github.io/) support to Angular.
284
- * @see `HammerGestureConfig`
285
- *
286
- * @ngModule HammerModule
287
- * @publicApi
288
- */
289
- export declare const HAMMER_GESTURE_CONFIG: InjectionToken<HammerGestureConfig>;
290
-
291
- /**
292
- * Injection token used to provide a {@link HammerLoader} to Angular.
293
- *
294
- * @publicApi
295
- */
296
- export declare const HAMMER_LOADER: InjectionToken<HammerLoader>;
297
-
298
- /**
299
- * An injectable [HammerJS Manager](https://hammerjs.github.io/api/#hammermanager)
300
- * for gesture recognition. Configures specific event recognition.
301
- * @publicApi
302
- */
303
- export declare class HammerGestureConfig {
304
- /**
305
- * A set of supported event names for gestures to be used in Angular.
306
- * Angular supports all built-in recognizers, as listed in
307
- * [HammerJS documentation](https://hammerjs.github.io/).
308
- */
309
- events: string[];
310
- /**
311
- * Maps gesture event names to a set of configuration options
312
- * that specify overrides to the default values for specific properties.
313
- *
314
- * The key is a supported event name to be configured,
315
- * and the options object contains a set of properties, with override values
316
- * to be applied to the named recognizer event.
317
- * For example, to disable recognition of the rotate event, specify
318
- * `{"rotate": {"enable": false}}`.
319
- *
320
- * Properties that are not present take the HammerJS default values.
321
- * For information about which properties are supported for which events,
322
- * and their allowed and default values, see
323
- * [HammerJS documentation](https://hammerjs.github.io/).
324
- *
325
- */
326
- overrides: {
327
- [key: string]: Object;
328
- };
329
- /**
330
- * Properties whose default values can be overridden for a given event.
331
- * Different sets of properties apply to different events.
332
- * For information about which properties are supported for which events,
333
- * and their allowed and default values, see
334
- * [HammerJS documentation](https://hammerjs.github.io/).
335
- */
336
- options?: {
337
- cssProps?: any;
338
- domEvents?: boolean;
339
- enable?: boolean | ((manager: any) => boolean);
340
- preset?: any[];
341
- touchAction?: string;
342
- recognizers?: any[];
343
- inputClass?: any;
344
- inputTarget?: EventTarget;
345
- };
346
- /**
347
- * Creates a [HammerJS Manager](https://hammerjs.github.io/api/#hammermanager)
348
- * and attaches it to a given HTML element.
349
- * @param element The element that will recognize gestures.
350
- * @returns A HammerJS event-manager object.
351
- */
352
- buildHammer(element: HTMLElement): HammerInstance;
353
- static ɵfac: i0.ɵɵFactoryDeclaration<HammerGestureConfig, never>;
354
- static ɵprov: i0.ɵɵInjectableDeclaration<HammerGestureConfig>;
355
- }
356
-
357
- declare interface HammerInstance {
358
- on(eventName: string, callback?: Function): void;
359
- off(eventName: string, callback?: Function): void;
360
- destroy?(): void;
361
- }
362
-
363
- /**
364
- * Function that loads HammerJS, returning a promise that is resolved once HammerJs is loaded.
365
- *
366
- * @publicApi
367
- */
368
- export declare type HammerLoader = () => Promise<void>;
369
-
370
- /**
371
- * Adds support for HammerJS.
372
- *
373
- * Import this module at the root of your application so that Angular can work with
374
- * HammerJS to detect gesture events.
375
- *
376
- * Note that applications still need to include the HammerJS script itself. This module
377
- * simply sets up the coordination layer between HammerJS and Angular's EventManager.
378
- *
379
- * @publicApi
380
- */
381
- export declare class HammerModule {
382
- static ɵfac: i0.ɵɵFactoryDeclaration<HammerModule, never>;
383
- static ɵmod: i0.ɵɵNgModuleDeclaration<HammerModule, never, never, never>;
384
- static ɵinj: i0.ɵɵInjectorDeclaration<HammerModule>;
385
- }
386
-
387
- /**
388
- * Create a `StateKey<T>` that can be used to store value of type T with `TransferState`.
389
- *
390
- * Example:
391
- *
392
- * ```
393
- * const COUNTER_KEY = makeStateKey<number>('counter');
394
- * let value = 10;
395
- *
396
- * transferState.set(COUNTER_KEY, value);
397
- * ```
398
- *
399
- * @publicApi
400
- */
401
- export declare function makeStateKey<T = void>(key: string): StateKey<T>;
402
-
403
- /**
404
- * A service for managing HTML `<meta>` tags.
405
- *
406
- * Properties of the `MetaDefinition` object match the attributes of the
407
- * HTML `<meta>` tag. These tags define document metadata that is important for
408
- * things like configuring a Content Security Policy, defining browser compatibility
409
- * and security settings, setting HTTP Headers, defining rich content for social sharing,
410
- * and Search Engine Optimization (SEO).
411
- *
412
- * To identify specific `<meta>` tags in a document, use an attribute selection
413
- * string in the format `"tag_attribute='value string'"`.
414
- * For example, an `attrSelector` value of `"name='description'"` matches a tag
415
- * whose `name` attribute has the value `"description"`.
416
- * Selectors are used with the `querySelector()` Document method,
417
- * in the format `meta[{attrSelector}]`.
418
- *
419
- * @see [HTML meta tag](https://developer.mozilla.org/docs/Web/HTML/Element/meta)
420
- * @see [Document.querySelector()](https://developer.mozilla.org/docs/Web/API/Document/querySelector)
421
- *
422
- *
423
- * @publicApi
424
- */
425
- export declare class Meta {
426
- private _doc;
427
- private _dom;
428
- constructor(_doc: any);
429
- /**
430
- * Retrieves or creates a specific `<meta>` tag element in the current HTML document.
431
- * In searching for an existing tag, Angular attempts to match the `name` or `property` attribute
432
- * values in the provided tag definition, and verifies that all other attribute values are equal.
433
- * If an existing element is found, it is returned and is not modified in any way.
434
- * @param tag The definition of a `<meta>` element to match or create.
435
- * @param forceCreation True to create a new element without checking whether one already exists.
436
- * @returns The existing element with the same attributes and values if found,
437
- * the new element if no match is found, or `null` if the tag parameter is not defined.
438
- */
439
- addTag(tag: MetaDefinition, forceCreation?: boolean): HTMLMetaElement | null;
440
- /**
441
- * Retrieves or creates a set of `<meta>` tag elements in the current HTML document.
442
- * In searching for an existing tag, Angular attempts to match the `name` or `property` attribute
443
- * values in the provided tag definition, and verifies that all other attribute values are equal.
444
- * @param tags An array of tag definitions to match or create.
445
- * @param forceCreation True to create new elements without checking whether they already exist.
446
- * @returns The matching elements if found, or the new elements.
447
- */
448
- addTags(tags: MetaDefinition[], forceCreation?: boolean): HTMLMetaElement[];
449
- /**
450
- * Retrieves a `<meta>` tag element in the current HTML document.
451
- * @param attrSelector The tag attribute and value to match against, in the format
452
- * `"tag_attribute='value string'"`.
453
- * @returns The matching element, if any.
454
- */
455
- getTag(attrSelector: string): HTMLMetaElement | null;
456
- /**
457
- * Retrieves a set of `<meta>` tag elements in the current HTML document.
458
- * @param attrSelector The tag attribute and value to match against, in the format
459
- * `"tag_attribute='value string'"`.
460
- * @returns The matching elements, if any.
461
- */
462
- getTags(attrSelector: string): HTMLMetaElement[];
463
- /**
464
- * Modifies an existing `<meta>` tag element in the current HTML document.
465
- * @param tag The tag description with which to replace the existing tag content.
466
- * @param selector A tag attribute and value to match against, to identify
467
- * an existing tag. A string in the format `"tag_attribute=`value string`"`.
468
- * If not supplied, matches a tag with the same `name` or `property` attribute value as the
469
- * replacement tag.
470
- * @return The modified element.
471
- */
472
- updateTag(tag: MetaDefinition, selector?: string): HTMLMetaElement | null;
473
- /**
474
- * Removes an existing `<meta>` tag element from the current HTML document.
475
- * @param attrSelector A tag attribute and value to match against, to identify
476
- * an existing tag. A string in the format `"tag_attribute=`value string`"`.
477
- */
478
- removeTag(attrSelector: string): void;
479
- /**
480
- * Removes an existing `<meta>` tag element from the current HTML document.
481
- * @param meta The tag definition to match against to identify an existing tag.
482
- */
483
- removeTagElement(meta: HTMLMetaElement): void;
484
- private _getOrCreateElement;
485
- private _setMetaElementAttributes;
486
- private _parseSelector;
487
- private _containsAttributes;
488
- private _getMetaKeyMap;
489
- static ɵfac: i0.ɵɵFactoryDeclaration<Meta, never>;
490
- static ɵprov: i0.ɵɵInjectableDeclaration<Meta>;
491
- }
492
-
493
- /**
494
- * Represents the attributes of an HTML `<meta>` element. The element itself is
495
- * represented by the internal `HTMLMetaElement`.
496
- *
497
- * @see [HTML meta tag](https://developer.mozilla.org/docs/Web/HTML/Element/meta)
498
- * @see `Meta`
499
- *
500
- * @publicApi
501
- */
502
- export declare type MetaDefinition = {
503
- charset?: string;
504
- content?: string;
505
- httpEquiv?: string;
506
- id?: string;
507
- itemprop?: string;
508
- name?: string;
509
- property?: string;
510
- scheme?: string;
511
- url?: string;
512
- } & {
513
- [prop: string]: string;
514
- };
515
-
516
- /**
517
- * A factory function that returns a `PlatformRef` instance associated with browser service
518
- * providers.
519
- *
520
- * @publicApi
521
- */
522
- export declare const platformBrowser: (extraProviders?: StaticProvider[]) => PlatformRef;
523
-
524
- /**
525
- * Marker interface for a value that's safe to use as HTML.
526
- *
527
- * @publicApi
528
- */
529
- export declare interface SafeHtml extends SafeValue {
530
- }
531
-
532
- /**
533
- * Marker interface for a value that's safe to use as a URL to load executable code from.
534
- *
535
- * @publicApi
536
- */
537
- export declare interface SafeResourceUrl extends SafeValue {
538
- }
539
-
540
- /**
541
- * Marker interface for a value that's safe to use as JavaScript.
542
- *
543
- * @publicApi
544
- */
545
- export declare interface SafeScript extends SafeValue {
546
- }
547
-
548
- /**
549
- * Marker interface for a value that's safe to use as style (CSS).
550
- *
551
- * @publicApi
552
- */
553
- export declare interface SafeStyle extends SafeValue {
554
- }
555
-
556
- /**
557
- * Marker interface for a value that's safe to use as a URL linking to a document.
558
- *
559
- * @publicApi
560
- */
561
- export declare interface SafeUrl extends SafeValue {
562
- }
563
-
564
- /**
565
- * Marker interface for a value that's safe to use in a particular context.
566
- *
567
- * @publicApi
568
- */
569
- export declare interface SafeValue {
570
- }
571
-
572
- /**
573
- * A type-safe key to use with `TransferState`.
574
- *
575
- * Example:
576
- *
577
- * ```
578
- * const COUNTER_KEY = makeStateKey<number>('counter');
579
- * let value = 10;
580
- *
581
- * transferState.set(COUNTER_KEY, value);
582
- * ```
583
- *
584
- * @publicApi
585
- */
586
- export declare type StateKey<T> = string & {
587
- __not_a_string: never;
588
- __value_type?: T;
589
- };
590
-
591
- /**
592
- * A service that can be used to get and set the title of a current HTML document.
593
- *
594
- * Since an Angular application can't be bootstrapped on the entire HTML document (`<html>` tag)
595
- * it is not possible to bind to the `text` property of the `HTMLTitleElement` elements
596
- * (representing the `<title>` tag). Instead, this service can be used to set and get the current
597
- * title value.
598
- *
599
- * @publicApi
600
- */
601
- export declare class Title {
602
- private _doc;
603
- constructor(_doc: any);
604
- /**
605
- * Get the title of the current HTML document.
606
- */
607
- getTitle(): string;
608
- /**
609
- * Set the title of the current HTML document.
610
- * @param newTitle
611
- */
612
- setTitle(newTitle: string): void;
613
- static ɵfac: i0.ɵɵFactoryDeclaration<Title, never>;
614
- static ɵprov: i0.ɵɵInjectableDeclaration<Title>;
615
- }
616
-
617
- /**
618
- * A key value store that is transferred from the application on the server side to the application
619
- * on the client side.
620
- *
621
- * `TransferState` will be available as an injectable token. To use it import
622
- * `ServerTransferStateModule` on the server and `BrowserTransferStateModule` on the client.
623
- *
624
- * The values in the store are serialized/deserialized using JSON.stringify/JSON.parse. So only
625
- * boolean, number, string, null and non-class objects will be serialized and deserialized in a
626
- * non-lossy manner.
627
- *
628
- * @publicApi
629
- */
630
- export declare class TransferState {
631
- private store;
632
- private onSerializeCallbacks;
633
- /**
634
- * Get the value corresponding to a key. Return `defaultValue` if key is not found.
635
- */
636
- get<T>(key: StateKey<T>, defaultValue: T): T;
637
- /**
638
- * Set the value corresponding to a key.
639
- */
640
- set<T>(key: StateKey<T>, value: T): void;
641
- /**
642
- * Remove a key from the store.
643
- */
644
- remove<T>(key: StateKey<T>): void;
645
- /**
646
- * Test whether a key exists in the store.
647
- */
648
- hasKey<T>(key: StateKey<T>): boolean;
649
- /**
650
- * Register a callback to provide the value for a key when `toJson` is called.
651
- */
652
- onSerialize<T>(key: StateKey<T>, callback: () => T): void;
653
- /**
654
- * Serialize the current state of the store to JSON.
655
- */
656
- toJson(): string;
657
- static ɵfac: i0.ɵɵFactoryDeclaration<TransferState, never>;
658
- static ɵprov: i0.ɵɵInjectableDeclaration<TransferState>;
659
- }
660
-
661
- /**
662
- * @publicApi
663
- */
664
- export declare const VERSION: Version;
665
-
666
- /**
667
- * A `DomAdapter` powered by full browser DOM APIs.
668
- *
669
- * @security Tread carefully! Interacting with the DOM directly is dangerous and
670
- * can introduce XSS risks.
671
- */
672
- export declare class ɵBrowserDomAdapter extends GenericBrowserDomAdapter {
673
- static makeCurrent(): void;
674
- onAndCancel(el: Node, evt: any, listener: any): Function;
675
- dispatchEvent(el: Node, evt: any): void;
676
- remove(node: Node): void;
677
- createElement(tagName: string, doc?: Document): HTMLElement;
678
- createHtmlDocument(): Document;
679
- getDefaultDocument(): Document;
680
- isElementNode(node: Node): boolean;
681
- isShadowRoot(node: any): boolean;
682
- /** @deprecated No longer being used in Ivy code. To be removed in version 14. */
683
- getGlobalEventTarget(doc: Document, target: string): EventTarget | null;
684
- getBaseHref(doc: Document): string | null;
685
- resetBaseElement(): void;
686
- getUserAgent(): string;
687
- getCookie(name: string): string | null;
688
- }
689
-
690
- export declare class ɵBrowserGetTestability implements GetTestability {
691
- static init(): void;
692
- addToWindow(registry: TestabilityRegistry): void;
693
- findTestabilityInTree(registry: TestabilityRegistry, elem: any, findInAncestors: boolean): Testability | null;
694
- }
695
-
696
- export declare class ɵDomEventsPlugin extends EventManagerPlugin {
697
- constructor(doc: any);
698
- supports(eventName: string): boolean;
699
- addEventListener(element: HTMLElement, eventName: string, handler: Function): Function;
700
- removeEventListener(target: any, eventName: string, callback: Function): void;
701
- static ɵfac: i0.ɵɵFactoryDeclaration<ɵDomEventsPlugin, never>;
702
- static ɵprov: i0.ɵɵInjectableDeclaration<ɵDomEventsPlugin>;
703
- }
704
-
705
- export declare class ɵDomRendererFactory2 implements RendererFactory2 {
706
- private eventManager;
707
- private sharedStylesHost;
708
- private appId;
709
- private rendererByCompId;
710
- private defaultRenderer;
711
- constructor(eventManager: EventManager, sharedStylesHost: ɵDomSharedStylesHost, appId: string);
712
- createRenderer(element: any, type: RendererType2 | null): Renderer2;
713
- begin(): void;
714
- end(): void;
715
- static ɵfac: i0.ɵɵFactoryDeclaration<ɵDomRendererFactory2, never>;
716
- static ɵprov: i0.ɵɵInjectableDeclaration<ɵDomRendererFactory2>;
717
- }
718
-
719
- export declare class ɵDomSanitizerImpl extends DomSanitizer {
720
- private _doc;
721
- constructor(_doc: any);
722
- sanitize(ctx: SecurityContext, value: SafeValue | string | null): string | null;
723
- bypassSecurityTrustHtml(value: string): SafeHtml;
724
- bypassSecurityTrustStyle(value: string): SafeStyle;
725
- bypassSecurityTrustScript(value: string): SafeScript;
726
- bypassSecurityTrustUrl(value: string): SafeUrl;
727
- bypassSecurityTrustResourceUrl(value: string): SafeResourceUrl;
728
- static ɵfac: i0.ɵɵFactoryDeclaration<ɵDomSanitizerImpl, never>;
729
- static ɵprov: i0.ɵɵInjectableDeclaration<ɵDomSanitizerImpl>;
730
- }
731
-
732
- export declare class ɵDomSharedStylesHost extends ɵSharedStylesHost implements OnDestroy {
733
- private _doc;
734
- private _hostNodes;
735
- constructor(_doc: any);
736
- private _addStylesToHost;
737
- addHost(hostNode: Node): void;
738
- removeHost(hostNode: Node): void;
739
- onStylesAdded(additions: Set<string>): void;
740
- ngOnDestroy(): void;
741
- static ɵfac: i0.ɵɵFactoryDeclaration<ɵDomSharedStylesHost, never>;
742
- static ɵprov: i0.ɵɵInjectableDeclaration<ɵDomSharedStylesHost>;
743
- }
744
-
745
- export declare function ɵescapeHtml(text: string): string;
746
-
747
- export declare function ɵflattenStyles(compId: string, styles: Array<any | any[]>, target: string[]): string[];
748
-
749
- export { ɵgetDOM }
750
-
751
- /**
752
- * Event plugin that adds Hammer support to an application.
753
- *
754
- * @ngModule HammerModule
755
- */
756
- export declare class ɵHammerGesturesPlugin extends EventManagerPlugin {
757
- private _config;
758
- private console;
759
- private loader?;
760
- private _loaderPromise;
761
- constructor(doc: any, _config: HammerGestureConfig, console: ɵConsole, loader?: HammerLoader | null | undefined);
762
- supports(eventName: string): boolean;
763
- addEventListener(element: HTMLElement, eventName: string, handler: Function): Function;
764
- isCustomEvent(eventName: string): boolean;
765
- static ɵfac: i0.ɵɵFactoryDeclaration<ɵHammerGesturesPlugin, [null, null, null, { optional: true; }]>;
766
- static ɵprov: i0.ɵɵInjectableDeclaration<ɵHammerGesturesPlugin>;
767
- }
768
-
769
- export declare function ɵinitDomAdapter(): void;
770
-
771
- export declare const ɵINTERNAL_BROWSER_PLATFORM_PROVIDERS: StaticProvider[];
772
-
773
- /**
774
- * @publicApi
775
- * A browser plug-in that provides support for handling of key events in Angular.
776
- */
777
- export declare class ɵKeyEventsPlugin extends EventManagerPlugin {
778
- /**
779
- * Initializes an instance of the browser plug-in.
780
- * @param doc The document in which key events will be detected.
781
- */
782
- constructor(doc: any);
783
- /**
784
- * Reports whether a named key event is supported.
785
- * @param eventName The event name to query.
786
- * @return True if the named key event is supported.
787
- */
788
- supports(eventName: string): boolean;
789
- /**
790
- * Registers a handler for a specific element and key event.
791
- * @param element The HTML element to receive event notifications.
792
- * @param eventName The name of the key event to listen for.
793
- * @param handler A function to call when the notification occurs. Receives the
794
- * event object as an argument.
795
- * @returns The key event that was registered.
796
- */
797
- addEventListener(element: HTMLElement, eventName: string, handler: Function): Function;
798
- static parseEventName(eventName: string): {
799
- fullKey: string;
800
- domEventName: string;
801
- } | null;
802
- static getEventFullKey(event: KeyboardEvent): string;
803
- /**
804
- * Configures a handler callback for a key event.
805
- * @param fullKey The event name that combines all simultaneous keystrokes.
806
- * @param handler The function that responds to the key event.
807
- * @param zone The zone in which the event occurred.
808
- * @returns A callback function.
809
- */
810
- static eventCallback(fullKey: any, handler: Function, zone: NgZone): Function;
811
- static ɵfac: i0.ɵɵFactoryDeclaration<ɵKeyEventsPlugin, never>;
812
- static ɵprov: i0.ɵɵInjectableDeclaration<ɵKeyEventsPlugin>;
813
- }
814
-
815
- export declare const ɵNAMESPACE_URIS: {
816
- [ns: string]: string;
817
- };
818
-
819
- export declare class ɵSharedStylesHost {
820
- addStyles(styles: string[]): void;
821
- onStylesAdded(additions: Set<string>): void;
822
- getAllStyles(): string[];
823
- static ɵfac: i0.ɵɵFactoryDeclaration<ɵSharedStylesHost, never>;
824
- static ɵprov: i0.ɵɵInjectableDeclaration<ɵSharedStylesHost>;
825
- }
826
-
827
- export declare function ɵshimContentAttribute(componentShortId: string): string;
828
-
829
- export declare function ɵshimHostAttribute(componentShortId: string): string;
830
-
831
- /**
832
- * An id that identifies a particular application being bootstrapped, that should
833
- * match across the client/server boundary.
834
- */
835
- export declare const ɵTRANSITION_ID: InjectionToken<unknown>;
836
-
837
- export { }
7
+
8
+ import { ApplicationRef } from '@angular/core';
9
+ import { ComponentRef } from '@angular/core';
10
+ import { DebugElement } from '@angular/core';
11
+ import { DebugNode } from '@angular/core';
12
+ import { GetTestability } from '@angular/core';
13
+ import * as i0 from '@angular/core';
14
+ import * as i1 from '@angular/common';
15
+ import { ImportedNgModuleProviders } from '@angular/core';
16
+ import { InjectionToken } from '@angular/core';
17
+ import { ModuleWithProviders } from '@angular/core';
18
+ import { NgZone } from '@angular/core';
19
+ import { OnDestroy } from '@angular/core';
20
+ import { PlatformRef } from '@angular/core';
21
+ import { Predicate } from '@angular/core';
22
+ import { Provider } from '@angular/core';
23
+ import { Renderer2 } from '@angular/core';
24
+ import { RendererFactory2 } from '@angular/core';
25
+ import { RendererType2 } from '@angular/core';
26
+ import { Sanitizer } from '@angular/core';
27
+ import { SecurityContext } from '@angular/core';
28
+ import { StaticProvider } from '@angular/core';
29
+ import { Testability } from '@angular/core';
30
+ import { TestabilityRegistry } from '@angular/core';
31
+ import { Type } from '@angular/core';
32
+ import { Version } from '@angular/core';
33
+ import { ɵConsole } from '@angular/core';
34
+ import { ɵDomAdapter } from '@angular/common';
35
+ import { ɵgetDOM } from '@angular/common';
36
+
37
+ /**
38
+ * Set of config options available during the bootstrap operation via `bootstrapApplication` call.
39
+ *
40
+ * @publicApi
41
+ */
42
+ export declare interface ApplicationConfig {
43
+ /**
44
+ * List of providers that should be available to the root component and all its children.
45
+ */
46
+ providers: Array<Provider | ImportedNgModuleProviders>;
47
+ }
48
+
49
+ /**
50
+ * Bootstraps an instance of an Angular application and renders a root component.
51
+ *
52
+ * Note: the root component passed into this function *must* be a standalone one (should have the
53
+ * `standalone: true` flag in the `@Component` decorator config).
54
+ *
55
+ * ```typescript
56
+ * @Component({
57
+ * standalone: true,
58
+ * template: 'Hello world!'
59
+ * })
60
+ * class RootComponent {}
61
+ *
62
+ * const appRef: ApplicationRef = await bootstrapApplication(RootComponent);
63
+ * ```
64
+ *
65
+ * Note: this bootstrap method doesn't include [Testability](api/core/Testability) by default.
66
+ * You can add [Testability](api/core/Testability) by getting the list of necessary providers
67
+ * using `provideProtractorTestingSupport()` function and add them into the `options.providers`
68
+ * array. Example:
69
+ *
70
+ * ```typescript
71
+ * import {provideProtractorTestingSupport} from '@angular/platform-browser';
72
+ *
73
+ * await bootstrapApplication(RootComponent, providers: [provideProtractorTestingSupport()]);
74
+ * ```
75
+ *
76
+ * @param rootComponent A reference to a Standalone Component that should be rendered.
77
+ * @param options Additional configuration for the bootstrap operation, see `ApplicationConfig` for
78
+ * additional info.
79
+ * @returns A promise that returns an `ApplicationRef` instance once resolved.
80
+ *
81
+ * @publicApi
82
+ */
83
+ export declare function bootstrapApplication(rootComponent: Type<unknown>, options?: ApplicationConfig): Promise<ApplicationRef>;
84
+
85
+ /**
86
+ * Exports required infrastructure for all Angular apps.
87
+ * Included by default in all Angular apps created with the CLI
88
+ * `new` command.
89
+ * Re-exports `CommonModule` and `ApplicationModule`, making their
90
+ * exports and providers available to all apps.
91
+ *
92
+ * @publicApi
93
+ */
94
+ export declare class BrowserModule {
95
+ constructor(providersAlreadyPresent: boolean | null);
96
+ /**
97
+ * Configures a browser-based app to transition from a server-rendered app, if
98
+ * one is present on the page.
99
+ *
100
+ * @param params An object containing an identifier for the app to transition.
101
+ * The ID must match between the client and server versions of the app.
102
+ * @returns The reconfigured `BrowserModule` to import into the app's root `AppModule`.
103
+ */
104
+ static withServerTransition(params: {
105
+ appId: string;
106
+ }): ModuleWithProviders<BrowserModule>;
107
+ static ɵfac: i0.ɵɵFactoryDeclaration<BrowserModule, [{ optional: true; skipSelf: true; }]>;
108
+ static ɵmod: i0.ɵɵNgModuleDeclaration<BrowserModule, never, never, [typeof i1.CommonModule, typeof i0.ApplicationModule]>;
109
+ static ɵinj: i0.ɵɵInjectorDeclaration<BrowserModule>;
110
+ }
111
+
112
+ /**
113
+ * NgModule to install on the client side while using the `TransferState` to transfer state from
114
+ * server to client.
115
+ *
116
+ * @publicApi
117
+ */
118
+ export declare class BrowserTransferStateModule {
119
+ static ɵfac: i0.ɵɵFactoryDeclaration<BrowserTransferStateModule, never>;
120
+ static ɵmod: i0.ɵɵNgModuleDeclaration<BrowserTransferStateModule, never, never, never>;
121
+ static ɵinj: i0.ɵɵInjectorDeclaration<BrowserTransferStateModule>;
122
+ }
123
+
124
+ /**
125
+ * Predicates for use with {@link DebugElement}'s query functions.
126
+ *
127
+ * @publicApi
128
+ */
129
+ export declare class By {
130
+ /**
131
+ * Match all nodes.
132
+ *
133
+ * @usageNotes
134
+ * ### Example
135
+ *
136
+ * {@example platform-browser/dom/debug/ts/by/by.ts region='by_all'}
137
+ */
138
+ static all(): Predicate<DebugNode>;
139
+ /**
140
+ * Match elements by the given CSS selector.
141
+ *
142
+ * @usageNotes
143
+ * ### Example
144
+ *
145
+ * {@example platform-browser/dom/debug/ts/by/by.ts region='by_css'}
146
+ */
147
+ static css(selector: string): Predicate<DebugElement>;
148
+ /**
149
+ * Match nodes that have the given directive present.
150
+ *
151
+ * @usageNotes
152
+ * ### Example
153
+ *
154
+ * {@example platform-browser/dom/debug/ts/by/by.ts region='by_directive'}
155
+ */
156
+ static directive(type: Type<any>): Predicate<DebugNode>;
157
+ }
158
+
159
+ /**
160
+ * Disables Angular tools.
161
+ *
162
+ * @publicApi
163
+ */
164
+ export declare function disableDebugTools(): void;
165
+
166
+ /**
167
+ * DomSanitizer helps preventing Cross Site Scripting Security bugs (XSS) by sanitizing
168
+ * values to be safe to use in the different DOM contexts.
169
+ *
170
+ * For example, when binding a URL in an `<a [href]="someValue">` hyperlink, `someValue` will be
171
+ * sanitized so that an attacker cannot inject e.g. a `javascript:` URL that would execute code on
172
+ * the website.
173
+ *
174
+ * In specific situations, it might be necessary to disable sanitization, for example if the
175
+ * application genuinely needs to produce a `javascript:` style link with a dynamic value in it.
176
+ * Users can bypass security by constructing a value with one of the `bypassSecurityTrust...`
177
+ * methods, and then binding to that value from the template.
178
+ *
179
+ * These situations should be very rare, and extraordinary care must be taken to avoid creating a
180
+ * Cross Site Scripting (XSS) security bug!
181
+ *
182
+ * When using `bypassSecurityTrust...`, make sure to call the method as early as possible and as
183
+ * close as possible to the source of the value, to make it easy to verify no security bug is
184
+ * created by its use.
185
+ *
186
+ * It is not required (and not recommended) to bypass security if the value is safe, e.g. a URL that
187
+ * does not start with a suspicious protocol, or an HTML snippet that does not contain dangerous
188
+ * code. The sanitizer leaves safe values intact.
189
+ *
190
+ * @security Calling any of the `bypassSecurityTrust...` APIs disables Angular's built-in
191
+ * sanitization for the value passed in. Carefully check and audit all values and code paths going
192
+ * into this call. Make sure any user data is appropriately escaped for this security context.
193
+ * For more detail, see the [Security Guide](https://g.co/ng/security).
194
+ *
195
+ * @publicApi
196
+ */
197
+ export declare abstract class DomSanitizer implements Sanitizer {
198
+ /**
199
+ * Sanitizes a value for use in the given SecurityContext.
200
+ *
201
+ * If value is trusted for the context, this method will unwrap the contained safe value and use
202
+ * it directly. Otherwise, value will be sanitized to be safe in the given context, for example
203
+ * by replacing URLs that have an unsafe protocol part (such as `javascript:`). The implementation
204
+ * is responsible to make sure that the value can definitely be safely used in the given context.
205
+ */
206
+ abstract sanitize(context: SecurityContext, value: SafeValue | string | null): string | null;
207
+ /**
208
+ * Bypass security and trust the given value to be safe HTML. Only use this when the bound HTML
209
+ * is unsafe (e.g. contains `<script>` tags) and the code should be executed. The sanitizer will
210
+ * leave safe HTML intact, so in most situations this method should not be used.
211
+ *
212
+ * **WARNING:** calling this method with untrusted user data exposes your application to XSS
213
+ * security risks!
214
+ */
215
+ abstract bypassSecurityTrustHtml(value: string): SafeHtml;
216
+ /**
217
+ * Bypass security and trust the given value to be safe style value (CSS).
218
+ *
219
+ * **WARNING:** calling this method with untrusted user data exposes your application to XSS
220
+ * security risks!
221
+ */
222
+ abstract bypassSecurityTrustStyle(value: string): SafeStyle;
223
+ /**
224
+ * Bypass security and trust the given value to be safe JavaScript.
225
+ *
226
+ * **WARNING:** calling this method with untrusted user data exposes your application to XSS
227
+ * security risks!
228
+ */
229
+ abstract bypassSecurityTrustScript(value: string): SafeScript;
230
+ /**
231
+ * Bypass security and trust the given value to be a safe style URL, i.e. a value that can be used
232
+ * in hyperlinks or `<img src>`.
233
+ *
234
+ * **WARNING:** calling this method with untrusted user data exposes your application to XSS
235
+ * security risks!
236
+ */
237
+ abstract bypassSecurityTrustUrl(value: string): SafeUrl;
238
+ /**
239
+ * Bypass security and trust the given value to be a safe resource URL, i.e. a location that may
240
+ * be used to load executable code from, like `<script src>`, or `<iframe src>`.
241
+ *
242
+ * **WARNING:** calling this method with untrusted user data exposes your application to XSS
243
+ * security risks!
244
+ */
245
+ abstract bypassSecurityTrustResourceUrl(value: string): SafeResourceUrl;
246
+ static ɵfac: i0.ɵɵFactoryDeclaration<DomSanitizer, never>;
247
+ static ɵprov: i0.ɵɵInjectableDeclaration<DomSanitizer>;
248
+ }
249
+
250
+ /**
251
+ * Enabled Angular debug tools that are accessible via your browser's
252
+ * developer console.
253
+ *
254
+ * Usage:
255
+ *
256
+ * 1. Open developer console (e.g. in Chrome Ctrl + Shift + j)
257
+ * 1. Type `ng.` (usually the console will show auto-complete suggestion)
258
+ * 1. Try the change detection profiler `ng.profiler.timeChangeDetection()`
259
+ * then hit Enter.
260
+ *
261
+ * @publicApi
262
+ */
263
+ export declare function enableDebugTools<T>(ref: ComponentRef<T>): ComponentRef<T>;
264
+
265
+ /**
266
+ * The injection token for the event-manager plug-in service.
267
+ *
268
+ * @publicApi
269
+ */
270
+ export declare const EVENT_MANAGER_PLUGINS: InjectionToken<EventManagerPlugin[]>;
271
+
272
+ /**
273
+ * An injectable service that provides event management for Angular
274
+ * through a browser plug-in.
275
+ *
276
+ * @publicApi
277
+ */
278
+ export declare class EventManager {
279
+ private _zone;
280
+ private _plugins;
281
+ private _eventNameToPlugin;
282
+ /**
283
+ * Initializes an instance of the event-manager service.
284
+ */
285
+ constructor(plugins: EventManagerPlugin[], _zone: NgZone);
286
+ /**
287
+ * Registers a handler for a specific element and event.
288
+ *
289
+ * @param element The HTML element to receive event notifications.
290
+ * @param eventName The name of the event to listen for.
291
+ * @param handler A function to call when the notification occurs. Receives the
292
+ * event object as an argument.
293
+ * @returns A callback function that can be used to remove the handler.
294
+ */
295
+ addEventListener(element: HTMLElement, eventName: string, handler: Function): Function;
296
+ /**
297
+ * Registers a global handler for an event in a target view.
298
+ *
299
+ * @param target A target for global event notifications. One of "window", "document", or "body".
300
+ * @param eventName The name of the event to listen for.
301
+ * @param handler A function to call when the notification occurs. Receives the
302
+ * event object as an argument.
303
+ * @returns A callback function that can be used to remove the handler.
304
+ * @deprecated No longer being used in Ivy code. To be removed in version 14.
305
+ */
306
+ addGlobalEventListener(target: string, eventName: string, handler: Function): Function;
307
+ /**
308
+ * Retrieves the compilation zone in which event listeners are registered.
309
+ */
310
+ getZone(): NgZone;
311
+ static ɵfac: i0.ɵɵFactoryDeclaration<EventManager, never>;
312
+ static ɵprov: i0.ɵɵInjectableDeclaration<EventManager>;
313
+ }
314
+
315
+ declare abstract class EventManagerPlugin {
316
+ private _doc;
317
+ constructor(_doc: any);
318
+ manager: EventManager;
319
+ abstract supports(eventName: string): boolean;
320
+ abstract addEventListener(element: HTMLElement, eventName: string, handler: Function): Function;
321
+ addGlobalEventListener(element: string, eventName: string, handler: Function): Function;
322
+ }
323
+
324
+ /**
325
+ * Provides DOM operations in any browser environment.
326
+ *
327
+ * @security Tread carefully! Interacting with the DOM directly is dangerous and
328
+ * can introduce XSS risks.
329
+ */
330
+ declare abstract class GenericBrowserDomAdapter extends ɵDomAdapter {
331
+ readonly supportsDOMEvents: boolean;
332
+ }
333
+
334
+ /**
335
+ * DI token for providing [HammerJS](https://hammerjs.github.io/) support to Angular.
336
+ * @see `HammerGestureConfig`
337
+ *
338
+ * @ngModule HammerModule
339
+ * @publicApi
340
+ */
341
+ export declare const HAMMER_GESTURE_CONFIG: InjectionToken<HammerGestureConfig>;
342
+
343
+ /**
344
+ * Injection token used to provide a {@link HammerLoader} to Angular.
345
+ *
346
+ * @publicApi
347
+ */
348
+ export declare const HAMMER_LOADER: InjectionToken<HammerLoader>;
349
+
350
+ /**
351
+ * An injectable [HammerJS Manager](https://hammerjs.github.io/api/#hammermanager)
352
+ * for gesture recognition. Configures specific event recognition.
353
+ * @publicApi
354
+ */
355
+ export declare class HammerGestureConfig {
356
+ /**
357
+ * A set of supported event names for gestures to be used in Angular.
358
+ * Angular supports all built-in recognizers, as listed in
359
+ * [HammerJS documentation](https://hammerjs.github.io/).
360
+ */
361
+ events: string[];
362
+ /**
363
+ * Maps gesture event names to a set of configuration options
364
+ * that specify overrides to the default values for specific properties.
365
+ *
366
+ * The key is a supported event name to be configured,
367
+ * and the options object contains a set of properties, with override values
368
+ * to be applied to the named recognizer event.
369
+ * For example, to disable recognition of the rotate event, specify
370
+ * `{"rotate": {"enable": false}}`.
371
+ *
372
+ * Properties that are not present take the HammerJS default values.
373
+ * For information about which properties are supported for which events,
374
+ * and their allowed and default values, see
375
+ * [HammerJS documentation](https://hammerjs.github.io/).
376
+ *
377
+ */
378
+ overrides: {
379
+ [key: string]: Object;
380
+ };
381
+ /**
382
+ * Properties whose default values can be overridden for a given event.
383
+ * Different sets of properties apply to different events.
384
+ * For information about which properties are supported for which events,
385
+ * and their allowed and default values, see
386
+ * [HammerJS documentation](https://hammerjs.github.io/).
387
+ */
388
+ options?: {
389
+ cssProps?: any;
390
+ domEvents?: boolean;
391
+ enable?: boolean | ((manager: any) => boolean);
392
+ preset?: any[];
393
+ touchAction?: string;
394
+ recognizers?: any[];
395
+ inputClass?: any;
396
+ inputTarget?: EventTarget;
397
+ };
398
+ /**
399
+ * Creates a [HammerJS Manager](https://hammerjs.github.io/api/#hammermanager)
400
+ * and attaches it to a given HTML element.
401
+ * @param element The element that will recognize gestures.
402
+ * @returns A HammerJS event-manager object.
403
+ */
404
+ buildHammer(element: HTMLElement): HammerInstance;
405
+ static ɵfac: i0.ɵɵFactoryDeclaration<HammerGestureConfig, never>;
406
+ static ɵprov: i0.ɵɵInjectableDeclaration<HammerGestureConfig>;
407
+ }
408
+
409
+ declare interface HammerInstance {
410
+ on(eventName: string, callback?: Function): void;
411
+ off(eventName: string, callback?: Function): void;
412
+ destroy?(): void;
413
+ }
414
+
415
+ /**
416
+ * Function that loads HammerJS, returning a promise that is resolved once HammerJs is loaded.
417
+ *
418
+ * @publicApi
419
+ */
420
+ export declare type HammerLoader = () => Promise<void>;
421
+
422
+ /**
423
+ * Adds support for HammerJS.
424
+ *
425
+ * Import this module at the root of your application so that Angular can work with
426
+ * HammerJS to detect gesture events.
427
+ *
428
+ * Note that applications still need to include the HammerJS script itself. This module
429
+ * simply sets up the coordination layer between HammerJS and Angular's EventManager.
430
+ *
431
+ * @publicApi
432
+ */
433
+ export declare class HammerModule {
434
+ static ɵfac: i0.ɵɵFactoryDeclaration<HammerModule, never>;
435
+ static ɵmod: i0.ɵɵNgModuleDeclaration<HammerModule, never, never, never>;
436
+ static ɵinj: i0.ɵɵInjectorDeclaration<HammerModule>;
437
+ }
438
+
439
+ /**
440
+ * Create a `StateKey<T>` that can be used to store value of type T with `TransferState`.
441
+ *
442
+ * Example:
443
+ *
444
+ * ```
445
+ * const COUNTER_KEY = makeStateKey<number>('counter');
446
+ * let value = 10;
447
+ *
448
+ * transferState.set(COUNTER_KEY, value);
449
+ * ```
450
+ *
451
+ * @publicApi
452
+ */
453
+ export declare function makeStateKey<T = void>(key: string): StateKey<T>;
454
+
455
+ /**
456
+ * A service for managing HTML `<meta>` tags.
457
+ *
458
+ * Properties of the `MetaDefinition` object match the attributes of the
459
+ * HTML `<meta>` tag. These tags define document metadata that is important for
460
+ * things like configuring a Content Security Policy, defining browser compatibility
461
+ * and security settings, setting HTTP Headers, defining rich content for social sharing,
462
+ * and Search Engine Optimization (SEO).
463
+ *
464
+ * To identify specific `<meta>` tags in a document, use an attribute selection
465
+ * string in the format `"tag_attribute='value string'"`.
466
+ * For example, an `attrSelector` value of `"name='description'"` matches a tag
467
+ * whose `name` attribute has the value `"description"`.
468
+ * Selectors are used with the `querySelector()` Document method,
469
+ * in the format `meta[{attrSelector}]`.
470
+ *
471
+ * @see [HTML meta tag](https://developer.mozilla.org/docs/Web/HTML/Element/meta)
472
+ * @see [Document.querySelector()](https://developer.mozilla.org/docs/Web/API/Document/querySelector)
473
+ *
474
+ *
475
+ * @publicApi
476
+ */
477
+ export declare class Meta {
478
+ private _doc;
479
+ private _dom;
480
+ constructor(_doc: any);
481
+ /**
482
+ * Retrieves or creates a specific `<meta>` tag element in the current HTML document.
483
+ * In searching for an existing tag, Angular attempts to match the `name` or `property` attribute
484
+ * values in the provided tag definition, and verifies that all other attribute values are equal.
485
+ * If an existing element is found, it is returned and is not modified in any way.
486
+ * @param tag The definition of a `<meta>` element to match or create.
487
+ * @param forceCreation True to create a new element without checking whether one already exists.
488
+ * @returns The existing element with the same attributes and values if found,
489
+ * the new element if no match is found, or `null` if the tag parameter is not defined.
490
+ */
491
+ addTag(tag: MetaDefinition, forceCreation?: boolean): HTMLMetaElement | null;
492
+ /**
493
+ * Retrieves or creates a set of `<meta>` tag elements in the current HTML document.
494
+ * In searching for an existing tag, Angular attempts to match the `name` or `property` attribute
495
+ * values in the provided tag definition, and verifies that all other attribute values are equal.
496
+ * @param tags An array of tag definitions to match or create.
497
+ * @param forceCreation True to create new elements without checking whether they already exist.
498
+ * @returns The matching elements if found, or the new elements.
499
+ */
500
+ addTags(tags: MetaDefinition[], forceCreation?: boolean): HTMLMetaElement[];
501
+ /**
502
+ * Retrieves a `<meta>` tag element in the current HTML document.
503
+ * @param attrSelector The tag attribute and value to match against, in the format
504
+ * `"tag_attribute='value string'"`.
505
+ * @returns The matching element, if any.
506
+ */
507
+ getTag(attrSelector: string): HTMLMetaElement | null;
508
+ /**
509
+ * Retrieves a set of `<meta>` tag elements in the current HTML document.
510
+ * @param attrSelector The tag attribute and value to match against, in the format
511
+ * `"tag_attribute='value string'"`.
512
+ * @returns The matching elements, if any.
513
+ */
514
+ getTags(attrSelector: string): HTMLMetaElement[];
515
+ /**
516
+ * Modifies an existing `<meta>` tag element in the current HTML document.
517
+ * @param tag The tag description with which to replace the existing tag content.
518
+ * @param selector A tag attribute and value to match against, to identify
519
+ * an existing tag. A string in the format `"tag_attribute=`value string`"`.
520
+ * If not supplied, matches a tag with the same `name` or `property` attribute value as the
521
+ * replacement tag.
522
+ * @return The modified element.
523
+ */
524
+ updateTag(tag: MetaDefinition, selector?: string): HTMLMetaElement | null;
525
+ /**
526
+ * Removes an existing `<meta>` tag element from the current HTML document.
527
+ * @param attrSelector A tag attribute and value to match against, to identify
528
+ * an existing tag. A string in the format `"tag_attribute=`value string`"`.
529
+ */
530
+ removeTag(attrSelector: string): void;
531
+ /**
532
+ * Removes an existing `<meta>` tag element from the current HTML document.
533
+ * @param meta The tag definition to match against to identify an existing tag.
534
+ */
535
+ removeTagElement(meta: HTMLMetaElement): void;
536
+ private _getOrCreateElement;
537
+ private _setMetaElementAttributes;
538
+ private _parseSelector;
539
+ private _containsAttributes;
540
+ private _getMetaKeyMap;
541
+ static ɵfac: i0.ɵɵFactoryDeclaration<Meta, never>;
542
+ static ɵprov: i0.ɵɵInjectableDeclaration<Meta>;
543
+ }
544
+
545
+ /**
546
+ * Represents the attributes of an HTML `<meta>` element. The element itself is
547
+ * represented by the internal `HTMLMetaElement`.
548
+ *
549
+ * @see [HTML meta tag](https://developer.mozilla.org/docs/Web/HTML/Element/meta)
550
+ * @see `Meta`
551
+ *
552
+ * @publicApi
553
+ */
554
+ export declare type MetaDefinition = {
555
+ charset?: string;
556
+ content?: string;
557
+ httpEquiv?: string;
558
+ id?: string;
559
+ itemprop?: string;
560
+ name?: string;
561
+ property?: string;
562
+ scheme?: string;
563
+ url?: string;
564
+ } & {
565
+ [prop: string]: string;
566
+ };
567
+
568
+ /**
569
+ * A factory function that returns a `PlatformRef` instance associated with browser service
570
+ * providers.
571
+ *
572
+ * @publicApi
573
+ */
574
+ export declare const platformBrowser: (extraProviders?: StaticProvider[]) => PlatformRef;
575
+
576
+ /**
577
+ * Returns a set of providers required to setup [Testability](api/core/Testability) for an
578
+ * application bootstrapped using the `bootstrapApplication` function. The set of providers is
579
+ * needed to support testing an application with Protractor (which relies on the Testability APIs
580
+ * to be present).
581
+ *
582
+ * @returns An array of providers required to setup Testability for an application and make it
583
+ * available for testing using Protractor.
584
+ *
585
+ * @publicApi
586
+ */
587
+ export declare function provideProtractorTestingSupport(): Provider[];
588
+
589
+ /**
590
+ * Marker interface for a value that's safe to use as HTML.
591
+ *
592
+ * @publicApi
593
+ */
594
+ export declare interface SafeHtml extends SafeValue {
595
+ }
596
+
597
+ /**
598
+ * Marker interface for a value that's safe to use as a URL to load executable code from.
599
+ *
600
+ * @publicApi
601
+ */
602
+ export declare interface SafeResourceUrl extends SafeValue {
603
+ }
604
+
605
+ /**
606
+ * Marker interface for a value that's safe to use as JavaScript.
607
+ *
608
+ * @publicApi
609
+ */
610
+ export declare interface SafeScript extends SafeValue {
611
+ }
612
+
613
+ /**
614
+ * Marker interface for a value that's safe to use as style (CSS).
615
+ *
616
+ * @publicApi
617
+ */
618
+ export declare interface SafeStyle extends SafeValue {
619
+ }
620
+
621
+ /**
622
+ * Marker interface for a value that's safe to use as a URL linking to a document.
623
+ *
624
+ * @publicApi
625
+ */
626
+ export declare interface SafeUrl extends SafeValue {
627
+ }
628
+
629
+ /**
630
+ * Marker interface for a value that's safe to use in a particular context.
631
+ *
632
+ * @publicApi
633
+ */
634
+ export declare interface SafeValue {
635
+ }
636
+
637
+ /**
638
+ * A type-safe key to use with `TransferState`.
639
+ *
640
+ * Example:
641
+ *
642
+ * ```
643
+ * const COUNTER_KEY = makeStateKey<number>('counter');
644
+ * let value = 10;
645
+ *
646
+ * transferState.set(COUNTER_KEY, value);
647
+ * ```
648
+ *
649
+ * @publicApi
650
+ */
651
+ export declare type StateKey<T> = string & {
652
+ __not_a_string: never;
653
+ __value_type?: T;
654
+ };
655
+
656
+ /**
657
+ * A service that can be used to get and set the title of a current HTML document.
658
+ *
659
+ * Since an Angular application can't be bootstrapped on the entire HTML document (`<html>` tag)
660
+ * it is not possible to bind to the `text` property of the `HTMLTitleElement` elements
661
+ * (representing the `<title>` tag). Instead, this service can be used to set and get the current
662
+ * title value.
663
+ *
664
+ * @publicApi
665
+ */
666
+ export declare class Title {
667
+ private _doc;
668
+ constructor(_doc: any);
669
+ /**
670
+ * Get the title of the current HTML document.
671
+ */
672
+ getTitle(): string;
673
+ /**
674
+ * Set the title of the current HTML document.
675
+ * @param newTitle
676
+ */
677
+ setTitle(newTitle: string): void;
678
+ static ɵfac: i0.ɵɵFactoryDeclaration<Title, never>;
679
+ static ɵprov: i0.ɵɵInjectableDeclaration<Title>;
680
+ }
681
+
682
+ /**
683
+ * A key value store that is transferred from the application on the server side to the application
684
+ * on the client side.
685
+ *
686
+ * `TransferState` will be available as an injectable token. To use it import
687
+ * `ServerTransferStateModule` on the server and `BrowserTransferStateModule` on the client.
688
+ *
689
+ * The values in the store are serialized/deserialized using JSON.stringify/JSON.parse. So only
690
+ * boolean, number, string, null and non-class objects will be serialized and deserialized in a
691
+ * non-lossy manner.
692
+ *
693
+ * @publicApi
694
+ */
695
+ export declare class TransferState {
696
+ private store;
697
+ private onSerializeCallbacks;
698
+ /**
699
+ * Get the value corresponding to a key. Return `defaultValue` if key is not found.
700
+ */
701
+ get<T>(key: StateKey<T>, defaultValue: T): T;
702
+ /**
703
+ * Set the value corresponding to a key.
704
+ */
705
+ set<T>(key: StateKey<T>, value: T): void;
706
+ /**
707
+ * Remove a key from the store.
708
+ */
709
+ remove<T>(key: StateKey<T>): void;
710
+ /**
711
+ * Test whether a key exists in the store.
712
+ */
713
+ hasKey<T>(key: StateKey<T>): boolean;
714
+ /**
715
+ * Register a callback to provide the value for a key when `toJson` is called.
716
+ */
717
+ onSerialize<T>(key: StateKey<T>, callback: () => T): void;
718
+ /**
719
+ * Serialize the current state of the store to JSON.
720
+ */
721
+ toJson(): string;
722
+ static ɵfac: i0.ɵɵFactoryDeclaration<TransferState, never>;
723
+ static ɵprov: i0.ɵɵInjectableDeclaration<TransferState>;
724
+ }
725
+
726
+ /**
727
+ * @publicApi
728
+ */
729
+ export declare const VERSION: Version;
730
+
731
+ /**
732
+ * A `DomAdapter` powered by full browser DOM APIs.
733
+ *
734
+ * @security Tread carefully! Interacting with the DOM directly is dangerous and
735
+ * can introduce XSS risks.
736
+ */
737
+ export declare class ɵBrowserDomAdapter extends GenericBrowserDomAdapter {
738
+ static makeCurrent(): void;
739
+ onAndCancel(el: Node, evt: any, listener: any): Function;
740
+ dispatchEvent(el: Node, evt: any): void;
741
+ remove(node: Node): void;
742
+ createElement(tagName: string, doc?: Document): HTMLElement;
743
+ createHtmlDocument(): Document;
744
+ getDefaultDocument(): Document;
745
+ isElementNode(node: Node): boolean;
746
+ isShadowRoot(node: any): boolean;
747
+ /** @deprecated No longer being used in Ivy code. To be removed in version 14. */
748
+ getGlobalEventTarget(doc: Document, target: string): EventTarget | null;
749
+ getBaseHref(doc: Document): string | null;
750
+ resetBaseElement(): void;
751
+ getUserAgent(): string;
752
+ getCookie(name: string): string | null;
753
+ }
754
+
755
+ export declare class ɵBrowserGetTestability implements GetTestability {
756
+ addToWindow(registry: TestabilityRegistry): void;
757
+ findTestabilityInTree(registry: TestabilityRegistry, elem: any, findInAncestors: boolean): Testability | null;
758
+ }
759
+
760
+ export declare class ɵDomEventsPlugin extends EventManagerPlugin {
761
+ constructor(doc: any);
762
+ supports(eventName: string): boolean;
763
+ addEventListener(element: HTMLElement, eventName: string, handler: Function): Function;
764
+ removeEventListener(target: any, eventName: string, callback: Function): void;
765
+ static ɵfac: i0.ɵɵFactoryDeclaration<ɵDomEventsPlugin, never>;
766
+ static ɵprov: i0.ɵɵInjectableDeclaration<ɵDomEventsPlugin>;
767
+ }
768
+
769
+ export declare class ɵDomRendererFactory2 implements RendererFactory2 {
770
+ private eventManager;
771
+ private sharedStylesHost;
772
+ private appId;
773
+ private rendererByCompId;
774
+ private defaultRenderer;
775
+ constructor(eventManager: EventManager, sharedStylesHost: ɵDomSharedStylesHost, appId: string);
776
+ createRenderer(element: any, type: RendererType2 | null): Renderer2;
777
+ begin(): void;
778
+ end(): void;
779
+ static ɵfac: i0.ɵɵFactoryDeclaration<ɵDomRendererFactory2, never>;
780
+ static ɵprov: i0.ɵɵInjectableDeclaration<ɵDomRendererFactory2>;
781
+ }
782
+
783
+ export declare class ɵDomSanitizerImpl extends DomSanitizer {
784
+ private _doc;
785
+ constructor(_doc: any);
786
+ sanitize(ctx: SecurityContext, value: SafeValue | string | null): string | null;
787
+ bypassSecurityTrustHtml(value: string): SafeHtml;
788
+ bypassSecurityTrustStyle(value: string): SafeStyle;
789
+ bypassSecurityTrustScript(value: string): SafeScript;
790
+ bypassSecurityTrustUrl(value: string): SafeUrl;
791
+ bypassSecurityTrustResourceUrl(value: string): SafeResourceUrl;
792
+ static ɵfac: i0.ɵɵFactoryDeclaration<ɵDomSanitizerImpl, never>;
793
+ static ɵprov: i0.ɵɵInjectableDeclaration<ɵDomSanitizerImpl>;
794
+ }
795
+
796
+ export declare class ɵDomSharedStylesHost extends ɵSharedStylesHost implements OnDestroy {
797
+ private _doc;
798
+ private _hostNodes;
799
+ constructor(_doc: any);
800
+ private _addStylesToHost;
801
+ addHost(hostNode: Node): void;
802
+ removeHost(hostNode: Node): void;
803
+ onStylesAdded(additions: Set<string>): void;
804
+ ngOnDestroy(): void;
805
+ static ɵfac: i0.ɵɵFactoryDeclaration<ɵDomSharedStylesHost, never>;
806
+ static ɵprov: i0.ɵɵInjectableDeclaration<ɵDomSharedStylesHost>;
807
+ }
808
+
809
+ export declare function ɵescapeHtml(text: string): string;
810
+
811
+ export declare function ɵflattenStyles(compId: string, styles: Array<any | any[]>, target: string[]): string[];
812
+
813
+ export { ɵgetDOM }
814
+
815
+ /**
816
+ * Event plugin that adds Hammer support to an application.
817
+ *
818
+ * @ngModule HammerModule
819
+ */
820
+ export declare class ɵHammerGesturesPlugin extends EventManagerPlugin {
821
+ private _config;
822
+ private console;
823
+ private loader?;
824
+ private _loaderPromise;
825
+ constructor(doc: any, _config: HammerGestureConfig, console: ɵConsole, loader?: HammerLoader | null | undefined);
826
+ supports(eventName: string): boolean;
827
+ addEventListener(element: HTMLElement, eventName: string, handler: Function): Function;
828
+ isCustomEvent(eventName: string): boolean;
829
+ static ɵfac: i0.ɵɵFactoryDeclaration<ɵHammerGesturesPlugin, [null, null, null, { optional: true; }]>;
830
+ static ɵprov: i0.ɵɵInjectableDeclaration<ɵHammerGesturesPlugin>;
831
+ }
832
+
833
+ export declare function ɵinitDomAdapter(): void;
834
+
835
+ export declare const ɵINTERNAL_BROWSER_PLATFORM_PROVIDERS: StaticProvider[];
836
+
837
+ /**
838
+ * @publicApi
839
+ * A browser plug-in that provides support for handling of key events in Angular.
840
+ */
841
+ export declare class ɵKeyEventsPlugin extends EventManagerPlugin {
842
+ /**
843
+ * Initializes an instance of the browser plug-in.
844
+ * @param doc The document in which key events will be detected.
845
+ */
846
+ constructor(doc: any);
847
+ /**
848
+ * Reports whether a named key event is supported.
849
+ * @param eventName The event name to query.
850
+ * @return True if the named key event is supported.
851
+ */
852
+ supports(eventName: string): boolean;
853
+ /**
854
+ * Registers a handler for a specific element and key event.
855
+ * @param element The HTML element to receive event notifications.
856
+ * @param eventName The name of the key event to listen for.
857
+ * @param handler A function to call when the notification occurs. Receives the
858
+ * event object as an argument.
859
+ * @returns The key event that was registered.
860
+ */
861
+ addEventListener(element: HTMLElement, eventName: string, handler: Function): Function;
862
+ static parseEventName(eventName: string): {
863
+ fullKey: string;
864
+ domEventName: string;
865
+ } | null;
866
+ static getEventFullKey(event: KeyboardEvent): string;
867
+ /**
868
+ * Configures a handler callback for a key event.
869
+ * @param fullKey The event name that combines all simultaneous keystrokes.
870
+ * @param handler The function that responds to the key event.
871
+ * @param zone The zone in which the event occurred.
872
+ * @returns A callback function.
873
+ */
874
+ static eventCallback(fullKey: any, handler: Function, zone: NgZone): Function;
875
+ static ɵfac: i0.ɵɵFactoryDeclaration<ɵKeyEventsPlugin, never>;
876
+ static ɵprov: i0.ɵɵInjectableDeclaration<ɵKeyEventsPlugin>;
877
+ }
878
+
879
+ export declare const ɵNAMESPACE_URIS: {
880
+ [ns: string]: string;
881
+ };
882
+
883
+ export declare class ɵSharedStylesHost {
884
+ addStyles(styles: string[]): void;
885
+ onStylesAdded(additions: Set<string>): void;
886
+ getAllStyles(): string[];
887
+ static ɵfac: i0.ɵɵFactoryDeclaration<ɵSharedStylesHost, never>;
888
+ static ɵprov: i0.ɵɵInjectableDeclaration<ɵSharedStylesHost>;
889
+ }
890
+
891
+ export declare function ɵshimContentAttribute(componentShortId: string): string;
892
+
893
+ export declare function ɵshimHostAttribute(componentShortId: string): string;
894
+
895
+ /**
896
+ * An id that identifies a particular application being bootstrapped, that should
897
+ * match across the client/server boundary.
898
+ */
899
+ export declare const ɵTRANSITION_ID: InjectionToken<unknown>;
900
+
901
+ export { }