@angular/core 21.2.1 → 21.2.2

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 (64) hide show
  1. package/fesm2022/_attribute-chunk.mjs +1 -1
  2. package/fesm2022/_debug_node-chunk.mjs +94 -37
  3. package/fesm2022/_debug_node-chunk.mjs.map +1 -1
  4. package/fesm2022/_effect-chunk.mjs +1 -1
  5. package/fesm2022/_effect-chunk2.mjs +2 -2
  6. package/fesm2022/_effect-chunk2.mjs.map +1 -1
  7. package/fesm2022/_not_found-chunk.mjs +1 -1
  8. package/fesm2022/_resource-chunk.mjs +1 -1
  9. package/fesm2022/_untracked-chunk.mjs +1 -1
  10. package/fesm2022/_weak_ref-chunk.mjs +1 -1
  11. package/fesm2022/core.mjs +5 -33
  12. package/fesm2022/core.mjs.map +1 -1
  13. package/fesm2022/primitives-di.mjs +1 -1
  14. package/fesm2022/primitives-event-dispatch.mjs +1 -1
  15. package/fesm2022/primitives-signals.mjs +1 -1
  16. package/fesm2022/rxjs-interop.mjs +1 -1
  17. package/fesm2022/testing.mjs +1 -1
  18. package/package.json +2 -2
  19. package/schematics/bundles/add-bootstrap-context-to-server-main.cjs +1 -1
  20. package/schematics/bundles/application-config-core.cjs +1 -1
  21. package/schematics/bundles/apply_import_manager-CxA_YYgB.cjs +1 -1
  22. package/schematics/bundles/bootstrap-options-migration.cjs +1 -1
  23. package/schematics/bundles/cleanup-unused-imports.cjs +1 -1
  24. package/schematics/bundles/common-to-standalone-migration.cjs +1 -1
  25. package/schematics/bundles/compiler_host-CY14HvaP.cjs +1 -1
  26. package/schematics/bundles/control-flow-migration.cjs +1 -1
  27. package/schematics/bundles/imports-CVmcbVA9.cjs +1 -1
  28. package/schematics/bundles/index-BtLcQH8g.cjs +1 -1
  29. package/schematics/bundles/inject-migration.cjs +1 -1
  30. package/schematics/bundles/leading_space-BTPRV0wu.cjs +1 -1
  31. package/schematics/bundles/migrate_ts_type_references-MWoZx-Cb.cjs +1 -1
  32. package/schematics/bundles/ng_component_template-BOuKAnQd.cjs +1 -1
  33. package/schematics/bundles/ng_decorators-DYy6II6x.cjs +1 -1
  34. package/schematics/bundles/ngclass-to-class-migration.cjs +1 -1
  35. package/schematics/bundles/ngstyle-to-style-migration.cjs +1 -1
  36. package/schematics/bundles/nodes-ZSQ7WZRB.cjs +1 -1
  37. package/schematics/bundles/output-migration.cjs +1 -1
  38. package/schematics/bundles/parse_html-C8eKA9px.cjs +1 -1
  39. package/schematics/bundles/project_paths-D2V-Uh2L.cjs +1 -1
  40. package/schematics/bundles/project_tsconfig_paths-DkkMibv-.cjs +1 -1
  41. package/schematics/bundles/property_name-BCpALNpZ.cjs +1 -1
  42. package/schematics/bundles/route-lazy-loading.cjs +1 -1
  43. package/schematics/bundles/router-current-navigation.cjs +1 -1
  44. package/schematics/bundles/router-last-successful-navigation.cjs +1 -1
  45. package/schematics/bundles/router-testing-module-migration.cjs +1 -1
  46. package/schematics/bundles/self-closing-tags-migration.cjs +1 -1
  47. package/schematics/bundles/signal-input-migration.cjs +1 -1
  48. package/schematics/bundles/signal-queries-migration.cjs +1 -1
  49. package/schematics/bundles/signals.cjs +1 -1
  50. package/schematics/bundles/standalone-migration.cjs +1 -1
  51. package/schematics/bundles/symbol-DZeHSR-V.cjs +1 -1
  52. package/types/_api-chunk.d.ts +1 -1
  53. package/types/_chrome_dev_tools_performance-chunk.d.ts +1 -1
  54. package/types/_discovery-chunk.d.ts +59 -51
  55. package/types/_effect-chunk.d.ts +1 -1
  56. package/types/_event_dispatcher-chunk.d.ts +1 -1
  57. package/types/_formatter-chunk.d.ts +1 -1
  58. package/types/_weak_ref-chunk.d.ts +1 -1
  59. package/types/core.d.ts +594 -593
  60. package/types/primitives-di.d.ts +1 -1
  61. package/types/primitives-event-dispatch.d.ts +1 -1
  62. package/types/primitives-signals.d.ts +1 -1
  63. package/types/rxjs-interop.d.ts +1 -1
  64. package/types/testing.d.ts +1 -1
package/types/core.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v21.2.1
2
+ * @license Angular v21.2.2
3
3
  * (c) 2010-2026 Google LLC. https://angular.dev/
4
4
  * License: MIT
5
5
  */
@@ -7,7 +7,7 @@
7
7
  import { SIGNAL, ReactiveNodeKind } from './_formatter-chunk.js';
8
8
  import { Signal, WritableSignal, OutputRef, Provider, EnvironmentProviders, Type as Type$1, ModuleWithProviders, TypeProvider, ValueProvider, ClassProvider, ConstructorProvider, ExistingProvider, FactoryProvider, StaticClassProvider, ProviderToken, StaticProvider, Injector, ValueSansProvider, ExistingSansProvider, StaticClassSansProvider, ConstructorSansProvider, FactorySansProvider, ClassSansProvider, InjectionToken, InternalInjectFlags, InjectOptions, ValueEqualityFn, EventCallback, isSignal, enableProfiling as enableProfiling$1 } from './_chrome_dev_tools_performance-chunk.js';
9
9
  export { AbstractType, CreateSignalOptions, DestroyRef, DestroyableInjector, OutputRefSubscription, isWritableSignal, signal, InternalEnvironmentProviders as ɵInternalEnvironmentProviders, JSACTION_EVENT_CONTRACT as ɵJSACTION_EVENT_CONTRACT, Writable as ɵWritable, isEnvironmentProviders as ɵisEnvironmentProviders, ɵunwrapWritableSignal } from './_chrome_dev_tools_performance-chunk.js';
10
- import { InputSignalNode, TypeDecorator, AfterRenderRef, EffectCleanupRegisterFn, SchemaMetadata, ComponentDef, DirectiveDef, CssSelectorList, DirectiveDefFeature, HostBindingsFunction, TAttributes, ContentQueriesFunction, ViewQueriesFunction, ComponentTemplate, TConstantsOrFactory, ComponentDefFeature, ViewEncapsulation as ViewEncapsulation$1, ChangeDetectionStrategy as ChangeDetectionStrategy$1, TypeOrFactory, DependencyTypeList, InputFlags, InputTransformFunction, EmbeddedViewRef, LView, ApplicationRef, ChangeDetectorRef, ComponentFactory as ComponentFactory$1, NgModuleRef as NgModuleRef$1, EnvironmentInjector, DirectiveWithBindings, Binding, ComponentRef as ComponentRef$1, ElementRef, ComponentFactoryResolver as ComponentFactoryResolver$1, InternalNgModuleRef, NgModuleFactory as NgModuleFactory$1, ViewRef as ViewRef$1, PlatformRef, NgZone, ɵɵFactoryDeclaration as __FactoryDeclaration, ɵɵInjectableDeclaration as __InjectableDeclaration, ɵɵNgModuleDeclaration as __NgModuleDeclaration, ɵɵInjectorDeclaration as __InjectorDeclaration, DeferBlockDependencyInterceptor, DeferBlockConfig, DeferBlockState, TNode, LContainer, TView, TDeferBlockDetails, RNode, Component, TrustedHTML, DehydratedDeferBlock, CompilerOptions, ComponentType, NgModuleScopeInfoFromDecorator, PipeType, DirectiveType, RawScopeInfoFromDecorator, HostDirectiveConfig, DependencyResolverFn, TDeferDetailsFlags, SanitizerFn, AnimationClassBindingFn, AnimationFunction, LocalRefExtractor, OpaqueViewState, GlobalTargetResolver, ProjectionSlots, QueryFlags, QueryList, RElement, ClassDebugInfo, Directive, NgModule, Pipe, TrustedScriptURL, TrustedScript } from './_discovery-chunk.js';
10
+ import { InputSignalNode, TypeDecorator, AfterRenderRef, EffectCleanupRegisterFn, SchemaMetadata, ComponentDef, DirectiveDef, CssSelectorList, DirectiveDefFeature, HostBindingsFunction, TAttributes, ContentQueriesFunction, ViewQueriesFunction, ComponentTemplate, TConstantsOrFactory, ComponentDefFeature, ViewEncapsulation as ViewEncapsulation$1, ChangeDetectionStrategy as ChangeDetectionStrategy$1, TypeOrFactory, DependencyTypeList, InputFlags, InputTransformFunction, EmbeddedViewRef, LView, ApplicationRef, ChangeDetectorRef, ComponentFactory as ComponentFactory$1, NgModuleRef as NgModuleRef$1, EnvironmentInjector, DirectiveWithBindings, Binding, ComponentRef as ComponentRef$1, ElementRef, ComponentFactoryResolver as ComponentFactoryResolver$1, InternalNgModuleRef, NgModuleFactory as NgModuleFactory$1, ViewRef as ViewRef$1, PlatformRef, NgZone, ɵɵFactoryDeclaration as __FactoryDeclaration, ɵɵInjectableDeclaration as __InjectableDeclaration, ɵɵNgModuleDeclaration as __NgModuleDeclaration, ɵɵInjectorDeclaration as __InjectorDeclaration, DeferBlockDependencyInterceptor, DeferBlockConfig, DeferBlockState, TNode, LContainer, TView, TDeferBlockDetails, RNode, Component, TrustedHTML, HostDirectiveConfig, ComponentType, NgModuleScopeInfoFromDecorator, DependencyResolverFn, TDeferDetailsFlags, SanitizerFn, AnimationClassBindingFn, AnimationFunction, LocalRefExtractor, OpaqueViewState, GlobalTargetResolver, ProjectionSlots, QueryFlags, QueryList, RElement, RawScopeInfoFromDecorator, ClassDebugInfo, DehydratedDeferBlock, CompilerOptions, PipeType, DirectiveType, Directive, NgModule, Pipe, TrustedScriptURL, TrustedScript } from './_discovery-chunk.js';
11
11
  export { APP_BOOTSTRAP_LISTENER, AnimationCallbackEvent, BootstrapOptions, COMPILER_OPTIONS, CUSTOM_ELEMENTS_SCHEMA, Compiler, CompilerFactory, ComponentDecorator, CreateEffectOptions, DebugElement, DebugEventListener, DebugNode, DirectiveDecorator, EffectCleanupFn, EffectRef, EventEmitter, HostBinding, HostBindingDecorator, HostListener, HostListenerDecorator, InjectableType, InjectorType, Input, InputDecorator, ListenerOptions, MAX_ANIMATION_TIMEOUT, ModuleWithComponentFactories, NO_ERRORS_SCHEMA, NgModuleDecorator, Output, OutputDecorator, PipeDecorator, Predicate, Renderer2, RendererFactory2, RendererStyleFlags2, RendererType2, Sanitizer, SecurityContext, asNativeElements, effect, getDebugNode, inputBinding, outputBinding, twoWayBinding, ANIMATIONS_DISABLED as ɵANIMATIONS_DISABLED, AfterRenderManager as ɵAfterRenderManager, AnimationRendererType as ɵAnimationRendererType, AttributeMarker as ɵAttributeMarker, CONTAINER_HEADER_OFFSET as ɵCONTAINER_HEADER_OFFSET, ChangeDetectionScheduler as ɵChangeDetectionScheduler, ControlDirectiveHost as ɵControlDirectiveHost, DeferBlockBehavior as ɵDeferBlockBehavior, DeferBlockDetails as ɵDeferBlockDetails, EffectScheduler as ɵEffectScheduler, INJECTOR_SCOPE as ɵINJECTOR_SCOPE, NG_INJ_DEF as ɵNG_INJ_DEF, NG_PROV_DEF as ɵNG_PROV_DEF, NavigateEvent as ɵNavigateEvent, Navigation as ɵNavigation, NavigationCurrentEntryChangeEvent as ɵNavigationCurrentEntryChangeEvent, NavigationDestination as ɵNavigationDestination, NavigationHistoryEntry as ɵNavigationHistoryEntry, NavigationInterceptOptions as ɵNavigationInterceptOptions, NavigationNavigateOptions as ɵNavigationNavigateOptions, NavigationOptions as ɵNavigationOptions, NavigationReloadOptions as ɵNavigationReloadOptions, NavigationResult as ɵNavigationResult, NavigationTransition as ɵNavigationTransition, NavigationTypeString as ɵNavigationTypeString, NavigationUpdateCurrentEntryOptions as ɵNavigationUpdateCurrentEntryOptions, NoopNgZone as ɵNoopNgZone, NotificationSource as ɵNotificationSource, PROVIDED_ZONELESS as ɵPROVIDED_ZONELESS, PipeDef as ɵPipeDef, R3Injector as ɵR3Injector, RenderFlags as ɵRenderFlags, TracingAction as ɵTracingAction, TracingService as ɵTracingService, TracingSnapshot as ɵTracingSnapshot, ZONELESS_ENABLED as ɵZONELESS_ENABLED, getDebugNode as ɵgetDebugNode, getDeferBlocks as ɵgetDeferBlocks, getInjectableDef as ɵgetInjectableDef, injectChangeDetectorRef as ɵinjectChangeDetectorRef, isBoundToModule as ɵisBoundToModule, isInjectable as ɵisInjectable, ɵɵComponentDeclaration, ɵɵDirectiveDeclaration, ɵɵInjectorDef, ɵɵPipeDeclaration, ɵɵdefineInjectable, ɵɵdefineInjector } from './_discovery-chunk.js';
12
12
  import { ResourceOptions, ResourceRef, ResourceStatus, ResourceStreamingLoader, ResourceStreamItem, WritableResource, ResourceSnapshot, Resource } from './_api-chunk.js';
13
13
  export { BaseResourceOptions, OutputEmitterRef, OutputOptions, PromiseResourceOptions, ResourceLoader, ResourceLoaderParams, StreamingResourceOptions, output, getOutputDestroyRef as ɵgetOutputDestroyRef } from './_api-chunk.js';
@@ -3368,6 +3368,7 @@ declare class ComponentFactory<T> extends ComponentFactory$1<T> {
3368
3368
  */
3369
3369
  constructor(componentDef: ComponentDef<any>, ngModule?: NgModuleRef$1<any> | undefined);
3370
3370
  create(injector: Injector, projectableNodes?: any[][] | undefined, rootSelectorOrNode?: any, environmentInjector?: NgModuleRef$1<any> | EnvironmentInjector | undefined, directives?: (Type$1<unknown> | DirectiveWithBindings<unknown>)[], componentBindings?: Binding[]): ComponentRef$1<T>;
3371
+ private createComponentRef;
3371
3372
  }
3372
3373
  /**
3373
3374
  * Represents an instance of a Component created via a {@link ComponentFactory}.
@@ -5734,110 +5735,129 @@ declare class ResourceImpl<T, R> extends BaseWritableResource<T> implements Reso
5734
5735
  }
5735
5736
  declare function encapsulateResourceError(error: unknown): Error;
5736
5737
 
5737
- /**
5738
- * Gets the class name of the closest component to a node.
5739
- * Warning! this function will return minified names if the name of the component is minified. The
5740
- * consumer of the function is responsible for resolving the minified name to its original name.
5741
- * @param node Node from which to start the search.
5742
- */
5743
- declare function getClosestComponentName(node: Node): string | null;
5738
+ declare function ɵɵControlFeature(passThroughInput: string | null): (definition: DirectiveDef<unknown>) => void;
5744
5739
 
5745
5740
  /**
5746
- * The following getter methods retrieve the definition from the type. Currently the retrieval
5747
- * honors inheritance, but in the future we may change the rule to require that definitions are
5748
- * explicit. This would require some sort of migration strategy.
5749
- */
5750
- declare function getComponentDef<T>(type: any): ComponentDef<T> | null;
5751
- /**
5752
- * Checks whether a given Component, Directive or Pipe is marked as standalone.
5753
- * This will return false if passed anything other than a Component, Directive, or Pipe class
5741
+ * This feature adds the host directives behavior to a directive definition by patching a
5742
+ * function onto it. The expectation is that the runtime will invoke the function during
5743
+ * directive matching.
5754
5744
  *
5755
- * @param type A reference to a Component, Directive or Pipe.
5756
- * @publicApi
5745
+ * For example:
5746
+ * ```ts
5747
+ * class ComponentWithHostDirective {
5748
+ * static ɵcmp = defineComponent({
5749
+ * type: ComponentWithHostDirective,
5750
+ * features: [ɵɵHostDirectivesFeature([
5751
+ * SimpleHostDirective,
5752
+ * {directive: AdvancedHostDirective, inputs: ['foo: alias'], outputs: ['bar']},
5753
+ * ])]
5754
+ * });
5755
+ * }
5756
+ * ```
5757
+ *
5758
+ * @codeGenApi
5757
5759
  */
5758
- declare function isStandalone(type: Type$1<unknown>): boolean;
5760
+ declare function ɵɵHostDirectivesFeature(rawHostDirectives: HostDirectiveConfig[] | (() => HostDirectiveConfig[])): DirectiveDefFeature;
5759
5761
 
5760
5762
  /**
5761
- * TODO(incremental-hydration): Remove this file entirely once PromiseWithResolvers lands in stable
5762
- * node / TS.
5763
+ * Merges the definition from a super class to a sub class.
5764
+ * @param definition The definition that is a SubClass of another directive of component
5765
+ *
5766
+ * @codeGenApi
5763
5767
  */
5764
- interface PromiseWithResolvers<T> {
5765
- promise: Promise<T>;
5766
- resolve: (value: T | PromiseLike<T>) => void;
5767
- reject: (reason?: any) => void;
5768
- }
5768
+ declare function ɵɵInheritDefinitionFeature(definition: DirectiveDef<any> | ComponentDef<any>): void;
5769
+
5769
5770
  /**
5770
- * Replace with `Promise.withResolvers()` once it's available.
5771
- * NET September 2026
5771
+ * The NgOnChangesFeature decorates a component with support for the ngOnChanges
5772
+ * lifecycle hook, so it should be included in any component that implements
5773
+ * that hook.
5772
5774
  *
5773
- * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/withResolvers.
5775
+ * If the component or directive uses inheritance, the NgOnChangesFeature MUST
5776
+ * be included as a feature AFTER {@link InheritDefinitionFeature}, otherwise
5777
+ * inherited properties will not be propagated to the ngOnChanges lifecycle
5778
+ * hook.
5779
+ *
5780
+ * Example usage:
5781
+ *
5782
+ * ```ts
5783
+ * static ɵcmp = defineComponent({
5784
+ * ...
5785
+ * inputs: {name: 'publicName'},
5786
+ * features: [NgOnChangesFeature]
5787
+ * });
5788
+ * ```
5789
+ *
5790
+ * @codeGenApi
5774
5791
  */
5775
- declare function promiseWithResolvers<T>(): {
5776
- promise: Promise<T>;
5777
- resolve: (value: T | PromiseLike<T>) => void;
5778
- reject: (reason?: any) => void;
5779
- };
5792
+ declare const ɵɵNgOnChangesFeature: () => DirectiveDefFeature;
5780
5793
 
5781
5794
  /**
5782
- * An internal injection token to reference `DehydratedBlockRegistry` implementation
5783
- * in a tree-shakable way.
5795
+ * This feature resolves the providers of a directive (or component),
5796
+ * and publish them into the DI system, making it visible to others for injection.
5797
+ *
5798
+ * For example:
5799
+ * ```ts
5800
+ * class ComponentWithProviders {
5801
+ * constructor(private greeter: GreeterDE) {}
5802
+ *
5803
+ * static ɵcmp = defineComponent({
5804
+ * type: ComponentWithProviders,
5805
+ * selectors: [['component-with-providers']],
5806
+ * factory: () => new ComponentWithProviders(directiveInject(GreeterDE as any)),
5807
+ * decls: 1,
5808
+ * vars: 1,
5809
+ * template: function(fs: RenderFlags, ctx: ComponentWithProviders) {
5810
+ * if (fs & RenderFlags.Create) {
5811
+ * ɵɵtext(0);
5812
+ * }
5813
+ * if (fs & RenderFlags.Update) {
5814
+ * ɵɵtextInterpolate(ctx.greeter.greet());
5815
+ * }
5816
+ * },
5817
+ * features: [ɵɵProvidersFeature([GreeterDE])]
5818
+ * });
5819
+ * }
5820
+ * ```
5821
+ *
5822
+ * @param definition
5823
+ *
5824
+ * @codeGenApi
5784
5825
  */
5785
- declare const DEHYDRATED_BLOCK_REGISTRY: InjectionToken<DehydratedBlockRegistry>;
5826
+ declare function ɵɵProvidersFeature<T>(providers: Provider[], viewProviders: Provider[]): (definition: DirectiveDef<T>) => void;
5827
+
5786
5828
  /**
5787
- * The DehydratedBlockRegistry is used for incremental hydration purposes. It keeps
5788
- * track of the Defer Blocks that need hydration so we can effectively
5789
- * navigate up to the top dehydrated defer block and fire appropriate cleanup
5790
- * functions post hydration.
5829
+ * A feature that adds support for external runtime styles for a component.
5830
+ * An external runtime style is a URL to a CSS stylesheet that contains the styles
5831
+ * for a given component. For browsers, this URL will be used in an appended `link` element
5832
+ * when the component is rendered. This feature is typically used for Hot Module Replacement
5833
+ * (HMR) of component stylesheets by leveraging preexisting global stylesheet HMR available
5834
+ * in most development servers.
5835
+ *
5836
+ * @codeGenApi
5791
5837
  */
5792
- declare class DehydratedBlockRegistry {
5793
- private registry;
5794
- private cleanupFns;
5795
- private jsActionMap;
5796
- private contract;
5797
- add(blockId: string, info: DehydratedDeferBlock): void;
5798
- get(blockId: string): DehydratedDeferBlock | null;
5799
- has(blockId: string): boolean;
5800
- cleanup(hydratedBlocks: string[]): void;
5801
- get size(): number;
5802
- addCleanupFn(blockId: string, fn: Function): void;
5803
- invokeTriggerCleanupFns(blockId: string): void;
5804
- hydrating: Map<string, PromiseWithResolvers<void>>;
5805
- private awaitingCallbacks;
5806
- awaitParentBlock(topmostParentBlock: string, callback: Function): void;
5807
- /** @nocollapse */
5808
- static ɵprov: unknown;
5809
- }
5838
+ declare function ɵɵExternalStylesFeature(styleUrls: string[]): ComponentDefFeature;
5810
5839
 
5811
5840
  /**
5812
- * Helper service to schedule `setTimeout`s for batches of defer blocks,
5813
- * to avoid calling `setTimeout` for each defer block (e.g. if defer blocks
5814
- * are created inside a for loop).
5841
+ * Generated next to NgModules to monkey-patch directive and pipe references onto a component's
5842
+ * definition, when generating a direct reference in the component file would otherwise create an
5843
+ * import cycle.
5844
+ *
5845
+ * See [this explanation](https://hackmd.io/Odw80D0pR6yfsOjg_7XCJg?view) for more details.
5846
+ *
5847
+ * @codeGenApi
5815
5848
  */
5816
- declare class TimerScheduler implements OnDestroy {
5817
- executingCallbacks: boolean;
5818
- timeoutId: number | null;
5819
- invokeTimerAt: number | null;
5820
- current: Array<number | VoidFunction>;
5821
- deferred: Array<number | VoidFunction>;
5822
- add(delay: number, callback: VoidFunction, ngZone: NgZone): void;
5823
- remove(callback: VoidFunction): void;
5824
- private addToQueue;
5825
- private removeFromQueue;
5826
- private scheduleTimer;
5827
- private clearTimeout;
5828
- ngOnDestroy(): void;
5829
- /** @nocollapse */
5830
- static ɵprov: unknown;
5831
- }
5832
-
5849
+ declare function ɵɵsetComponentScope(type: ComponentType<any>, directives: Type$1<any>[] | (() => Type$1<any>[]), pipes: Type$1<any>[] | (() => Type$1<any>[])): void;
5833
5850
  /**
5834
- * Utility function used during template type checking to assert that a value is of a certain type.
5851
+ * Adds the module metadata that is necessary to compute the module's transitive scope to an
5852
+ * existing module definition.
5853
+ *
5854
+ * Scope metadata of modules is not used in production builds, so calls to this function can be
5855
+ * marked pure to tree-shake it from the bundle, allowing for all referenced declarations
5856
+ * to become eligible for tree-shaking as well.
5857
+ *
5835
5858
  * @codeGenApi
5836
5859
  */
5837
- declare function ɵassertType<T>(value: unknown): asserts value is T;
5838
-
5839
- /** Tracks the IDs of LViews with leaving animations. */
5840
- declare const allLeavingAnimations: Set<number>;
5860
+ declare function ɵɵsetNgModuleScope(type: any, scope: NgModuleScopeInfoFromDecorator): unknown;
5841
5861
 
5842
5862
  /**
5843
5863
  * Profiler events is an enum used by the profiler to distinguish between different calls of user
@@ -5973,438 +5993,63 @@ declare enum Framework {
5973
5993
  Wiz = "wiz"
5974
5994
  }
5975
5995
 
5976
- declare function compileNgModuleFactory<M>(injector: Injector, options: CompilerOptions, moduleType: Type$1<M>): Promise<NgModuleFactory$1<M>>;
5977
-
5978
5996
  /**
5979
- * Create a new `Injector` which is configured using a `defType` of `InjectorType<any>`s.
5997
+ * Retrieves the component instance associated with a given DOM element.
5998
+ *
5999
+ * @usageNotes
6000
+ * Given the following DOM structure:
6001
+ *
6002
+ * ```html
6003
+ * <app-root>
6004
+ * <div>
6005
+ * <child-comp></child-comp>
6006
+ * </div>
6007
+ * </app-root>
6008
+ * ```
6009
+ *
6010
+ * Calling `getComponent` on `<child-comp>` will return the instance of `ChildComponent`
6011
+ * associated with this DOM element.
6012
+ *
6013
+ * Calling the function on `<app-root>` will return the `MyApp` instance.
6014
+ *
6015
+ *
6016
+ * @param element DOM element from which the component should be retrieved.
6017
+ * @returns Component instance associated with the element or `null` if there
6018
+ * is no component associated with it.
6019
+ *
6020
+ * @publicApi
5980
6021
  */
5981
- declare function createInjector(defType: any, parent?: Injector | null, additionalProviders?: Array<Provider | StaticProvider> | null, name?: string): Injector;
5982
-
6022
+ declare function getComponent<T>(element: Element): T | null;
5983
6023
  /**
5984
- * Adds the given NgModule type to Angular's NgModule registry.
6024
+ * If inside an embedded view (e.g. `*ngIf` or `*ngFor`), retrieves the context of the embedded
6025
+ * view that the element is part of. Otherwise retrieves the instance of the component whose view
6026
+ * owns the element (in this case, the result is the same as calling `getOwningComponent`).
5985
6027
  *
5986
- * This is generated as a side-effect of NgModule compilation. Note that the `id` is passed in
5987
- * explicitly and not read from the NgModule definition. This is for two reasons: it avoids a
5988
- * megamorphic read, and in JIT there's a chicken-and-egg problem where the NgModule may not be
5989
- * fully resolved when it's registered.
6028
+ * @param element Element for which to get the surrounding component instance.
6029
+ * @returns Instance of the component that is around the element or null if the element isn't
6030
+ * inside any component.
5990
6031
  *
5991
- * @codeGenApi
6032
+ * @publicApi
5992
6033
  */
5993
- declare function registerNgModuleType(ngModuleType: NgModuleType, id: string): void;
6034
+ declare function getContext<T extends {}>(element: Element): T | null;
5994
6035
  /**
5995
- * Control whether the NgModule registration system enforces that each NgModule type registered has
5996
- * a unique id.
6036
+ * Retrieves the component instance whose view contains the DOM element.
5997
6037
  *
5998
- * This is useful for testing as the NgModule registry cannot be properly reset between tests with
5999
- * Angular's current API.
6038
+ * For example, if `<child-comp>` is used in the template of `<app-comp>`
6039
+ * (i.e. a `ViewChild` of `<app-comp>`), calling `getOwningComponent` on `<child-comp>`
6040
+ * would return `<app-comp>`.
6041
+ *
6042
+ * @param elementOrDir DOM element, component or directive instance
6043
+ * for which to retrieve the root components.
6044
+ * @returns Component instance whose view owns the DOM element or null if the element is not
6045
+ * part of a component view.
6046
+ *
6047
+ * @publicApi
6000
6048
  */
6001
- declare function setAllowDuplicateNgModuleIdsForTest(allowDuplicates: boolean): void;
6002
-
6049
+ declare function getOwningComponent<T>(elementOrDir: Element | {}): T | null;
6003
6050
  /**
6004
- * The internal view context which is specific to a given DOM element, directive or
6005
- * component instance. Each value in here (besides the LView and element node details)
6006
- * can be present, null or undefined. If undefined then it implies the value has not been
6007
- * looked up yet, otherwise, if null, then a lookup was executed and nothing was found.
6008
- *
6009
- * Each value will get filled when the respective value is examined within the getContext
6010
- * function. The component, element and each directive instance will share the same instance
6011
- * of the context.
6012
- */
6013
- declare class LContext {
6014
- /**
6015
- * ID of the component's parent view data.
6016
- */
6017
- private lViewId;
6018
- /**
6019
- * The index instance of the node.
6020
- */
6021
- nodeIndex: number;
6022
- /**
6023
- * The instance of the DOM node that is attached to the lNode.
6024
- */
6025
- native: RNode;
6026
- /**
6027
- * The instance of the Component node.
6028
- */
6029
- component: {} | null | undefined;
6030
- /**
6031
- * The list of active directives that exist on this element.
6032
- */
6033
- directives: any[] | null | undefined;
6034
- /**
6035
- * The map of local references (local reference name => element or directive instance) that
6036
- * exist on this element.
6037
- */
6038
- localRefs: {
6039
- [key: string]: any;
6040
- } | null | undefined;
6041
- /** Component's parent view data. */
6042
- get lView(): LView | null;
6043
- constructor(
6044
- /**
6045
- * ID of the component's parent view data.
6046
- */
6047
- lViewId: number,
6048
- /**
6049
- * The index instance of the node.
6050
- */
6051
- nodeIndex: number,
6052
- /**
6053
- * The instance of the DOM node that is attached to the lNode.
6054
- */
6055
- native: RNode);
6056
- }
6057
-
6058
- /**
6059
- * Returns the matching `LContext` data for a given DOM node, directive or component instance.
6060
- *
6061
- * This function will examine the provided DOM element, component, or directive instance\'s
6062
- * monkey-patched property to derive the `LContext` data. Once called then the monkey-patched
6063
- * value will be that of the newly created `LContext`.
6064
- *
6065
- * If the monkey-patched value is the `LView` instance then the context value for that
6066
- * target will be created and the monkey-patch reference will be updated. Therefore when this
6067
- * function is called it may mutate the provided element\'s, component\'s or any of the associated
6068
- * directive\'s monkey-patch values.
6069
- *
6070
- * If the monkey-patch value is not detected then the code will walk up the DOM until an element
6071
- * is found which contains a monkey-patch reference. When that occurs then the provided element
6072
- * will be updated with a new context (which is then returned). If the monkey-patch value is not
6073
- * detected for a component/directive instance then it will throw an error (all components and
6074
- * directives should be automatically monkey-patched by ivy).
6075
- *
6076
- * @param target Component, Directive or DOM Node.
6077
- */
6078
- declare function getLContext(target: any): LContext | null;
6079
-
6080
- /**
6081
- * Represents the set of dependencies of a type in a certain context.
6082
- */
6083
- interface ScopeData {
6084
- pipes: Set<PipeType<any>>;
6085
- directives: Set<DirectiveType<any> | ComponentType<any> | Type$1<any>>;
6086
- /**
6087
- * If true it indicates that calculating this scope somehow was not successful. The consumers
6088
- * should interpret this as empty dependencies. The application of this flag is when calculating
6089
- * scope recursively, the presence of this flag in a scope dependency implies that the scope is
6090
- * also poisoned and thus we can return immediately without having to continue the recursion. The
6091
- * reason for this error is displayed as an error message in the console as per JIT behavior
6092
- * today. In addition to that, in local compilation the other build/compilations run in parallel
6093
- * with local compilation may or may not reveal some details about the error as well.
6094
- */
6095
- isPoisoned?: boolean;
6096
- }
6097
- /**
6098
- * Represents scope data for standalone components as calculated during runtime by the deps
6099
- * tracker.
6100
- */
6101
- interface StandaloneCompScopeData extends ScopeData {
6102
- ngModules: Set<NgModuleType<any>>;
6103
- }
6104
- /** Represents scope data for NgModule as calculated during runtime by the deps tracker. */
6105
- interface NgModuleScope {
6106
- compilation: ScopeData;
6107
- exported: ScopeData;
6108
- }
6109
- /**
6110
- * Represents scope data for standalone component as calculated during runtime by the deps tracker.
6111
- */
6112
- interface StandaloneComponentScope {
6113
- compilation: StandaloneCompScopeData;
6114
- }
6115
- /** Component dependencies info as calculated during runtime by the deps tracker. */
6116
- interface ComponentDependencies {
6117
- dependencies: DependencyTypeList;
6118
- }
6119
- /**
6120
- * Public API for runtime deps tracker (RDT).
6121
- *
6122
- * All downstream tools should only use these methods.
6123
- */
6124
- interface DepsTrackerApi {
6125
- /**
6126
- * Computes the component dependencies, i.e., a set of components/directive/pipes that could be
6127
- * present in the component's template (This set might contain directives/components/pipes not
6128
- * necessarily used in the component's template depending on the implementation).
6129
- *
6130
- * Standalone components should specify `rawImports` as this information is not available from
6131
- * their type. The consumer (e.g., {@link getStandaloneDefFunctions}) is expected to pass this
6132
- * parameter.
6133
- *
6134
- * The implementation is expected to use some caching mechanism in order to optimize the resources
6135
- * needed to do this computation.
6136
- */
6137
- getComponentDependencies(cmp: ComponentType<any>, rawImports?: (Type$1<any> | (() => Type$1<any>))[]): ComponentDependencies;
6138
- /**
6139
- * Registers an NgModule into the tracker with the given scope info.
6140
- *
6141
- * This method should be called for every NgModule whether it is compiled in local mode or not.
6142
- * This is needed in order to compute component's dependencies as some dependencies might be in
6143
- * different compilation units with different compilation mode.
6144
- */
6145
- registerNgModule(type: Type$1<any>, scopeInfo: NgModuleScopeInfoFromDecorator): void;
6146
- /**
6147
- * Clears the scope cache for NgModule or standalone component. This will force re-calculation of
6148
- * the scope, which could be an expensive operation as it involves aggregating transitive closure.
6149
- *
6150
- * The main application of this method is for test beds where we want to clear the cache to
6151
- * enforce scope update after overriding.
6152
- */
6153
- clearScopeCacheFor(type: Type$1<any>): void;
6154
- /**
6155
- * Returns the scope of NgModule. Mainly to be used by JIT and test bed.
6156
- *
6157
- * The scope value here is memoized. To enforce a new calculation bust the cache by using
6158
- * `clearScopeCacheFor` method.
6159
- */
6160
- getNgModuleScope(type: NgModuleType<any>): NgModuleScope;
6161
- /**
6162
- * Returns the scope of standalone component. Mainly to be used by JIT. This method should be
6163
- * called lazily after the initial parsing so that all the forward refs can be resolved.
6164
- *
6165
- * @param rawImports the imports statement as appears on the component decorate which consists of
6166
- * Type as well as forward refs.
6167
- *
6168
- * The scope value here is memoized. To enforce a new calculation bust the cache by using
6169
- * `clearScopeCacheFor` method.
6170
- */
6171
- getStandaloneComponentScope(type: ComponentType<any>, rawImports: (Type$1<any> | (() => Type$1<any>))[]): StandaloneComponentScope;
6172
- /**
6173
- * Checks if the NgModule declaring the component is not loaded into the browser yet. Always
6174
- * returns false for standalone components.
6175
- */
6176
- isOrphanComponent(cmp: ComponentType<any>): boolean;
6177
- }
6178
-
6179
- /**
6180
- * An implementation of DepsTrackerApi which will be used for JIT and local compilation.
6181
- */
6182
- declare class DepsTracker implements DepsTrackerApi {
6183
- private ownerNgModule;
6184
- private ngModulesWithSomeUnresolvedDecls;
6185
- private ngModulesScopeCache;
6186
- private standaloneComponentsScopeCache;
6187
- /**
6188
- * Attempts to resolve ng module's forward ref declarations as much as possible and add them to
6189
- * the `ownerNgModule` map. This method normally should be called after the initial parsing when
6190
- * all the forward refs are resolved (e.g., when trying to render a component)
6191
- */
6192
- private resolveNgModulesDecls;
6193
- /** @override */
6194
- getComponentDependencies(type: ComponentType<any>, rawImports?: RawScopeInfoFromDecorator[]): ComponentDependencies;
6195
- /**
6196
- * @override
6197
- * This implementation does not make use of param scopeInfo since it assumes the scope info is
6198
- * already added to the type itself through methods like {@link ɵɵsetNgModuleScope}
6199
- */
6200
- registerNgModule(type: Type$1<any>, scopeInfo: NgModuleScopeInfoFromDecorator): void;
6201
- /** @override */
6202
- clearScopeCacheFor(type: Type$1<any>): void;
6203
- /** @override */
6204
- getNgModuleScope(type: NgModuleType<any>): NgModuleScope;
6205
- /** Compute NgModule scope afresh. */
6206
- private computeNgModuleScope;
6207
- /** @override */
6208
- getStandaloneComponentScope(type: ComponentType<any>, rawImports?: RawScopeInfoFromDecorator[]): StandaloneComponentScope;
6209
- private computeStandaloneComponentScope;
6210
- /** @override */
6211
- isOrphanComponent(cmp: Type$1<any>): boolean;
6212
- }
6213
- /** The deps tracker to be used in the current Angular app in dev mode. */
6214
- declare const depsTracker: DepsTracker;
6215
-
6216
- declare const NG_COMP_DEF: string;
6217
- declare const NG_DIR_DEF: string;
6218
- declare const NG_PIPE_DEF: string;
6219
- declare const NG_MOD_DEF: string;
6220
- /**
6221
- * If a directive is diPublic, bloomAdd sets a property on the type with this constant as
6222
- * the key and the directive's unique ID as the value. This allows us to map directives to their
6223
- * bloom filter bit for DI.
6224
- */
6225
- declare const NG_ELEMENT_ID: string;
6226
-
6227
- declare function ɵɵControlFeature(passThroughInput: string | null): (definition: DirectiveDef<unknown>) => void;
6228
-
6229
- /**
6230
- * This feature adds the host directives behavior to a directive definition by patching a
6231
- * function onto it. The expectation is that the runtime will invoke the function during
6232
- * directive matching.
6233
- *
6234
- * For example:
6235
- * ```ts
6236
- * class ComponentWithHostDirective {
6237
- * static ɵcmp = defineComponent({
6238
- * type: ComponentWithHostDirective,
6239
- * features: [ɵɵHostDirectivesFeature([
6240
- * SimpleHostDirective,
6241
- * {directive: AdvancedHostDirective, inputs: ['foo: alias'], outputs: ['bar']},
6242
- * ])]
6243
- * });
6244
- * }
6245
- * ```
6246
- *
6247
- * @codeGenApi
6248
- */
6249
- declare function ɵɵHostDirectivesFeature(rawHostDirectives: HostDirectiveConfig[] | (() => HostDirectiveConfig[])): DirectiveDefFeature;
6250
-
6251
- /**
6252
- * Merges the definition from a super class to a sub class.
6253
- * @param definition The definition that is a SubClass of another directive of component
6254
- *
6255
- * @codeGenApi
6256
- */
6257
- declare function ɵɵInheritDefinitionFeature(definition: DirectiveDef<any> | ComponentDef<any>): void;
6258
-
6259
- /**
6260
- * The NgOnChangesFeature decorates a component with support for the ngOnChanges
6261
- * lifecycle hook, so it should be included in any component that implements
6262
- * that hook.
6263
- *
6264
- * If the component or directive uses inheritance, the NgOnChangesFeature MUST
6265
- * be included as a feature AFTER {@link InheritDefinitionFeature}, otherwise
6266
- * inherited properties will not be propagated to the ngOnChanges lifecycle
6267
- * hook.
6268
- *
6269
- * Example usage:
6270
- *
6271
- * ```ts
6272
- * static ɵcmp = defineComponent({
6273
- * ...
6274
- * inputs: {name: 'publicName'},
6275
- * features: [NgOnChangesFeature]
6276
- * });
6277
- * ```
6278
- *
6279
- * @codeGenApi
6280
- */
6281
- declare const ɵɵNgOnChangesFeature: () => DirectiveDefFeature;
6282
-
6283
- /**
6284
- * This feature resolves the providers of a directive (or component),
6285
- * and publish them into the DI system, making it visible to others for injection.
6286
- *
6287
- * For example:
6288
- * ```ts
6289
- * class ComponentWithProviders {
6290
- * constructor(private greeter: GreeterDE) {}
6291
- *
6292
- * static ɵcmp = defineComponent({
6293
- * type: ComponentWithProviders,
6294
- * selectors: [['component-with-providers']],
6295
- * factory: () => new ComponentWithProviders(directiveInject(GreeterDE as any)),
6296
- * decls: 1,
6297
- * vars: 1,
6298
- * template: function(fs: RenderFlags, ctx: ComponentWithProviders) {
6299
- * if (fs & RenderFlags.Create) {
6300
- * ɵɵtext(0);
6301
- * }
6302
- * if (fs & RenderFlags.Update) {
6303
- * ɵɵtextInterpolate(ctx.greeter.greet());
6304
- * }
6305
- * },
6306
- * features: [ɵɵProvidersFeature([GreeterDE])]
6307
- * });
6308
- * }
6309
- * ```
6310
- *
6311
- * @param definition
6312
- *
6313
- * @codeGenApi
6314
- */
6315
- declare function ɵɵProvidersFeature<T>(providers: Provider[], viewProviders: Provider[]): (definition: DirectiveDef<T>) => void;
6316
-
6317
- /**
6318
- * A feature that adds support for external runtime styles for a component.
6319
- * An external runtime style is a URL to a CSS stylesheet that contains the styles
6320
- * for a given component. For browsers, this URL will be used in an appended `link` element
6321
- * when the component is rendered. This feature is typically used for Hot Module Replacement
6322
- * (HMR) of component stylesheets by leveraging preexisting global stylesheet HMR available
6323
- * in most development servers.
6324
- *
6325
- * @codeGenApi
6326
- */
6327
- declare function ɵɵExternalStylesFeature(styleUrls: string[]): ComponentDefFeature;
6328
-
6329
- /**
6330
- * Generated next to NgModules to monkey-patch directive and pipe references onto a component's
6331
- * definition, when generating a direct reference in the component file would otherwise create an
6332
- * import cycle.
6333
- *
6334
- * See [this explanation](https://hackmd.io/Odw80D0pR6yfsOjg_7XCJg?view) for more details.
6335
- *
6336
- * @codeGenApi
6337
- */
6338
- declare function ɵɵsetComponentScope(type: ComponentType<any>, directives: Type$1<any>[] | (() => Type$1<any>[]), pipes: Type$1<any>[] | (() => Type$1<any>[])): void;
6339
- /**
6340
- * Adds the module metadata that is necessary to compute the module's transitive scope to an
6341
- * existing module definition.
6342
- *
6343
- * Scope metadata of modules is not used in production builds, so calls to this function can be
6344
- * marked pure to tree-shake it from the bundle, allowing for all referenced declarations
6345
- * to become eligible for tree-shaking as well.
6346
- *
6347
- * @codeGenApi
6348
- */
6349
- declare function ɵɵsetNgModuleScope(type: any, scope: NgModuleScopeInfoFromDecorator): unknown;
6350
-
6351
- /**
6352
- * Retrieves the component instance associated with a given DOM element.
6353
- *
6354
- * @usageNotes
6355
- * Given the following DOM structure:
6356
- *
6357
- * ```html
6358
- * <app-root>
6359
- * <div>
6360
- * <child-comp></child-comp>
6361
- * </div>
6362
- * </app-root>
6363
- * ```
6364
- *
6365
- * Calling `getComponent` on `<child-comp>` will return the instance of `ChildComponent`
6366
- * associated with this DOM element.
6367
- *
6368
- * Calling the function on `<app-root>` will return the `MyApp` instance.
6369
- *
6370
- *
6371
- * @param element DOM element from which the component should be retrieved.
6372
- * @returns Component instance associated with the element or `null` if there
6373
- * is no component associated with it.
6374
- *
6375
- * @publicApi
6376
- */
6377
- declare function getComponent<T>(element: Element): T | null;
6378
- /**
6379
- * If inside an embedded view (e.g. `*ngIf` or `*ngFor`), retrieves the context of the embedded
6380
- * view that the element is part of. Otherwise retrieves the instance of the component whose view
6381
- * owns the element (in this case, the result is the same as calling `getOwningComponent`).
6382
- *
6383
- * @param element Element for which to get the surrounding component instance.
6384
- * @returns Instance of the component that is around the element or null if the element isn't
6385
- * inside any component.
6386
- *
6387
- * @publicApi
6388
- */
6389
- declare function getContext<T extends {}>(element: Element): T | null;
6390
- /**
6391
- * Retrieves the component instance whose view contains the DOM element.
6392
- *
6393
- * For example, if `<child-comp>` is used in the template of `<app-comp>`
6394
- * (i.e. a `ViewChild` of `<app-comp>`), calling `getOwningComponent` on `<child-comp>`
6395
- * would return `<app-comp>`.
6396
- *
6397
- * @param elementOrDir DOM element, component or directive instance
6398
- * for which to retrieve the root components.
6399
- * @returns Component instance whose view owns the DOM element or null if the element is not
6400
- * part of a component view.
6401
- *
6402
- * @publicApi
6403
- */
6404
- declare function getOwningComponent<T>(elementOrDir: Element | {}): T | null;
6405
- /**
6406
- * Retrieves all root components associated with a DOM element, directive or component instance.
6407
- * Root components are those which have been bootstrapped by Angular.
6051
+ * Retrieves all root components associated with a DOM element, directive or component instance.
6052
+ * Root components are those which have been bootstrapped by Angular.
6408
6053
  *
6409
6054
  * @param elementOrDir DOM element, component or directive instance
6410
6055
  * for which to retrieve the root components.
@@ -8378,7 +8023,24 @@ declare function ɵɵpureFunction4(slotOffset: number, pureFn: (v1: any, v2: any
8378
8023
  *
8379
8024
  * @codeGenApi
8380
8025
  */
8381
- declare function ɵɵpureFunction5(slotOffset: number, pureFn: (v1: any, v2: any, v3: any, v4: any, v5: any) => any, exp1: any, exp2: any, exp3: any, exp4: any, exp5: any): any;
8026
+ declare function ɵɵpureFunction5(slotOffset: number, pureFn: (v1: any, v2: any, v3: any, v4: any, v5: any) => any, exp1: any, exp2: any, exp3: any, exp4: any, exp5: any): any;
8027
+ /**
8028
+ * If the value of any provided exp has changed, calls the pure function to return
8029
+ * an updated value. Or if no values have changed, returns cached value.
8030
+ *
8031
+ * @param slotOffset the offset from binding root to the reserved slot
8032
+ * @param pureFn
8033
+ * @param exp1
8034
+ * @param exp2
8035
+ * @param exp3
8036
+ * @param exp4
8037
+ * @param exp5
8038
+ * @param exp6
8039
+ * @returns Updated or cached value
8040
+ *
8041
+ * @codeGenApi
8042
+ */
8043
+ declare function ɵɵpureFunction6(slotOffset: number, pureFn: (v1: any, v2: any, v3: any, v4: any, v5: any, v6: any) => any, exp1: any, exp2: any, exp3: any, exp4: any, exp5: any, exp6: any): any;
8382
8044
  /**
8383
8045
  * If the value of any provided exp has changed, calls the pure function to return
8384
8046
  * an updated value. Or if no values have changed, returns cached value.
@@ -8391,11 +8053,12 @@ declare function ɵɵpureFunction5(slotOffset: number, pureFn: (v1: any, v2: any
8391
8053
  * @param exp4
8392
8054
  * @param exp5
8393
8055
  * @param exp6
8056
+ * @param exp7
8394
8057
  * @returns Updated or cached value
8395
8058
  *
8396
8059
  * @codeGenApi
8397
8060
  */
8398
- declare function ɵɵpureFunction6(slotOffset: number, pureFn: (v1: any, v2: any, v3: any, v4: any, v5: any, v6: any) => any, exp1: any, exp2: any, exp3: any, exp4: any, exp5: any, exp6: any): any;
8061
+ declare function ɵɵpureFunction7(slotOffset: number, pureFn: (v1: any, v2: any, v3: any, v4: any, v5: any, v6: any, v7: any) => any, exp1: any, exp2: any, exp3: any, exp4: any, exp5: any, exp6: any, exp7: any): any;
8399
8062
  /**
8400
8063
  * If the value of any provided exp has changed, calls the pure function to return
8401
8064
  * an updated value. Or if no values have changed, returns cached value.
@@ -8409,116 +8072,454 @@ declare function ɵɵpureFunction6(slotOffset: number, pureFn: (v1: any, v2: any
8409
8072
  * @param exp5
8410
8073
  * @param exp6
8411
8074
  * @param exp7
8075
+ * @param exp8
8412
8076
  * @returns Updated or cached value
8413
8077
  *
8414
8078
  * @codeGenApi
8415
8079
  */
8416
- declare function ɵɵpureFunction7(slotOffset: number, pureFn: (v1: any, v2: any, v3: any, v4: any, v5: any, v6: any, v7: any) => any, exp1: any, exp2: any, exp3: any, exp4: any, exp5: any, exp6: any, exp7: any): any;
8080
+ declare function ɵɵpureFunction8(slotOffset: number, pureFn: (v1: any, v2: any, v3: any, v4: any, v5: any, v6: any, v7: any, v8: any) => any, exp1: any, exp2: any, exp3: any, exp4: any, exp5: any, exp6: any, exp7: any, exp8: any): any;
8081
+ /**
8082
+ * pureFunction instruction that can support any number of bindings.
8083
+ *
8084
+ * If the value of any provided exp has changed, calls the pure function to return
8085
+ * an updated value. Or if no values have changed, returns cached value.
8086
+ *
8087
+ * @param slotOffset the offset from binding root to the reserved slot
8088
+ * @param pureFn A pure function that takes binding values and builds an object or array
8089
+ * containing those values.
8090
+ * @param exps An array of binding values
8091
+ * @returns Updated or cached value
8092
+ *
8093
+ * @codeGenApi
8094
+ */
8095
+ declare function ɵɵpureFunctionV(slotOffset: number, pureFn: (...v: any[]) => any, exps: any[]): any;
8096
+
8097
+ /**
8098
+ *
8099
+ * @codeGenApi
8100
+ */
8101
+ declare function ɵɵresolveWindow(element: RElement & {
8102
+ ownerDocument: Document;
8103
+ }): (Window & typeof globalThis) | null;
8104
+ /**
8105
+ *
8106
+ * @codeGenApi
8107
+ */
8108
+ declare function ɵɵresolveDocument(element: RElement & {
8109
+ ownerDocument: Document;
8110
+ }): Document;
8111
+ /**
8112
+ *
8113
+ * @codeGenApi
8114
+ */
8115
+ declare function ɵɵresolveBody(element: RElement & {
8116
+ ownerDocument: Document;
8117
+ }): HTMLElement;
8118
+
8119
+ /**
8120
+ * Retrieves `TemplateRef` instance from `Injector` when a local reference is placed on the
8121
+ * `<ng-template>` element.
8122
+ *
8123
+ * @codeGenApi
8124
+ */
8125
+ declare function ɵɵtemplateRefExtractor(tNode: TNode, lView: LView): TemplateRef<any> | null;
8126
+
8127
+ declare function ɵɵgetComponentDepsFactory(type: ComponentType<any>, rawImports?: RawScopeInfoFromDecorator[]): () => DependencyTypeList;
8128
+
8129
+ /**
8130
+ * Sets the debug info for an Angular class.
8131
+ *
8132
+ * This runtime is guarded by ngDevMode flag.
8133
+ */
8134
+ declare function ɵsetClassDebugInfo(type: Type$1<any>, debugInfo: ClassDebugInfo): void;
8135
+
8136
+ /** Represents `import.meta` plus some information that's not in the built-in types. */
8137
+ type ImportMetaExtended = ImportMeta & {
8138
+ hot?: {
8139
+ send?: (name: string, payload: unknown) => void;
8140
+ };
8141
+ };
8142
+ /**
8143
+ * Gets the URL from which the client will fetch a new version of a component's metadata so it
8144
+ * can be replaced during hot module reloading.
8145
+ * @param id Unique ID for the component, generated during compile time.
8146
+ * @param timestamp Time at which the request happened.
8147
+ * @param base Base URL against which to resolve relative paths.
8148
+ * @codeGenApi
8149
+ */
8150
+ declare function ɵɵgetReplaceMetadataURL(id: string, timestamp: string, base: string): string;
8151
+ /**
8152
+ * Replaces the metadata of a component type and re-renders all live instances of the component.
8153
+ * @param type Class whose metadata will be replaced.
8154
+ * @param applyMetadata Callback that will apply a new set of metadata on the `type` when invoked.
8155
+ * @param environment Syntehtic namespace imports that need to be passed along to the callback.
8156
+ * @param locals Local symbols from the source location that have to be exposed to the callback.
8157
+ * @param importMeta `import.meta` from the call site of the replacement function. Optional since
8158
+ * it isn't used internally.
8159
+ * @param id ID to the class being replaced. **Not** the same as the component definition ID.
8160
+ * Optional since the ID might not be available internally.
8161
+ * @codeGenApi
8162
+ */
8163
+ declare function ɵɵreplaceMetadata(type: Type$1<unknown>, applyMetadata: (...args: [Type$1<unknown>, unknown[], ...unknown[]]) => void, namespaces: unknown[], locals: unknown[], importMeta?: ImportMetaExtended | null, id?: string | null): void;
8164
+
8165
+ /** Store a value in the `data` at a given `index`. */
8166
+ declare function store<T>(tView: TView, lView: LView, index: number, value: T): void;
8167
+
8168
+ /**
8169
+ * Gets the class name of the closest component to a node.
8170
+ * Warning! this function will return minified names if the name of the component is minified. The
8171
+ * consumer of the function is responsible for resolving the minified name to its original name.
8172
+ * @param node Node from which to start the search.
8173
+ */
8174
+ declare function getClosestComponentName(node: Node): string | null;
8175
+
8176
+ /**
8177
+ * The following getter methods retrieve the definition from the type. Currently the retrieval
8178
+ * honors inheritance, but in the future we may change the rule to require that definitions are
8179
+ * explicit. This would require some sort of migration strategy.
8180
+ */
8181
+ declare function getComponentDef<T>(type: any): ComponentDef<T> | null;
8182
+ /**
8183
+ * Checks whether a given Component, Directive or Pipe is marked as standalone.
8184
+ * This will return false if passed anything other than a Component, Directive, or Pipe class
8185
+ *
8186
+ * @param type A reference to a Component, Directive or Pipe.
8187
+ * @publicApi
8188
+ */
8189
+ declare function isStandalone(type: Type$1<unknown>): boolean;
8190
+
8191
+ /**
8192
+ * TODO(incremental-hydration): Remove this file entirely once PromiseWithResolvers lands in stable
8193
+ * node / TS.
8194
+ */
8195
+ interface PromiseWithResolvers<T> {
8196
+ promise: Promise<T>;
8197
+ resolve: (value: T | PromiseLike<T>) => void;
8198
+ reject: (reason?: any) => void;
8199
+ }
8200
+ /**
8201
+ * Replace with `Promise.withResolvers()` once it's available.
8202
+ * NET September 2026
8203
+ *
8204
+ * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/withResolvers.
8205
+ */
8206
+ declare function promiseWithResolvers<T>(): {
8207
+ promise: Promise<T>;
8208
+ resolve: (value: T | PromiseLike<T>) => void;
8209
+ reject: (reason?: any) => void;
8210
+ };
8211
+
8212
+ /**
8213
+ * An internal injection token to reference `DehydratedBlockRegistry` implementation
8214
+ * in a tree-shakable way.
8215
+ */
8216
+ declare const DEHYDRATED_BLOCK_REGISTRY: InjectionToken<DehydratedBlockRegistry>;
8217
+ /**
8218
+ * The DehydratedBlockRegistry is used for incremental hydration purposes. It keeps
8219
+ * track of the Defer Blocks that need hydration so we can effectively
8220
+ * navigate up to the top dehydrated defer block and fire appropriate cleanup
8221
+ * functions post hydration.
8222
+ */
8223
+ declare class DehydratedBlockRegistry {
8224
+ private registry;
8225
+ private cleanupFns;
8226
+ private jsActionMap;
8227
+ private contract;
8228
+ add(blockId: string, info: DehydratedDeferBlock): void;
8229
+ get(blockId: string): DehydratedDeferBlock | null;
8230
+ has(blockId: string): boolean;
8231
+ cleanup(hydratedBlocks: string[]): void;
8232
+ get size(): number;
8233
+ addCleanupFn(blockId: string, fn: Function): void;
8234
+ invokeTriggerCleanupFns(blockId: string): void;
8235
+ hydrating: Map<string, PromiseWithResolvers<void>>;
8236
+ private awaitingCallbacks;
8237
+ awaitParentBlock(topmostParentBlock: string, callback: Function): void;
8238
+ /** @nocollapse */
8239
+ static ɵprov: unknown;
8240
+ }
8241
+
8242
+ /**
8243
+ * Helper service to schedule `setTimeout`s for batches of defer blocks,
8244
+ * to avoid calling `setTimeout` for each defer block (e.g. if defer blocks
8245
+ * are created inside a for loop).
8246
+ */
8247
+ declare class TimerScheduler implements OnDestroy {
8248
+ executingCallbacks: boolean;
8249
+ timeoutId: number | null;
8250
+ invokeTimerAt: number | null;
8251
+ current: Array<number | VoidFunction>;
8252
+ deferred: Array<number | VoidFunction>;
8253
+ add(delay: number, callback: VoidFunction, ngZone: NgZone): void;
8254
+ remove(callback: VoidFunction): void;
8255
+ private addToQueue;
8256
+ private removeFromQueue;
8257
+ private scheduleTimer;
8258
+ private clearTimeout;
8259
+ ngOnDestroy(): void;
8260
+ /** @nocollapse */
8261
+ static ɵprov: unknown;
8262
+ }
8263
+
8264
+ /**
8265
+ * Utility function used during template type checking to assert that a value is of a certain type.
8266
+ * @codeGenApi
8267
+ */
8268
+ declare function ɵassertType<T>(value: unknown): asserts value is T;
8269
+
8270
+ /** Tracks the IDs of LViews with leaving animations. */
8271
+ declare const allLeavingAnimations: Set<number>;
8272
+
8273
+ declare function compileNgModuleFactory<M>(injector: Injector, options: CompilerOptions, moduleType: Type$1<M>): Promise<NgModuleFactory$1<M>>;
8274
+
8275
+ /**
8276
+ * Create a new `Injector` which is configured using a `defType` of `InjectorType<any>`s.
8277
+ */
8278
+ declare function createInjector(defType: any, parent?: Injector | null, additionalProviders?: Array<Provider | StaticProvider> | null, name?: string): Injector;
8279
+
8280
+ /**
8281
+ * Adds the given NgModule type to Angular's NgModule registry.
8282
+ *
8283
+ * This is generated as a side-effect of NgModule compilation. Note that the `id` is passed in
8284
+ * explicitly and not read from the NgModule definition. This is for two reasons: it avoids a
8285
+ * megamorphic read, and in JIT there's a chicken-and-egg problem where the NgModule may not be
8286
+ * fully resolved when it's registered.
8287
+ *
8288
+ * @codeGenApi
8289
+ */
8290
+ declare function registerNgModuleType(ngModuleType: NgModuleType, id: string): void;
8291
+ /**
8292
+ * Control whether the NgModule registration system enforces that each NgModule type registered has
8293
+ * a unique id.
8294
+ *
8295
+ * This is useful for testing as the NgModule registry cannot be properly reset between tests with
8296
+ * Angular's current API.
8297
+ */
8298
+ declare function setAllowDuplicateNgModuleIdsForTest(allowDuplicates: boolean): void;
8299
+
8300
+ /**
8301
+ * The internal view context which is specific to a given DOM element, directive or
8302
+ * component instance. Each value in here (besides the LView and element node details)
8303
+ * can be present, null or undefined. If undefined then it implies the value has not been
8304
+ * looked up yet, otherwise, if null, then a lookup was executed and nothing was found.
8305
+ *
8306
+ * Each value will get filled when the respective value is examined within the getContext
8307
+ * function. The component, element and each directive instance will share the same instance
8308
+ * of the context.
8309
+ */
8310
+ declare class LContext {
8311
+ /**
8312
+ * ID of the component's parent view data.
8313
+ */
8314
+ private lViewId;
8315
+ /**
8316
+ * The index instance of the node.
8317
+ */
8318
+ nodeIndex: number;
8319
+ /**
8320
+ * The instance of the DOM node that is attached to the lNode.
8321
+ */
8322
+ native: RNode;
8323
+ /**
8324
+ * The instance of the Component node.
8325
+ */
8326
+ component: {} | null | undefined;
8327
+ /**
8328
+ * The list of active directives that exist on this element.
8329
+ */
8330
+ directives: any[] | null | undefined;
8331
+ /**
8332
+ * The map of local references (local reference name => element or directive instance) that
8333
+ * exist on this element.
8334
+ */
8335
+ localRefs: {
8336
+ [key: string]: any;
8337
+ } | null | undefined;
8338
+ /** Component's parent view data. */
8339
+ get lView(): LView | null;
8340
+ constructor(
8341
+ /**
8342
+ * ID of the component's parent view data.
8343
+ */
8344
+ lViewId: number,
8345
+ /**
8346
+ * The index instance of the node.
8347
+ */
8348
+ nodeIndex: number,
8349
+ /**
8350
+ * The instance of the DOM node that is attached to the lNode.
8351
+ */
8352
+ native: RNode);
8353
+ }
8354
+
8417
8355
  /**
8418
- * If the value of any provided exp has changed, calls the pure function to return
8419
- * an updated value. Or if no values have changed, returns cached value.
8420
- *
8421
- * @param slotOffset the offset from binding root to the reserved slot
8422
- * @param pureFn
8423
- * @param exp1
8424
- * @param exp2
8425
- * @param exp3
8426
- * @param exp4
8427
- * @param exp5
8428
- * @param exp6
8429
- * @param exp7
8430
- * @param exp8
8431
- * @returns Updated or cached value
8356
+ * Returns the matching `LContext` data for a given DOM node, directive or component instance.
8432
8357
  *
8433
- * @codeGenApi
8434
- */
8435
- declare function ɵɵpureFunction8(slotOffset: number, pureFn: (v1: any, v2: any, v3: any, v4: any, v5: any, v6: any, v7: any, v8: any) => any, exp1: any, exp2: any, exp3: any, exp4: any, exp5: any, exp6: any, exp7: any, exp8: any): any;
8436
- /**
8437
- * pureFunction instruction that can support any number of bindings.
8358
+ * This function will examine the provided DOM element, component, or directive instance\'s
8359
+ * monkey-patched property to derive the `LContext` data. Once called then the monkey-patched
8360
+ * value will be that of the newly created `LContext`.
8438
8361
  *
8439
- * If the value of any provided exp has changed, calls the pure function to return
8440
- * an updated value. Or if no values have changed, returns cached value.
8362
+ * If the monkey-patched value is the `LView` instance then the context value for that
8363
+ * target will be created and the monkey-patch reference will be updated. Therefore when this
8364
+ * function is called it may mutate the provided element\'s, component\'s or any of the associated
8365
+ * directive\'s monkey-patch values.
8441
8366
  *
8442
- * @param slotOffset the offset from binding root to the reserved slot
8443
- * @param pureFn A pure function that takes binding values and builds an object or array
8444
- * containing those values.
8445
- * @param exps An array of binding values
8446
- * @returns Updated or cached value
8367
+ * If the monkey-patch value is not detected then the code will walk up the DOM until an element
8368
+ * is found which contains a monkey-patch reference. When that occurs then the provided element
8369
+ * will be updated with a new context (which is then returned). If the monkey-patch value is not
8370
+ * detected for a component/directive instance then it will throw an error (all components and
8371
+ * directives should be automatically monkey-patched by ivy).
8447
8372
  *
8448
- * @codeGenApi
8373
+ * @param target Component, Directive or DOM Node.
8449
8374
  */
8450
- declare function ɵɵpureFunctionV(slotOffset: number, pureFn: (...v: any[]) => any, exps: any[]): any;
8375
+ declare function getLContext(target: any): LContext | null;
8451
8376
 
8452
8377
  /**
8453
- *
8454
- * @codeGenApi
8378
+ * Represents the set of dependencies of a type in a certain context.
8455
8379
  */
8456
- declare function ɵɵresolveWindow(element: RElement & {
8457
- ownerDocument: Document;
8458
- }): (Window & typeof globalThis) | null;
8380
+ interface ScopeData {
8381
+ pipes: Set<PipeType<any>>;
8382
+ directives: Set<DirectiveType<any> | ComponentType<any> | Type$1<any>>;
8383
+ /**
8384
+ * If true it indicates that calculating this scope somehow was not successful. The consumers
8385
+ * should interpret this as empty dependencies. The application of this flag is when calculating
8386
+ * scope recursively, the presence of this flag in a scope dependency implies that the scope is
8387
+ * also poisoned and thus we can return immediately without having to continue the recursion. The
8388
+ * reason for this error is displayed as an error message in the console as per JIT behavior
8389
+ * today. In addition to that, in local compilation the other build/compilations run in parallel
8390
+ * with local compilation may or may not reveal some details about the error as well.
8391
+ */
8392
+ isPoisoned?: boolean;
8393
+ }
8459
8394
  /**
8460
- *
8461
- * @codeGenApi
8395
+ * Represents scope data for standalone components as calculated during runtime by the deps
8396
+ * tracker.
8462
8397
  */
8463
- declare function ɵɵresolveDocument(element: RElement & {
8464
- ownerDocument: Document;
8465
- }): Document;
8398
+ interface StandaloneCompScopeData extends ScopeData {
8399
+ ngModules: Set<NgModuleType<any>>;
8400
+ }
8401
+ /** Represents scope data for NgModule as calculated during runtime by the deps tracker. */
8402
+ interface NgModuleScope {
8403
+ compilation: ScopeData;
8404
+ exported: ScopeData;
8405
+ }
8466
8406
  /**
8467
- *
8468
- * @codeGenApi
8407
+ * Represents scope data for standalone component as calculated during runtime by the deps tracker.
8469
8408
  */
8470
- declare function ɵɵresolveBody(element: RElement & {
8471
- ownerDocument: Document;
8472
- }): HTMLElement;
8473
-
8409
+ interface StandaloneComponentScope {
8410
+ compilation: StandaloneCompScopeData;
8411
+ }
8412
+ /** Component dependencies info as calculated during runtime by the deps tracker. */
8413
+ interface ComponentDependencies {
8414
+ dependencies: DependencyTypeList;
8415
+ }
8474
8416
  /**
8475
- * Retrieves `TemplateRef` instance from `Injector` when a local reference is placed on the
8476
- * `<ng-template>` element.
8417
+ * Public API for runtime deps tracker (RDT).
8477
8418
  *
8478
- * @codeGenApi
8419
+ * All downstream tools should only use these methods.
8479
8420
  */
8480
- declare function ɵɵtemplateRefExtractor(tNode: TNode, lView: LView): TemplateRef<any> | null;
8481
-
8482
- declare function ɵɵgetComponentDepsFactory(type: ComponentType<any>, rawImports?: RawScopeInfoFromDecorator[]): () => DependencyTypeList;
8421
+ interface DepsTrackerApi {
8422
+ /**
8423
+ * Computes the component dependencies, i.e., a set of components/directive/pipes that could be
8424
+ * present in the component's template (This set might contain directives/components/pipes not
8425
+ * necessarily used in the component's template depending on the implementation).
8426
+ *
8427
+ * Standalone components should specify `rawImports` as this information is not available from
8428
+ * their type. The consumer (e.g., {@link getStandaloneDefFunctions}) is expected to pass this
8429
+ * parameter.
8430
+ *
8431
+ * The implementation is expected to use some caching mechanism in order to optimize the resources
8432
+ * needed to do this computation.
8433
+ */
8434
+ getComponentDependencies(cmp: ComponentType<any>, rawImports?: (Type$1<any> | (() => Type$1<any>))[]): ComponentDependencies;
8435
+ /**
8436
+ * Registers an NgModule into the tracker with the given scope info.
8437
+ *
8438
+ * This method should be called for every NgModule whether it is compiled in local mode or not.
8439
+ * This is needed in order to compute component's dependencies as some dependencies might be in
8440
+ * different compilation units with different compilation mode.
8441
+ */
8442
+ registerNgModule(type: Type$1<any>, scopeInfo: NgModuleScopeInfoFromDecorator): void;
8443
+ /**
8444
+ * Clears the scope cache for NgModule or standalone component. This will force re-calculation of
8445
+ * the scope, which could be an expensive operation as it involves aggregating transitive closure.
8446
+ *
8447
+ * The main application of this method is for test beds where we want to clear the cache to
8448
+ * enforce scope update after overriding.
8449
+ */
8450
+ clearScopeCacheFor(type: Type$1<any>): void;
8451
+ /**
8452
+ * Returns the scope of NgModule. Mainly to be used by JIT and test bed.
8453
+ *
8454
+ * The scope value here is memoized. To enforce a new calculation bust the cache by using
8455
+ * `clearScopeCacheFor` method.
8456
+ */
8457
+ getNgModuleScope(type: NgModuleType<any>): NgModuleScope;
8458
+ /**
8459
+ * Returns the scope of standalone component. Mainly to be used by JIT. This method should be
8460
+ * called lazily after the initial parsing so that all the forward refs can be resolved.
8461
+ *
8462
+ * @param rawImports the imports statement as appears on the component decorate which consists of
8463
+ * Type as well as forward refs.
8464
+ *
8465
+ * The scope value here is memoized. To enforce a new calculation bust the cache by using
8466
+ * `clearScopeCacheFor` method.
8467
+ */
8468
+ getStandaloneComponentScope(type: ComponentType<any>, rawImports: (Type$1<any> | (() => Type$1<any>))[]): StandaloneComponentScope;
8469
+ /**
8470
+ * Checks if the NgModule declaring the component is not loaded into the browser yet. Always
8471
+ * returns false for standalone components.
8472
+ */
8473
+ isOrphanComponent(cmp: ComponentType<any>): boolean;
8474
+ }
8483
8475
 
8484
8476
  /**
8485
- * Sets the debug info for an Angular class.
8486
- *
8487
- * This runtime is guarded by ngDevMode flag.
8477
+ * An implementation of DepsTrackerApi which will be used for JIT and local compilation.
8488
8478
  */
8489
- declare function ɵsetClassDebugInfo(type: Type$1<any>, debugInfo: ClassDebugInfo): void;
8479
+ declare class DepsTracker implements DepsTrackerApi {
8480
+ private ownerNgModule;
8481
+ private ngModulesWithSomeUnresolvedDecls;
8482
+ private ngModulesScopeCache;
8483
+ private standaloneComponentsScopeCache;
8484
+ /**
8485
+ * Attempts to resolve ng module's forward ref declarations as much as possible and add them to
8486
+ * the `ownerNgModule` map. This method normally should be called after the initial parsing when
8487
+ * all the forward refs are resolved (e.g., when trying to render a component)
8488
+ */
8489
+ private resolveNgModulesDecls;
8490
+ /** @override */
8491
+ getComponentDependencies(type: ComponentType<any>, rawImports?: RawScopeInfoFromDecorator[]): ComponentDependencies;
8492
+ /**
8493
+ * @override
8494
+ * This implementation does not make use of param scopeInfo since it assumes the scope info is
8495
+ * already added to the type itself through methods like {@link ɵɵsetNgModuleScope}
8496
+ */
8497
+ registerNgModule(type: Type$1<any>, scopeInfo: NgModuleScopeInfoFromDecorator): void;
8498
+ /** @override */
8499
+ clearScopeCacheFor(type: Type$1<any>): void;
8500
+ /** @override */
8501
+ getNgModuleScope(type: NgModuleType<any>): NgModuleScope;
8502
+ /** Compute NgModule scope afresh. */
8503
+ private computeNgModuleScope;
8504
+ /** @override */
8505
+ getStandaloneComponentScope(type: ComponentType<any>, rawImports?: RawScopeInfoFromDecorator[]): StandaloneComponentScope;
8506
+ private computeStandaloneComponentScope;
8507
+ /** @override */
8508
+ isOrphanComponent(cmp: Type$1<any>): boolean;
8509
+ }
8510
+ /** The deps tracker to be used in the current Angular app in dev mode. */
8511
+ declare const depsTracker: DepsTracker;
8490
8512
 
8491
- /** Represents `import.meta` plus some information that's not in the built-in types. */
8492
- type ImportMetaExtended = ImportMeta & {
8493
- hot?: {
8494
- send?: (name: string, payload: unknown) => void;
8495
- };
8496
- };
8497
- /**
8498
- * Gets the URL from which the client will fetch a new version of a component's metadata so it
8499
- * can be replaced during hot module reloading.
8500
- * @param id Unique ID for the component, generated during compile time.
8501
- * @param timestamp Time at which the request happened.
8502
- * @param base Base URL against which to resolve relative paths.
8503
- * @codeGenApi
8504
- */
8505
- declare function ɵɵgetReplaceMetadataURL(id: string, timestamp: string, base: string): string;
8513
+ declare const NG_COMP_DEF: string;
8514
+ declare const NG_DIR_DEF: string;
8515
+ declare const NG_PIPE_DEF: string;
8516
+ declare const NG_MOD_DEF: string;
8506
8517
  /**
8507
- * Replaces the metadata of a component type and re-renders all live instances of the component.
8508
- * @param type Class whose metadata will be replaced.
8509
- * @param applyMetadata Callback that will apply a new set of metadata on the `type` when invoked.
8510
- * @param environment Syntehtic namespace imports that need to be passed along to the callback.
8511
- * @param locals Local symbols from the source location that have to be exposed to the callback.
8512
- * @param importMeta `import.meta` from the call site of the replacement function. Optional since
8513
- * it isn't used internally.
8514
- * @param id ID to the class being replaced. **Not** the same as the component definition ID.
8515
- * Optional since the ID might not be available internally.
8516
- * @codeGenApi
8518
+ * If a directive is diPublic, bloomAdd sets a property on the type with this constant as
8519
+ * the key and the directive's unique ID as the value. This allows us to map directives to their
8520
+ * bloom filter bit for DI.
8517
8521
  */
8518
- declare function ɵɵreplaceMetadata(type: Type$1<unknown>, applyMetadata: (...args: [Type$1<unknown>, unknown[], ...unknown[]]) => void, namespaces: unknown[], locals: unknown[], importMeta?: ImportMetaExtended | null, id?: string | null): void;
8519
-
8520
- /** Store a value in the `data` at a given `index`. */
8521
- declare function store<T>(tView: TView, lView: LView, index: number, value: T): void;
8522
+ declare const NG_ELEMENT_ID: string;
8522
8523
 
8523
8524
  type Type = Function;
8524
8525
  type OpaqueValue = unknown;