@ethlete/core 5.0.0-next.1 → 5.0.0-next.12

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.
@@ -1,5 +1,5 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { InjectionToken, AfterViewInit, Signal, ComponentRef, StaticProvider, EmbeddedViewRef, Provider, InjectOptions, TemplateRef, QueryList, InputSignal, InputSignalWithTransform, PipeTransform, TrackByFunction, ElementRef, WritableSignal, DestroyRef, Injector, RendererStyleFlags2, OnInit, OnDestroy } from '@angular/core';
2
+ import { InjectionToken, AfterViewInit, Signal, ComponentRef, StaticProvider, EmbeddedViewRef, ElementRef, Type, ViewContainerRef, Injector, RendererStyleFlags2, Provider, computed, InjectOptions, TemplateRef, QueryList, InputSignal, InputSignalWithTransform, PipeTransform, TrackByFunction, WritableSignal, DestroyRef, OnInit, OnDestroy } from '@angular/core';
3
3
  import * as rxjs from 'rxjs';
4
4
  import { Observable, BehaviorSubject, Subject } from 'rxjs';
5
5
  import * as _ethlete_core from '@ethlete/core';
@@ -81,6 +81,32 @@ declare class AnimatedLifecycleDirective implements AfterViewInit {
81
81
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AnimatedLifecycleDirective, "[etAnimatedLifecycle]", ["etAnimatedLifecycle"], { "skipNextEnter": { "alias": "skipNextEnter"; "required": false; "isSignal": true; }; }, { "stateChange": "stateChange"; "skipNextEnter": "skipNextEnterChange"; }, never, never, true, [{ directive: typeof AnimatableDirective; inputs: {}; outputs: {}; }]>;
82
82
  }
83
83
 
84
+ declare class ColorInteractiveContainerDirective {
85
+ private styleManager;
86
+ constructor();
87
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ColorInteractiveContainerDirective, never>;
88
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ColorInteractiveContainerDirective, "[etColorInteractiveContainer]", never, {}, {}, never, never, true, never>;
89
+ }
90
+
91
+ declare class ColorInteractiveExcludeDirective {
92
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ColorInteractiveExcludeDirective, never>;
93
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ColorInteractiveExcludeDirective, "[etColorInteractiveExclude]", never, {}, {}, never, never, true, never>;
94
+ }
95
+
96
+ declare class ColorInteractiveHasFocusDirective {
97
+ private styleManager;
98
+ constructor();
99
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ColorInteractiveHasFocusDirective, never>;
100
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ColorInteractiveHasFocusDirective, "[etColorInteractiveHasFocus]", never, {}, {}, never, never, true, never>;
101
+ }
102
+
103
+ declare class ColorInteractiveDirective {
104
+ private styleManager;
105
+ constructor();
106
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ColorInteractiveDirective, never>;
107
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ColorInteractiveDirective, "[etColorInteractive]", never, {}, {}, never, never, true, never>;
108
+ }
109
+
84
110
  type ThemeRGBColor = `${number} ${number} ${number}`;
85
111
  type ThemeHSLColor = `${number} ${number}% ${number}%`;
86
112
  type ThemeColor = ThemeRGBColor | ThemeHSLColor;
@@ -98,36 +124,48 @@ type OnThemeColorMap = {
98
124
  active?: ThemeColor;
99
125
  disabled?: ThemeColor;
100
126
  };
127
+ type ThemeInkColorMap = {
128
+ default: ThemeColor;
129
+ hover?: ThemeColor;
130
+ focus?: ThemeColor;
131
+ active?: ThemeColor;
132
+ disabled?: ThemeColor;
133
+ };
101
134
  type ThemeSwatch = {
102
135
  color: ThemeColorMap;
103
136
  onColor: OnThemeColorMap;
137
+ inkColor?: ThemeInkColorMap;
104
138
  };
105
- type Theme = {
139
+ type ColorThemeType = 'success' | 'warning' | 'error';
140
+ type ColorTheme = {
106
141
  name: string;
142
+ type?: ColorThemeType;
107
143
  isDefault?: boolean;
108
- isDefaultAlt?: boolean;
109
144
  primary: ThemeSwatch;
110
145
  secondary?: ThemeSwatch;
111
146
  tertiary?: ThemeSwatch;
112
147
  };
113
- declare const createCssThemeName: (name: string) => string;
114
- declare const ɵProvideColorThemes: (valueOverride?: (string | undefined)[] | undefined) => _angular_core.Provider[];
148
+ declare const createCssColorThemeName: (name: string) => string;
149
+ declare const ɵProvideColorThemes: (valueOverride?: (ColorTheme | undefined)[] | undefined) => _angular_core.Provider[];
115
150
  declare const injectColorThemes: {
116
- (): string[];
151
+ (): ColorTheme[];
117
152
  (options: _angular_core.InjectOptions & {
118
153
  optional?: false;
119
- }): string[];
120
- (options: _angular_core.InjectOptions): string[] | null;
154
+ }): ColorTheme[];
155
+ (options: _angular_core.InjectOptions): ColorTheme[] | null;
121
156
  };
122
- declare const ɵProvideThemesPrefix: (valueOverride?: string | undefined) => _angular_core.Provider[];
123
- declare const injectThemesPrefix: {
157
+ declare const ɵProvideColorThemesPrefix: (valueOverride?: string | undefined) => _angular_core.Provider[];
158
+ declare const injectColorThemesPrefix: {
124
159
  (): string;
125
160
  (options: _angular_core.InjectOptions & {
126
161
  optional?: false;
127
162
  }): string;
128
163
  (options: _angular_core.InjectOptions): string | null;
129
164
  };
130
- declare const provideColorThemesWithTailwind4: (themes: Theme[], prefix?: string) => _angular_core.Provider[][];
165
+ declare const provideColorThemesWithTailwind4: (themes: ColorTheme[], prefix?: string) => _angular_core.Provider[][];
166
+ declare const injectErrorTheme: () => ColorTheme;
167
+ declare const injectWarningTheme: () => ColorTheme;
168
+ declare const injectSuccessTheme: () => ColorTheme;
131
169
 
132
170
  /**
133
171
  * @deprecated Migrate to Tailwind v4. Intent to remove in v6.
@@ -136,11 +174,11 @@ declare const createSwatchCss: (swatch: string, isAlt: boolean, data: ThemeSwatc
136
174
  /**
137
175
  * @deprecated Migrate to Tailwind v4. Intent to remove in v6.
138
176
  */
139
- declare const createRootThemeCss: (themes: Theme[]) => void;
177
+ declare const createRootThemeCss: (themes: ColorTheme[]) => void;
140
178
  /**
141
179
  * @deprecated Migrate to Tailwind v4. Intent to remove in v6.
142
180
  */
143
- declare const createThemeStyle: (theme: Theme, isAlt: boolean) => void;
181
+ declare const createThemeStyle: (theme: ColorTheme, isAlt: boolean) => void;
144
182
  /**
145
183
  * @deprecated Migrate to Tailwind v4. Intent to remove in v6.
146
184
  */
@@ -152,7 +190,7 @@ declare const createTailwindRgbVar: (val: string | undefined) => string | null;
152
190
  /**
153
191
  * @deprecated Migrate to Tailwind v4. Intent to remove in v6.
154
192
  */
155
- declare const createTailwindColorThemes: (themes: Theme[], prefix?: string) => Record<string, {
193
+ declare const createTailwindColorThemes: (themes: ColorTheme[], prefix?: string) => Record<string, {
156
194
  DEFAULT: string;
157
195
  hover: string;
158
196
  focus: string;
@@ -162,34 +200,133 @@ declare const createTailwindColorThemes: (themes: Theme[], prefix?: string) => R
162
200
  /**
163
201
  * @deprecated Use provideColorThemesWithTailwind4 instead after migrating to Tailwind CSS v4. Intent to remove in v6.
164
202
  */
165
- declare const provideColorThemes: (themes: Theme[]) => _angular_core.Provider[][];
203
+ declare const provideColorThemes: (themes: ColorTheme[]) => _angular_core.Provider[][];
166
204
 
167
- declare const THEME_PROVIDER: InjectionToken<ProvideThemeDirective>;
168
- declare class ProvideThemeDirective {
205
+ declare const COLOR_PROVIDER: InjectionToken<ProvideColorDirective>;
206
+ declare class ProvideColorDirective {
169
207
  private themes;
170
208
  private prefix;
171
209
  private injector;
172
210
  private currentProviderSync;
173
- mainTheme: _angular_core.InputSignal<string | null | undefined>;
174
- altTheme: _angular_core.InputSignal<string | null | undefined>;
175
- mainThemeName: _angular_core.Signal<string | undefined>;
176
- altThemeName: _angular_core.Signal<string | undefined>;
211
+ private forcedColor;
212
+ color: _angular_core.InputSignal<string | ColorTheme | null | undefined>;
213
+ effectiveColor: _angular_core.Signal<string | ColorTheme | null | undefined>;
214
+ colorName: _angular_core.Signal<string | undefined>;
177
215
  protected themeClass: _angular_core.Signal<string>;
178
- syncWithProvider(provider: ProvideThemeDirective): void;
216
+ syncWithProvider(provider: ProvideColorDirective): void;
217
+ stopSyncWithProvider(): void;
218
+ /** @internal */
219
+ forceColor(color: string | ColorTheme | null): void;
220
+ /** @internal */
221
+ clearForcedColor(): void;
222
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ProvideColorDirective, never>;
223
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ProvideColorDirective, "[etProvideColor]", never, { "color": { "alias": "etProvideColor"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
224
+ }
225
+
226
+ declare const SURFACE_TYPE: {
227
+ readonly LIGHT: "light";
228
+ readonly DARK: "dark";
229
+ };
230
+ type SurfaceType = (typeof SURFACE_TYPE)[keyof typeof SURFACE_TYPE];
231
+ type SurfaceThemeColor = `${number} ${number} ${number}`;
232
+ type SurfaceInteractionColor = {
233
+ default: SurfaceThemeColor;
234
+ hover: SurfaceThemeColor;
235
+ focus: SurfaceThemeColor;
236
+ active: SurfaceThemeColor;
237
+ disabled: SurfaceThemeColor;
238
+ };
239
+ type SurfaceTheme = {
240
+ name: string;
241
+ type: SurfaceType;
242
+ elevation: number;
243
+ isDefault?: boolean;
244
+ interactionColor?: SurfaceInteractionColor;
245
+ background: SurfaceThemeColor;
246
+ color: SurfaceThemeColor;
247
+ colorMuted: SurfaceThemeColor;
248
+ colorSubtle: SurfaceThemeColor;
249
+ border: SurfaceThemeColor;
250
+ };
251
+ declare const createCssSurfaceName: (name: string) => string;
252
+ declare const resolveSurfaceByElevation: (themes: SurfaceTheme[], type: SurfaceType, elevation: number) => SurfaceTheme | null;
253
+ declare const ɵProvideSurfaceThemes: (valueOverride?: (SurfaceTheme | undefined)[] | undefined) => _angular_core.Provider[];
254
+ declare const injectSurfaceThemes: {
255
+ (): SurfaceTheme[];
256
+ (options: _angular_core.InjectOptions & {
257
+ optional?: false;
258
+ }): SurfaceTheme[];
259
+ (options: _angular_core.InjectOptions): SurfaceTheme[] | null;
260
+ };
261
+ declare const ɵProvideSurfaceThemesPrefix: (valueOverride?: string | undefined) => _angular_core.Provider[];
262
+ declare const injectSurfaceThemesPrefix: {
263
+ (): string;
264
+ (options: _angular_core.InjectOptions & {
265
+ optional?: false;
266
+ }): string;
267
+ (options: _angular_core.InjectOptions): string | null;
268
+ };
269
+ declare const provideSurfaceThemesWithTailwind4: (themes: SurfaceTheme[], prefix?: string) => _angular_core.Provider[][];
270
+
271
+ declare const SURFACE_PROVIDER: InjectionToken<ProvideSurfaceDirective>;
272
+ declare class ProvideSurfaceDirective {
273
+ private themes;
274
+ private prefix;
275
+ private injector;
276
+ private currentProviderSync;
277
+ private forcedSurface;
278
+ surface: _angular_core.InputSignal<string | null | undefined>;
279
+ effectiveSurface: _angular_core.Signal<string | null | undefined>;
280
+ resolvedTheme: _angular_core.Signal<SurfaceTheme | null>;
281
+ elevation: _angular_core.Signal<number>;
282
+ surfaceType: _angular_core.Signal<_ethlete_core.SurfaceType | null>;
283
+ surfaceName: _angular_core.Signal<string | undefined>;
284
+ protected surfaceClass: _angular_core.Signal<string>;
285
+ syncWithProvider(provider: ProvideSurfaceDirective): void;
179
286
  stopSyncWithProvider(): void;
180
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ProvideThemeDirective, never>;
181
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ProvideThemeDirective, "[etProvideTheme]", never, { "mainTheme": { "alias": "etProvideTheme"; "required": false; "isSignal": true; }; "altTheme": { "alias": "etProvideAltTheme"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
287
+ /** @internal */
288
+ forceSurface(surface: string | null): void;
289
+ /** @internal */
290
+ clearForcedSurface(): void;
291
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ProvideSurfaceDirective, never>;
292
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ProvideSurfaceDirective, "[etProvideSurface]", never, { "surface": { "alias": "etProvideSurface"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
293
+ }
294
+
295
+ type SurfaceContextEntry = {
296
+ id: string;
297
+ type: SurfaceType;
298
+ elevation: number;
299
+ };
300
+ type SurfaceContextTracker = {
301
+ topType: Signal<SurfaceType | null>;
302
+ topElevation: Signal<number>;
303
+ register: (type: SurfaceType, elevation: number) => () => void;
304
+ };
305
+ declare const provideSurfaceContextTracker: () => _angular_core.Provider[];
306
+ declare const injectSurfaceContextTracker: {
307
+ (): SurfaceContextTracker;
308
+ (options: _angular_core.InjectOptions & {
309
+ optional?: false;
310
+ }): SurfaceContextTracker;
311
+ (options: _angular_core.InjectOptions): SurfaceContextTracker | null;
312
+ };
313
+
314
+ declare class SurfaceInteractiveDirective {
315
+ private styleManager;
316
+ constructor();
317
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SurfaceInteractiveDirective, never>;
318
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SurfaceInteractiveDirective, "[etSurfaceInteractive]", never, {}, {}, never, never, true, never>;
182
319
  }
183
320
 
184
321
  type AnimatedOverlayComponentBase = {
185
322
  animatedLifecycle: Signal<AnimatedLifecycleDirective | undefined>;
186
- setThemeFromProvider: (provider: ProvideThemeDirective) => void;
323
+ setColorFromProvider: (provider: ProvideColorDirective) => void;
187
324
  };
188
325
  type AnimatedOverlayMountConfig<T> = {
189
326
  component: ComponentType<T>;
190
327
  providers?: StaticProvider[];
191
328
  data?: Partial<T>;
192
- themeProvider?: ProvideThemeDirective | null;
329
+ colorProvider?: ProvideColorDirective | null;
193
330
  };
194
331
  type AnimatedOverlayState = 'init' | 'mounting' | 'mounted' | 'unmounting' | 'unmounted';
195
332
  declare class AnimatedOverlayDirective<T extends AnimatedOverlayComponentBase> {
@@ -240,7 +377,7 @@ declare class AnimatedOverlayDirective<T extends AnimatedOverlayComponentBase> {
240
377
  mount(config: AnimatedOverlayMountConfig<T>): T | undefined;
241
378
  unmount(): void;
242
379
  private applyComponentData;
243
- private applyThemeProvider;
380
+ private applyColorProvider;
244
381
  private updateOverlaySize;
245
382
  private setupFloatingUI;
246
383
  private getFloatingArrow;
@@ -278,62 +415,512 @@ type FlipAnimationGroupConfig = {
278
415
  */
279
416
  easing?: string;
280
417
  };
281
- declare const createFlipAnimationGroup: (config: FlipAnimationGroupConfig) => {
282
- updateInit: () => void;
283
- play: () => void;
284
- cancel: () => void;
285
- onStart$: rxjs.Observable<void[]>;
286
- onFinish$: rxjs.Observable<void[]>;
287
- onCancel$: rxjs.Observable<void[]>;
418
+ declare const createFlipAnimationGroup: (config: FlipAnimationGroupConfig) => {
419
+ updateInit: () => void;
420
+ play: () => void;
421
+ cancel: () => void;
422
+ onStart$: rxjs.Observable<void[]>;
423
+ onFinish$: rxjs.Observable<void[]>;
424
+ onCancel$: rxjs.Observable<void[]>;
425
+ };
426
+ type FlipAnimationConfig = {
427
+ /**
428
+ * The element to animate
429
+ */
430
+ element: HTMLElement;
431
+ /**
432
+ * The element to use as the origin for the animation
433
+ * @default element
434
+ */
435
+ originElement?: HTMLElement;
436
+ /**
437
+ * The duration of the animation in milliseconds
438
+ * @default 250
439
+ */
440
+ duration?: number;
441
+ /**
442
+ * The easing function to use for the animation
443
+ * @default 'cubic-bezier(0.4, 0, 0.2, 1)'
444
+ */
445
+ easing?: string;
446
+ };
447
+ declare const createFlipAnimation: (config: FlipAnimationConfig) => {
448
+ updateInit: () => void;
449
+ play: () => void;
450
+ cancel: () => void;
451
+ onStart$: rxjs.Observable<void>;
452
+ onFinish$: rxjs.Observable<void>;
453
+ onCancel$: rxjs.Observable<void>;
454
+ };
455
+
456
+ declare class ClickOutsideDirective {
457
+ private elementRef;
458
+ private document;
459
+ didClickOutside: _angular_core.OutputEmitterRef<MouseEvent>;
460
+ constructor();
461
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ClickOutsideDirective, never>;
462
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ClickOutsideDirective, "[etClickOutside]", never, {}, { "didClickOutside": "etClickOutside"; }, never, never, true, never>;
463
+ }
464
+
465
+ declare class RepeatDirective {
466
+ private mainTemplateRef;
467
+ private viewContainerRef;
468
+ repeatCount: _angular_core.InputSignalWithTransform<number, unknown>;
469
+ views: _angular_core.WritableSignal<EmbeddedViewRef<unknown>[]>;
470
+ constructor();
471
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<RepeatDirective, never>;
472
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RepeatDirective, "[etRepeat]", never, { "repeatCount": { "alias": "etRepeat"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
473
+ }
474
+
475
+ declare class ScrollObserverEndDirective {
476
+ private elementRef;
477
+ private host;
478
+ constructor();
479
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ScrollObserverEndDirective, never>;
480
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ScrollObserverEndDirective, "[etScrollObserverEnd]", never, {}, {}, never, never, true, never>;
481
+ }
482
+
483
+ declare class ScrollObserverStartDirective {
484
+ private elementRef;
485
+ private host;
486
+ constructor();
487
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ScrollObserverStartDirective, never>;
488
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ScrollObserverStartDirective, "[etScrollObserverStart]", never, {}, {}, never, never, true, never>;
489
+ }
490
+
491
+ declare class ScrollObserverDirective {
492
+ private elementRef;
493
+ enabled: _angular_core.ModelSignal<boolean>;
494
+ private _startEl;
495
+ private _endEl;
496
+ private _startIntersection;
497
+ private _endIntersection;
498
+ isAtStart: Signal<boolean>;
499
+ isAtEnd: Signal<boolean>;
500
+ _registerStart(el: ElementRef<HTMLElement>): void;
501
+ _registerEnd(el: ElementRef<HTMLElement>): void;
502
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ScrollObserverDirective, never>;
503
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ScrollObserverDirective, "[etScrollObserver]", ["etScrollObserver"], { "enabled": { "alias": "enabled"; "required": false; "isSignal": true; }; }, { "enabled": "enabledChange"; }, never, never, true, never>;
504
+ }
505
+
506
+ type DragMoveEvent = {
507
+ readonly stepX: number;
508
+ readonly stepY: number;
509
+ readonly clientX: number;
510
+ readonly clientY: number;
511
+ };
512
+ declare class DragHandleDirective {
513
+ private el;
514
+ commitThreshold: _angular_core.InputSignal<number>;
515
+ disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
516
+ private gestureStart$;
517
+ private gesture$;
518
+ dragTapped: _angular_core.OutputRef<void>;
519
+ dragStarted: _angular_core.OutputRef<void>;
520
+ dragMoved: _angular_core.OutputRef<DragMoveEvent>;
521
+ dragEnded: _angular_core.OutputRef<void>;
522
+ isDragging: _angular_core.Signal<boolean>;
523
+ constructor();
524
+ startGesture(event: PointerEvent): void;
525
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<DragHandleDirective, never>;
526
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<DragHandleDirective, "[etDragHandle]", never, { "commitThreshold": { "alias": "commitThreshold"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "dragTapped": "dragTapped"; "dragStarted": "dragStarted"; "dragMoved": "dragMoved"; "dragEnded": "dragEnded"; }, never, never, true, never>;
527
+ }
528
+
529
+ type OverlayRuntimeRole = 'dialog' | 'alertdialog';
530
+ type OverlayRuntimeAutoFocusTarget = 'container' | 'first-heading' | 'first-tabbable';
531
+ type OverlayRuntimeCloseSource = 'api' | 'escape' | 'outside-pointer';
532
+ type OverlayRuntimeCenteredPosition = {
533
+ kind: 'center';
534
+ };
535
+ type OverlayRuntimeAnchoredPosition = {
536
+ kind: 'anchored';
537
+ referenceElement: HTMLElement;
538
+ placement?: Placement;
539
+ fallbackPlacements?: Placement[];
540
+ offset?: OffsetOptions | null;
541
+ arrowPadding?: Padding | null;
542
+ viewportPadding?: Padding | null;
543
+ autoResize?: boolean;
544
+ shift?: boolean;
545
+ autoHide?: boolean;
546
+ autoCloseIfReferenceHidden?: boolean;
547
+ mirrorWidth?: boolean;
548
+ };
549
+ type OverlayRuntimePositionStrategy = OverlayRuntimeCenteredPosition | OverlayRuntimeAnchoredPosition;
550
+ type OverlayRuntimeElements = {
551
+ rootElement: HTMLElement;
552
+ hostElement: HTMLElement;
553
+ backdropElement: HTMLElement | null;
554
+ paneElement: HTMLElement;
555
+ };
556
+ type OverlayRuntimeCloseEvent<TResult = unknown> = {
557
+ result: TResult | undefined;
558
+ source: OverlayRuntimeCloseSource;
559
+ };
560
+ type OverlayRuntimeComponentBase = {
561
+ animatedLifecycle?: Signal<AnimatedLifecycleDirective | undefined>;
562
+ };
563
+ type OverlayRuntimeMountConfig<TComponent extends object> = {
564
+ id: string;
565
+ component: Type<TComponent>;
566
+ viewContainerRef?: ViewContainerRef;
567
+ injector?: Injector;
568
+ providers?: StaticProvider[];
569
+ role?: OverlayRuntimeRole;
570
+ positionStrategy?: OverlayRuntimePositionStrategy;
571
+ hasBackdrop?: boolean;
572
+ modal?: boolean;
573
+ autoFocus?: OverlayRuntimeAutoFocusTarget | string | false;
574
+ restoreFocus?: boolean;
575
+ closeOnEscape?: boolean;
576
+ closeOnOutsidePointer?: boolean;
577
+ ariaDescribedBy?: string | null;
578
+ ariaLabelledBy?: string | null;
579
+ ariaLabel?: string | null;
580
+ hostClass?: string[];
581
+ backdropClass?: string[];
582
+ paneClass?: string[];
583
+ inputBindings?: Record<string, unknown>;
584
+ };
585
+
586
+ type OverlayRuntimeState = 'mounting' | 'mounted' | 'closing' | 'closed';
587
+ declare const createOverlayRuntimeRef: <TComponent extends object, TResult = unknown>(id: string, config: Omit<OverlayRuntimeMountConfig<TComponent>, "component">, elements: OverlayRuntimeElements, requestClose: (result: TResult | undefined, source: OverlayRuntimeCloseSource) => void) => {
588
+ id: string;
589
+ config: Omit<OverlayRuntimeMountConfig<TComponent>, "component">;
590
+ elements: OverlayRuntimeElements;
591
+ state: _angular_core.Signal<OverlayRuntimeState>;
592
+ componentInstance: _angular_core.Signal<TComponent | null>;
593
+ beforeOpenedSubject: Subject<void>;
594
+ close(result?: TResult, source?: OverlayRuntimeCloseSource): void;
595
+ beforeOpened(): Observable<void>;
596
+ afterOpened(): Observable<void>;
597
+ beforeClosed(): Observable<OverlayRuntimeCloseEvent<TResult>>;
598
+ afterClosed(): Observable<OverlayRuntimeCloseEvent<TResult>>;
599
+ attachComponentRef(componentRef: ComponentRef<TComponent>): void;
600
+ markOpened(): void;
601
+ beginClose(closeEvent: OverlayRuntimeCloseEvent<TResult>): boolean;
602
+ finishClose(closeEvent: OverlayRuntimeCloseEvent<TResult>): void;
603
+ };
604
+ type OverlayRuntimeRef<TComponent extends object = object, TResult = unknown> = ReturnType<typeof createOverlayRuntimeRef<TComponent, TResult>>;
605
+
606
+ declare const FOCUSABLE_SELECTOR: string;
607
+ declare const isHTMLElement: (value: unknown) => value is HTMLElement;
608
+ declare const isFocusable: (element: HTMLElement, document: Document) => boolean;
609
+ declare const getFocusableElements: (container: HTMLElement, document: Document) => HTMLElement[];
610
+ declare const getHeadingElement: (container: HTMLElement) => HTMLElement | null;
611
+ declare const focusElement: (element: HTMLElement | null) => void;
612
+ declare const applyInitialFocus: (paneElement: HTMLElement, autoFocus: OverlayRuntimeAutoFocusTarget | string | false, document: Document) => void;
613
+ declare const setupFocusTrap: (paneElement: HTMLElement, overlayRef: OverlayRuntimeRef<object, unknown>, enabled: boolean, isTopMost: (ref: OverlayRuntimeRef<object, unknown>) => boolean, document: Document) => () => void;
614
+
615
+ declare const injectAngularRootElement: {
616
+ (): _angular_core.WritableSignal<HTMLElement | null>;
617
+ (options: _angular_core.InjectOptions & {
618
+ optional?: false;
619
+ }): _angular_core.WritableSignal<HTMLElement | null>;
620
+ (options: _angular_core.InjectOptions): _angular_core.WritableSignal<HTMLElement | null> | null;
621
+ };
622
+
623
+ declare const provideBoundaryElement: () => _angular_core.Provider[];
624
+ declare const injectBoundaryElement: {
625
+ (): {
626
+ value: _angular_core.Signal<HTMLElement>;
627
+ override: _angular_core.WritableSignal<HTMLElement | null>;
628
+ };
629
+ (options: _angular_core.InjectOptions & {
630
+ optional?: false;
631
+ }): {
632
+ value: _angular_core.Signal<HTMLElement>;
633
+ override: _angular_core.WritableSignal<HTMLElement | null>;
634
+ };
635
+ (options: _angular_core.InjectOptions): {
636
+ value: _angular_core.Signal<HTMLElement>;
637
+ override: _angular_core.WritableSignal<HTMLElement | null>;
638
+ } | null;
639
+ };
640
+ declare const BOUNDARY_ELEMENT_TOKEN: _angular_core.InjectionToken<{
641
+ value: _angular_core.Signal<HTMLElement>;
642
+ override: _angular_core.WritableSignal<HTMLElement | null>;
643
+ }>;
644
+
645
+ type Vec2 = [number, number];
646
+ type ViewportConfig = {
647
+ breakpoints: {
648
+ xs: Vec2;
649
+ sm: Vec2;
650
+ md: Vec2;
651
+ lg: Vec2;
652
+ xl: Vec2;
653
+ '2xl': Vec2;
654
+ };
655
+ };
656
+ type Breakpoint = keyof ViewportConfig['breakpoints'];
657
+ declare const BREAKPOINT_ORDER: Breakpoint[];
658
+ /**
659
+ * Default viewport config based on Tailwind CSS.
660
+ * @see https://tailwindcss.com/docs/screens
661
+ */
662
+ declare const DEFAULT_VIEWPORT_CONFIG: ViewportConfig;
663
+ declare const provideViewportConfig: (valueOverride?: Partial<ViewportConfig> | undefined) => _angular_core.Provider[];
664
+ declare const injectViewportConfig: {
665
+ (): ViewportConfig;
666
+ (options: _angular_core.InjectOptions & {
667
+ optional?: false;
668
+ }): ViewportConfig;
669
+ (options: _angular_core.InjectOptions): ViewportConfig | null;
670
+ };
671
+ type BuildMediaQueryOptions = {
672
+ min?: number | Breakpoint;
673
+ max?: number | Breakpoint;
674
+ };
675
+ declare const provideBreakpointObserver: () => _angular_core.Provider[];
676
+ declare const injectBreakpointObserver: {
677
+ (): {
678
+ observeBreakpoint: (options: BuildMediaQueryOptions) => _angular_core.Signal<boolean>;
679
+ isBreakpointMatched: (options: BuildMediaQueryOptions) => boolean;
680
+ getBreakpointSize: (type: Breakpoint, option: "min" | "max") => number;
681
+ buildMediaQueryString: (options: BuildMediaQueryOptions) => string;
682
+ observeMediaQuery: (mediaQuery: string) => _angular_core.Signal<boolean>;
683
+ isMediaQueryMatched: (mediaQuery: string) => boolean;
684
+ };
685
+ (options: _angular_core.InjectOptions & {
686
+ optional?: false;
687
+ }): {
688
+ observeBreakpoint: (options: BuildMediaQueryOptions) => _angular_core.Signal<boolean>;
689
+ isBreakpointMatched: (options: BuildMediaQueryOptions) => boolean;
690
+ getBreakpointSize: (type: Breakpoint, option: "min" | "max") => number;
691
+ buildMediaQueryString: (options: BuildMediaQueryOptions) => string;
692
+ observeMediaQuery: (mediaQuery: string) => _angular_core.Signal<boolean>;
693
+ isMediaQueryMatched: (mediaQuery: string) => boolean;
694
+ };
695
+ (options: _angular_core.InjectOptions): {
696
+ observeBreakpoint: (options: BuildMediaQueryOptions) => _angular_core.Signal<boolean>;
697
+ isBreakpointMatched: (options: BuildMediaQueryOptions) => boolean;
698
+ getBreakpointSize: (type: Breakpoint, option: "min" | "max") => number;
699
+ buildMediaQueryString: (options: BuildMediaQueryOptions) => string;
700
+ observeMediaQuery: (mediaQuery: string) => _angular_core.Signal<boolean>;
701
+ isMediaQueryMatched: (mediaQuery: string) => boolean;
702
+ } | null;
703
+ };
704
+
705
+ declare const provideFocusVisibleTracker: () => _angular_core.Provider[];
706
+ declare const injectFocusVisibleTracker: {
707
+ (): {
708
+ isFocusVisible: _angular_core.Signal<boolean>;
709
+ };
710
+ (options: _angular_core.InjectOptions & {
711
+ optional?: false;
712
+ }): {
713
+ isFocusVisible: _angular_core.Signal<boolean>;
714
+ };
715
+ (options: _angular_core.InjectOptions): {
716
+ isFocusVisible: _angular_core.Signal<boolean>;
717
+ } | null;
718
+ };
719
+ declare const FOCUS_VISIBLE_TRACKER_TOKEN: _angular_core.InjectionToken<{
720
+ isFocusVisible: _angular_core.Signal<boolean>;
721
+ }>;
722
+
723
+ declare const provideLocale: () => _angular_core.Provider[];
724
+ declare const injectLocale: {
725
+ (): {
726
+ currentLocale: _angular_core.WritableSignal<string>;
727
+ };
728
+ (options: _angular_core.InjectOptions & {
729
+ optional?: false;
730
+ }): {
731
+ currentLocale: _angular_core.WritableSignal<string>;
732
+ };
733
+ (options: _angular_core.InjectOptions): {
734
+ currentLocale: _angular_core.WritableSignal<string>;
735
+ } | null;
736
+ };
737
+
738
+ declare const provideRenderer: () => _angular_core.Provider[];
739
+ declare const injectRenderer: {
740
+ (): {
741
+ addClass: (element: HTMLElement, ...classes: string[]) => void;
742
+ removeClass: (element: HTMLElement, ...classes: string[]) => void;
743
+ toggleClass: (element: HTMLElement, className: string, force?: boolean) => boolean;
744
+ setStyle: (element: HTMLElement, style: Partial<Record<keyof CSSStyleDeclaration, string | null>>, flags?: RendererStyleFlags2) => void;
745
+ removeStyle: (element: HTMLElement, style: keyof CSSStyleDeclaration | string, flags?: RendererStyleFlags2) => void;
746
+ removeStyles: (element: HTMLElement, ...styles: (keyof CSSStyleDeclaration | string)[]) => void;
747
+ setAttribute: (element: HTMLElement, name: string, value: string | null, namespace?: string | null) => void;
748
+ removeAttribute: (element: HTMLElement, ...names: string[]) => void;
749
+ setProperty: (element: HTMLElement, name: string, value: unknown) => void;
750
+ setProperties: (element: HTMLElement, properties: Record<string, unknown>) => void;
751
+ createElement: <K extends keyof HTMLElementTagNameMap>(tagName: K, namespace?: string | null) => HTMLElementTagNameMap[K];
752
+ createText: (value: string) => Text;
753
+ createComment: (value: string) => Comment;
754
+ appendChild: (parent: HTMLElement, newChild: Node) => void;
755
+ insertBefore: (parent: Node, newChild: Node, refChild: Node | null) => void;
756
+ removeChild: (parent: Node, oldChild: Node, isHostElement?: boolean) => void;
757
+ selectRootElement: (selectorOrNode: string | HTMLElement, preserveContent?: boolean) => HTMLElement;
758
+ parentNode: (node: Node) => Node | null;
759
+ nextSibling: (node: Node) => Node | null;
760
+ setValue: (node: Node, value: string) => void;
761
+ listen: (target: HTMLElement | Window | Document | "window" | "document" | "body", eventName: string, callback: (event: Event) => boolean | void) => (() => void);
762
+ destroyNode: (node: Node) => void;
763
+ replaceChild: (parent: Node, newChild: Node, oldChild: Node) => void;
764
+ empty: (element: HTMLElement) => void;
765
+ setTextContent: (element: HTMLElement, text: string) => void;
766
+ setInnerHTML: (element: HTMLElement, html: string) => void;
767
+ setAttributes: (element: HTMLElement, attributes: Record<string, string | null>, namespace?: string | null) => void;
768
+ setDataAttributes: (element: HTMLElement, data: Record<string, string | null>) => void;
769
+ setCssProperty: (element: HTMLElement, name: string, value: string | null) => void;
770
+ setCssProperties: (element: HTMLElement, properties: Record<string, string | null>) => void;
771
+ moveBefore: (config: {
772
+ newParent: HTMLElement;
773
+ child: HTMLElement;
774
+ before?: Node | null;
775
+ }) => void;
776
+ renderer: _angular_core.Renderer2;
777
+ };
778
+ (options: _angular_core.InjectOptions & {
779
+ optional?: false;
780
+ }): {
781
+ addClass: (element: HTMLElement, ...classes: string[]) => void;
782
+ removeClass: (element: HTMLElement, ...classes: string[]) => void;
783
+ toggleClass: (element: HTMLElement, className: string, force?: boolean) => boolean;
784
+ setStyle: (element: HTMLElement, style: Partial<Record<keyof CSSStyleDeclaration, string | null>>, flags?: RendererStyleFlags2) => void;
785
+ removeStyle: (element: HTMLElement, style: keyof CSSStyleDeclaration | string, flags?: RendererStyleFlags2) => void;
786
+ removeStyles: (element: HTMLElement, ...styles: (keyof CSSStyleDeclaration | string)[]) => void;
787
+ setAttribute: (element: HTMLElement, name: string, value: string | null, namespace?: string | null) => void;
788
+ removeAttribute: (element: HTMLElement, ...names: string[]) => void;
789
+ setProperty: (element: HTMLElement, name: string, value: unknown) => void;
790
+ setProperties: (element: HTMLElement, properties: Record<string, unknown>) => void;
791
+ createElement: <K extends keyof HTMLElementTagNameMap>(tagName: K, namespace?: string | null) => HTMLElementTagNameMap[K];
792
+ createText: (value: string) => Text;
793
+ createComment: (value: string) => Comment;
794
+ appendChild: (parent: HTMLElement, newChild: Node) => void;
795
+ insertBefore: (parent: Node, newChild: Node, refChild: Node | null) => void;
796
+ removeChild: (parent: Node, oldChild: Node, isHostElement?: boolean) => void;
797
+ selectRootElement: (selectorOrNode: string | HTMLElement, preserveContent?: boolean) => HTMLElement;
798
+ parentNode: (node: Node) => Node | null;
799
+ nextSibling: (node: Node) => Node | null;
800
+ setValue: (node: Node, value: string) => void;
801
+ listen: (target: HTMLElement | Window | Document | "window" | "document" | "body", eventName: string, callback: (event: Event) => boolean | void) => (() => void);
802
+ destroyNode: (node: Node) => void;
803
+ replaceChild: (parent: Node, newChild: Node, oldChild: Node) => void;
804
+ empty: (element: HTMLElement) => void;
805
+ setTextContent: (element: HTMLElement, text: string) => void;
806
+ setInnerHTML: (element: HTMLElement, html: string) => void;
807
+ setAttributes: (element: HTMLElement, attributes: Record<string, string | null>, namespace?: string | null) => void;
808
+ setDataAttributes: (element: HTMLElement, data: Record<string, string | null>) => void;
809
+ setCssProperty: (element: HTMLElement, name: string, value: string | null) => void;
810
+ setCssProperties: (element: HTMLElement, properties: Record<string, string | null>) => void;
811
+ moveBefore: (config: {
812
+ newParent: HTMLElement;
813
+ child: HTMLElement;
814
+ before?: Node | null;
815
+ }) => void;
816
+ renderer: _angular_core.Renderer2;
817
+ };
818
+ (options: _angular_core.InjectOptions): {
819
+ addClass: (element: HTMLElement, ...classes: string[]) => void;
820
+ removeClass: (element: HTMLElement, ...classes: string[]) => void;
821
+ toggleClass: (element: HTMLElement, className: string, force?: boolean) => boolean;
822
+ setStyle: (element: HTMLElement, style: Partial<Record<keyof CSSStyleDeclaration, string | null>>, flags?: RendererStyleFlags2) => void;
823
+ removeStyle: (element: HTMLElement, style: keyof CSSStyleDeclaration | string, flags?: RendererStyleFlags2) => void;
824
+ removeStyles: (element: HTMLElement, ...styles: (keyof CSSStyleDeclaration | string)[]) => void;
825
+ setAttribute: (element: HTMLElement, name: string, value: string | null, namespace?: string | null) => void;
826
+ removeAttribute: (element: HTMLElement, ...names: string[]) => void;
827
+ setProperty: (element: HTMLElement, name: string, value: unknown) => void;
828
+ setProperties: (element: HTMLElement, properties: Record<string, unknown>) => void;
829
+ createElement: <K extends keyof HTMLElementTagNameMap>(tagName: K, namespace?: string | null) => HTMLElementTagNameMap[K];
830
+ createText: (value: string) => Text;
831
+ createComment: (value: string) => Comment;
832
+ appendChild: (parent: HTMLElement, newChild: Node) => void;
833
+ insertBefore: (parent: Node, newChild: Node, refChild: Node | null) => void;
834
+ removeChild: (parent: Node, oldChild: Node, isHostElement?: boolean) => void;
835
+ selectRootElement: (selectorOrNode: string | HTMLElement, preserveContent?: boolean) => HTMLElement;
836
+ parentNode: (node: Node) => Node | null;
837
+ nextSibling: (node: Node) => Node | null;
838
+ setValue: (node: Node, value: string) => void;
839
+ listen: (target: HTMLElement | Window | Document | "window" | "document" | "body", eventName: string, callback: (event: Event) => boolean | void) => (() => void);
840
+ destroyNode: (node: Node) => void;
841
+ replaceChild: (parent: Node, newChild: Node, oldChild: Node) => void;
842
+ empty: (element: HTMLElement) => void;
843
+ setTextContent: (element: HTMLElement, text: string) => void;
844
+ setInnerHTML: (element: HTMLElement, html: string) => void;
845
+ setAttributes: (element: HTMLElement, attributes: Record<string, string | null>, namespace?: string | null) => void;
846
+ setDataAttributes: (element: HTMLElement, data: Record<string, string | null>) => void;
847
+ setCssProperty: (element: HTMLElement, name: string, value: string | null) => void;
848
+ setCssProperties: (element: HTMLElement, properties: Record<string, string | null>) => void;
849
+ moveBefore: (config: {
850
+ newParent: HTMLElement;
851
+ child: HTMLElement;
852
+ before?: Node | null;
853
+ }) => void;
854
+ renderer: _angular_core.Renderer2;
855
+ } | null;
856
+ };
857
+ type AngularRenderer = NonNullable<ReturnType<typeof injectRenderer>>;
858
+
859
+ type StyleManager = {
860
+ mount: <TComponent>(component: Type<TComponent>) => ComponentRef<TComponent>;
288
861
  };
289
- type FlipAnimationConfig = {
290
- /**
291
- * The element to animate
292
- */
293
- element: HTMLElement;
862
+ declare const provideStyleManager: () => _angular_core.Provider[];
863
+ declare const injectStyleManager: {
864
+ (): StyleManager;
865
+ (options: _angular_core.InjectOptions & {
866
+ optional?: false;
867
+ }): StyleManager;
868
+ (options: _angular_core.InjectOptions): StyleManager | null;
869
+ };
870
+
871
+ interface ConsentHandler {
872
+ /** Signal that is `true` when consent has been granted. */
873
+ isGranted: Signal<boolean>;
874
+ /** Grants consent and writes the decision back to the source. */
875
+ grant: () => void;
876
+ /** Revokes consent and writes the decision back to the source. */
877
+ revoke?: () => void;
878
+ }
879
+ type CreateUserConsentProviderOptions = {
880
+ /** The provider result returned by `createStaticProvider` that this consent provider should be associated with. */
881
+ for: InjectionToken<ConsentHandler | null>;
294
882
  /**
295
- * The element to use as the origin for the animation
296
- * @default element
883
+ * Factory executed inside the injection context that returns a `Signal<boolean>`.
884
+ *
885
+ * @example
886
+ * isGranted: () => inject(CookieService).hasMediaConsent
297
887
  */
298
- originElement?: HTMLElement;
888
+ isGranted: () => Signal<boolean>;
299
889
  /**
300
- * The duration of the animation in milliseconds
301
- * @default 250
890
+ * Factory executed inside the injection context that returns the grant function.
891
+ *
892
+ * @example
893
+ * grant: () => () => inject(CookieService).acceptAll()
302
894
  */
303
- duration?: number;
895
+ grant: () => () => void;
304
896
  /**
305
- * The easing function to use for the animation
306
- * @default 'cubic-bezier(0.4, 0, 0.2, 1)'
897
+ * Factory executed inside the injection context that returns the revoke function.
898
+ *
899
+ * @example
900
+ * revoke : () => () => inject(CookieService).revokeAll()
307
901
  */
308
- easing?: string;
309
- };
310
- declare const createFlipAnimation: (config: FlipAnimationConfig) => {
311
- updateInit: () => void;
312
- play: () => void;
313
- cancel: () => void;
314
- onStart$: rxjs.Observable<void>;
315
- onFinish$: rxjs.Observable<void>;
316
- onCancel$: rxjs.Observable<void>;
902
+ revoke?: () => () => void;
317
903
  };
904
+ declare const createUserConsentProvider: (options: CreateUserConsentProviderOptions) => Provider;
318
905
 
319
- declare class ClickOutsideDirective {
320
- private elementRef;
321
- private document;
322
- didClickOutside: _angular_core.OutputEmitterRef<MouseEvent>;
323
- constructor();
324
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ClickOutsideDirective, never>;
325
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ClickOutsideDirective, "[etClickOutside]", never, {}, { "didClickOutside": "etClickOutside"; }, never, never, true, never>;
326
- }
906
+ declare const setBaseElementStyles: (config: OverlayRuntimeMountConfig<object>, hostElement: HTMLElement, paneElement: HTMLElement, renderer: AngularRenderer) => void;
907
+ declare const setBackdropStyles: (backdropElement: HTMLElement, renderer: AngularRenderer) => void;
908
+ declare const applyCenteredPosition: (hostElement: HTMLElement, paneElement: HTMLElement, renderer: AngularRenderer, _config: OverlayRuntimeCenteredPosition) => void;
909
+ declare const createAnchoredPositionCleanup: (strategy: OverlayRuntimeAnchoredPosition, paneElement: HTMLElement, overlayRef: OverlayRuntimeRef<object, unknown>, renderer: AngularRenderer) => () => void;
910
+ declare const setupPositioning: (config: OverlayRuntimeMountConfig<object>, hostElement: HTMLElement, paneElement: HTMLElement, overlayRef: OverlayRuntimeRef<object, unknown>, renderer: AngularRenderer) => () => void;
327
911
 
328
- declare class RepeatDirective {
329
- private mainTemplateRef;
330
- private viewContainerRef;
331
- repeatCount: _angular_core.InputSignalWithTransform<number, unknown>;
332
- views: _angular_core.WritableSignal<EmbeddedViewRef<unknown>[]>;
333
- constructor();
334
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<RepeatDirective, never>;
335
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RepeatDirective, "[etRepeat]", never, { "repeatCount": { "alias": "etRepeat"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
336
- }
912
+ type OverlayRuntime = {
913
+ mount: <TComponent extends object, TResult = unknown>(config: OverlayRuntimeMountConfig<TComponent>) => OverlayRuntimeRef<TComponent, TResult>;
914
+ openEntries: ReturnType<typeof computed<OverlayRuntimeRef<object, unknown>[]>>;
915
+ };
916
+ declare const provideOverlayRuntime: () => _angular_core.Provider[];
917
+ declare const injectOverlayRuntime: {
918
+ (): OverlayRuntime;
919
+ (options: _angular_core.InjectOptions & {
920
+ optional?: false;
921
+ }): OverlayRuntime;
922
+ (options: _angular_core.InjectOptions): OverlayRuntime | null;
923
+ };
337
924
 
338
925
  declare const createComponentId: (prefix: string) => string;
339
926
 
@@ -486,119 +1073,26 @@ declare const getObjectProperty: (obj: Record<string, unknown>, prop: string) =>
486
1073
  declare const RUNTIME_ERROR_NO_DATA = "__ET_NO_DATA__";
487
1074
  declare class RuntimeError<T extends number> extends Error {
488
1075
  code: T;
489
- devOnly: boolean;
490
1076
  data: unknown;
491
- constructor(code: T, message: null | false | string, devOnly?: boolean, data?: unknown);
1077
+ constructor(code: T, message: null | false | string, data?: unknown);
492
1078
  }
493
- declare function formatRuntimeError<T extends number>(code: T, message: null | false | string, devOnly: boolean): string;
1079
+ declare function formatRuntimeError<T extends number>(code: T, message: null | false | string): string;
494
1080
 
495
- /**
496
- * Checks if an element or the viewport can scroll in a given direction.
497
- * @param element The element to check. If null/undefined, checks if the viewport can scroll.
498
- * @param direction The direction to check. If not provided, checks both directions.
499
- * @returns true if the element or viewport can scroll in the given direction.
500
- */
501
- declare const elementCanScroll: (element?: HTMLElement | null, direction?: "x" | "y") => boolean;
502
- type IsElementVisibleOptions = {
503
- /**
504
- * The element to check if it is visible inside a container.
505
- */
506
- element?: HTMLElement | null;
507
- /**
508
- * The container to check if the element is visible inside.
509
- * If null or undefined, uses the viewport as the container.
510
- * @default null (viewport)
511
- */
512
- container?: HTMLElement | null;
513
- /**
514
- * The container's rect to check if the element is visible inside. Can be supplied to reduce the amount of DOM reads.
515
- * Only used when container is provided and not null.
516
- * @default container.getBoundingClientRect()
517
- */
518
- containerRect?: DOMRect | null;
519
- /**
520
- * The element's rect. Can be supplied to reduce the amount of DOM reads.
521
- * @default element.getBoundingClientRect()
522
- */
523
- elementRect?: DOMRect | null;
1081
+ type CreateSessionMemoryConfig<TValue> = {
1082
+ key: string;
1083
+ parse: (storedValue: string) => TValue | null;
1084
+ serialize: (value: TValue) => string;
524
1085
  };
525
- type CurrentElementVisibility = {
526
- /**
527
- * Whether the element is visible in the inline direction.
528
- */
529
- inline: boolean;
530
- /**
531
- * Whether the element is visible in the block direction.
532
- */
533
- block: boolean;
534
- /**
535
- * The percentage of the element that is visible in the inline direction.
536
- */
537
- inlineIntersection: number;
538
- /**
539
- * The percentage of the element that is visible in the block direction.
540
- */
541
- blockIntersection: number;
542
- /**
543
- * Whether the element is intersecting the container.
544
- */
545
- isIntersecting: boolean;
546
- /**
547
- * The ratio of the element that is intersecting the container.
548
- */
549
- intersectionRatio: number;
550
- /**
551
- * The element that is being checked for visibility.
552
- */
1086
+ declare const createAutoSessionMemoryKey: ({ element, prefix }: {
553
1087
  element: HTMLElement;
554
- /**
555
- * The container's rect used for the calculation.
556
- */
557
- containerRect: DOMRect;
558
- /**
559
- * The element's rect used for the calculation.
560
- */
561
- elementRect: DOMRect;
562
- };
563
- declare const isElementVisible: (options: IsElementVisibleOptions) => CurrentElementVisibility | null;
564
- declare const getElementScrollCoordinates: (options: ScrollToElementOptions) => ScrollToOptions;
565
- type ScrollToElementOptions = {
566
- /**
567
- * The element to scroll to.
568
- */
569
- element?: HTMLElement | null;
570
- /**
571
- * The scroll container to scroll to the element in.
572
- * Must be provided - cannot scroll the viewport programmatically with this function.
573
- */
574
- container?: HTMLElement | null;
575
- /**
576
- * The direction to scroll in.
577
- * @default 'both'
578
- */
579
- direction?: 'inline' | 'block' | 'both';
580
- /**
581
- * The origin of the element to scroll to.
582
- * @default 'nearest'
583
- */
584
- origin?: 'start' | 'end' | 'center' | 'nearest';
585
- /**
586
- * The scroll behavior.
587
- * @default 'smooth'
588
- */
589
- behavior?: ScrollBehavior;
590
- /**
591
- * The scroll inline-margin
592
- * @default 0
593
- */
594
- scrollInlineMargin?: number;
595
- /**
596
- * The scroll block-margin
597
- * @default 0
598
- */
599
- scrollBlockMargin?: number;
1088
+ prefix: string;
1089
+ }) => string;
1090
+ declare const canUseSessionMemory: () => boolean;
1091
+ declare const createSessionMemory: <TValue>({ key, parse, serialize }: CreateSessionMemoryConfig<TValue>) => {
1092
+ read: () => TValue | null;
1093
+ write: (value: TValue) => boolean;
1094
+ remove: () => boolean;
600
1095
  };
601
- declare const scrollToElement: (options: ScrollToElementOptions) => void;
602
1096
 
603
1097
  declare class NormalizeGameResultTypePipe implements PipeTransform {
604
1098
  transform: (type: string | null) => NormalizedGameResultType | null;
@@ -701,7 +1195,7 @@ declare class NormalizeMatchTypePipe implements PipeTransform {
701
1195
  declare const normalizeMatchType: (matchType: StageType | null | undefined) => Translatable | null;
702
1196
 
703
1197
  declare class InferMimeTypePipe implements PipeTransform {
704
- transform: (srcset: string) => "image/avif" | "image/bmp" | "image/gif" | "image/vdn.microsoft.icon" | "image/jpeg" | "image/png" | "image/svg+xml" | "image/tiff" | "image/webp" | "audio/aac" | "application/x-abiword" | "application/x-freearc" | "video/x-msvideo" | "application/vnd.amazon.ebook" | "application/octet-stream" | "application/x-bzip" | "application/x-bzip2" | "application/x-cdf" | "application/x-csh" | "text/css" | "text/csv" | "application/msword" | "application/vnd.openxmlformats-officedocument.wordprocessingml.document" | "application/vnd.ms-fontobject" | "application/epub+zip" | "application/gzip" | "text/html" | "text/calendar" | "application/java-archive" | "text/javascript" | "application/json" | "application/ld+json" | "audio/midi" | "audio/mpeg" | "video/mp4" | "video/mpeg" | "tapplication/vnd.apple.installer+xml" | "application/vnd.oasis.opendocument.presentation" | "application/vnd.oasis.opendocument.spreadsheet" | "application/vnd.oasis.opendocument.text" | "audio/ogg" | "video/ogg" | "application/ogg" | "audio/opus" | "font/otf" | "application/pdf" | "application/x-httpd-php" | "application/vnd.ms-powerpoint" | "application/vnd.openxmlformats-officedocument.presentationml.presentation" | "application/vnd.rar" | "application/rtf" | "application/x-sh" | "application/x-tar" | "video/mp2t" | "font/ttf" | "text/plain" | "application/vnd.visio" | "audio/wav" | "audio/webm" | "video/webm" | "font/woff" | "font/woff2" | "application/xhtml+xml" | "application/vnd.ms-excel" | "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" | "application/xml" | "application/vnd.mozilla.xul+xml" | "application/zip" | "video/3gpp" | "video/3gpp2" | "application/x-7z-compressed" | null;
1198
+ transform: (srcset: string) => string | null;
705
1199
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<InferMimeTypePipe, never>;
706
1200
  static ɵpipe: _angular_core.ɵɵPipeDeclaration<InferMimeTypePipe, "inferMimeType", true>;
707
1201
  }
@@ -710,7 +1204,7 @@ declare class InferMimeTypePipe implements PipeTransform {
710
1204
  * If a srcset is provided, it will infer the mime type of the first url in the srcset.
711
1205
  * If the srcset contains a query parameter `?fm=`, it will use the value of that parameter, since it is often used to specify the file format in image api's like contentful.
712
1206
  */
713
- declare const inferMimeType: (srcset: string) => "image/avif" | "image/bmp" | "image/gif" | "image/vdn.microsoft.icon" | "image/jpeg" | "image/png" | "image/svg+xml" | "image/tiff" | "image/webp" | "audio/aac" | "application/x-abiword" | "application/x-freearc" | "video/x-msvideo" | "application/vnd.amazon.ebook" | "application/octet-stream" | "application/x-bzip" | "application/x-bzip2" | "application/x-cdf" | "application/x-csh" | "text/css" | "text/csv" | "application/msword" | "application/vnd.openxmlformats-officedocument.wordprocessingml.document" | "application/vnd.ms-fontobject" | "application/epub+zip" | "application/gzip" | "text/html" | "text/calendar" | "application/java-archive" | "text/javascript" | "application/json" | "application/ld+json" | "audio/midi" | "audio/mpeg" | "video/mp4" | "video/mpeg" | "tapplication/vnd.apple.installer+xml" | "application/vnd.oasis.opendocument.presentation" | "application/vnd.oasis.opendocument.spreadsheet" | "application/vnd.oasis.opendocument.text" | "audio/ogg" | "video/ogg" | "application/ogg" | "audio/opus" | "font/otf" | "application/pdf" | "application/x-httpd-php" | "application/vnd.ms-powerpoint" | "application/vnd.openxmlformats-officedocument.presentationml.presentation" | "application/vnd.rar" | "application/rtf" | "application/x-sh" | "application/x-tar" | "video/mp2t" | "font/ttf" | "text/plain" | "application/vnd.visio" | "audio/wav" | "audio/webm" | "video/webm" | "font/woff" | "font/woff2" | "application/xhtml+xml" | "application/vnd.ms-excel" | "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" | "application/xml" | "application/vnd.mozilla.xul+xml" | "application/zip" | "video/3gpp" | "video/3gpp2" | "application/x-7z-compressed" | null;
1207
+ declare const inferMimeType: (srcset: string) => string | null;
714
1208
 
715
1209
  declare class ToArrayPipe implements PipeTransform {
716
1210
  transform: (value: number) => number[];
@@ -898,239 +1392,155 @@ type NgTemplateTemplate = {
898
1392
  };
899
1393
  type ComponentTemplate = {
900
1394
  type: 'component';
901
- value: ComponentType<unknown>;
902
- inputs?: Record<string, unknown>;
903
- injector: Injector | null;
904
- };
905
- declare const templateComputed: (templateSignal: Signal<AnyTemplateType | null>) => Signal<StringTemplate | NgTemplateTemplate | ComponentTemplate | null>;
906
-
907
- declare const injectAngularRootElement: {
908
- (): _angular_core.WritableSignal<HTMLElement | null>;
909
- (options: _angular_core.InjectOptions & {
910
- optional?: false;
911
- }): _angular_core.WritableSignal<HTMLElement | null>;
912
- (options: _angular_core.InjectOptions): _angular_core.WritableSignal<HTMLElement | null> | null;
913
- };
914
-
915
- declare const provideBoundaryElement: () => _angular_core.Provider[];
916
- declare const injectBoundaryElement: {
917
- (): {
918
- value: _angular_core.Signal<HTMLElement>;
919
- override: _angular_core.WritableSignal<HTMLElement | null>;
920
- };
921
- (options: _angular_core.InjectOptions & {
922
- optional?: false;
923
- }): {
924
- value: _angular_core.Signal<HTMLElement>;
925
- override: _angular_core.WritableSignal<HTMLElement | null>;
926
- };
927
- (options: _angular_core.InjectOptions): {
928
- value: _angular_core.Signal<HTMLElement>;
929
- override: _angular_core.WritableSignal<HTMLElement | null>;
930
- } | null;
931
- };
932
- declare const BOUNDARY_ELEMENT_TOKEN: _angular_core.InjectionToken<{
933
- value: _angular_core.Signal<HTMLElement>;
934
- override: _angular_core.WritableSignal<HTMLElement | null>;
935
- }>;
936
-
937
- type Vec2 = [number, number];
938
- type ViewportConfig = {
939
- breakpoints: {
940
- xs: Vec2;
941
- sm: Vec2;
942
- md: Vec2;
943
- lg: Vec2;
944
- xl: Vec2;
945
- '2xl': Vec2;
946
- };
947
- };
948
- type Breakpoint = keyof ViewportConfig['breakpoints'];
949
- /**
950
- * Default viewport config based on Tailwind CSS.
951
- * @see https://tailwindcss.com/docs/screens
952
- */
953
- declare const DEFAULT_VIEWPORT_CONFIG: ViewportConfig;
954
- declare const provideViewportConfig: (valueOverride?: Partial<ViewportConfig> | undefined) => _angular_core.Provider[];
955
- declare const injectViewportConfig: {
956
- (): ViewportConfig;
957
- (options: _angular_core.InjectOptions & {
958
- optional?: false;
959
- }): ViewportConfig;
960
- (options: _angular_core.InjectOptions): ViewportConfig | null;
961
- };
962
- type BuildMediaQueryOptions = {
963
- min?: number | Breakpoint;
964
- max?: number | Breakpoint;
965
- };
966
- declare const provideBreakpointObserver: () => _angular_core.Provider[];
967
- declare const injectBreakpointObserver: {
968
- (): {
969
- observeBreakpoint: (options: BuildMediaQueryOptions) => _angular_core.Signal<boolean>;
970
- isBreakpointMatched: (options: BuildMediaQueryOptions) => boolean;
971
- getBreakpointSize: (type: Breakpoint, option: "min" | "max") => number;
972
- buildMediaQueryString: (options: BuildMediaQueryOptions) => string;
973
- observeMediaQuery: (mediaQuery: string) => _angular_core.Signal<boolean>;
974
- isMediaQueryMatched: (mediaQuery: string) => boolean;
975
- };
976
- (options: _angular_core.InjectOptions & {
977
- optional?: false;
978
- }): {
979
- observeBreakpoint: (options: BuildMediaQueryOptions) => _angular_core.Signal<boolean>;
980
- isBreakpointMatched: (options: BuildMediaQueryOptions) => boolean;
981
- getBreakpointSize: (type: Breakpoint, option: "min" | "max") => number;
982
- buildMediaQueryString: (options: BuildMediaQueryOptions) => string;
983
- observeMediaQuery: (mediaQuery: string) => _angular_core.Signal<boolean>;
984
- isMediaQueryMatched: (mediaQuery: string) => boolean;
985
- };
986
- (options: _angular_core.InjectOptions): {
987
- observeBreakpoint: (options: BuildMediaQueryOptions) => _angular_core.Signal<boolean>;
988
- isBreakpointMatched: (options: BuildMediaQueryOptions) => boolean;
989
- getBreakpointSize: (type: Breakpoint, option: "min" | "max") => number;
990
- buildMediaQueryString: (options: BuildMediaQueryOptions) => string;
991
- observeMediaQuery: (mediaQuery: string) => _angular_core.Signal<boolean>;
992
- isMediaQueryMatched: (mediaQuery: string) => boolean;
993
- } | null;
1395
+ value: ComponentType<unknown>;
1396
+ inputs?: Record<string, unknown>;
1397
+ injector: Injector | null;
994
1398
  };
1399
+ declare const templateComputed: (templateSignal: Signal<AnyTemplateType | null>) => Signal<StringTemplate | NgTemplateTemplate | ComponentTemplate | null>;
995
1400
 
996
- declare const provideFocusVisibleTracker: () => _angular_core.Provider[];
997
- declare const injectFocusVisibleTracker: {
998
- (): {
999
- isFocusVisible: _angular_core.Signal<boolean>;
1000
- };
1001
- (options: _angular_core.InjectOptions & {
1002
- optional?: false;
1003
- }): {
1004
- isFocusVisible: _angular_core.Signal<boolean>;
1005
- };
1006
- (options: _angular_core.InjectOptions): {
1007
- isFocusVisible: _angular_core.Signal<boolean>;
1008
- } | null;
1009
- };
1010
- declare const FOCUS_VISIBLE_TRACKER_TOKEN: _angular_core.InjectionToken<{
1011
- isFocusVisible: _angular_core.Signal<boolean>;
1012
- }>;
1401
+ type ResizeEdge = 'n' | 's' | 'e' | 'w' | 'ne' | 'nw' | 'se' | 'sw';
1402
+ type ResizeMoveEvent = {
1403
+ edge: ResizeEdge;
1404
+ dx: number;
1405
+ dy: number;
1406
+ };
1407
+ declare class ResizeHandlesComponent {
1408
+ edges: _angular_core.InputSignal<ResizeEdge[]>;
1409
+ disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
1410
+ private gestureStart$;
1411
+ private gesture$;
1412
+ resizeStarted: _angular_core.OutputRef<ResizeEdge>;
1413
+ resizeMoved: _angular_core.OutputRef<ResizeMoveEvent>;
1414
+ resizeEnded: _angular_core.OutputRef<void>;
1415
+ isResizing: _angular_core.Signal<boolean>;
1416
+ activeEdge: _angular_core.Signal<ResizeEdge | null>;
1417
+ readonly edgeCursors: Record<ResizeEdge, string>;
1418
+ startResizeGesture(event: PointerEvent, edge: ResizeEdge): void;
1419
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ResizeHandlesComponent, never>;
1420
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ResizeHandlesComponent, "et-resize-handles", never, { "edges": { "alias": "edges"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "resizeStarted": "resizeStarted"; "resizeMoved": "resizeMoved"; "resizeEnded": "resizeEnded"; }, never, never, true, never>;
1421
+ }
1013
1422
 
1014
- declare const provideLocale: () => _angular_core.Provider[];
1015
- declare const injectLocale: {
1016
- (): {
1017
- currentLocale: _angular_core.WritableSignal<string>;
1018
- };
1019
- (options: _angular_core.InjectOptions & {
1020
- optional?: false;
1021
- }): {
1022
- currentLocale: _angular_core.WritableSignal<string>;
1023
- };
1024
- (options: _angular_core.InjectOptions): {
1025
- currentLocale: _angular_core.WritableSignal<string>;
1026
- } | null;
1423
+ declare const elementCanScroll: (element?: HTMLElement | null, direction?: "x" | "y") => boolean;
1424
+ type IsElementVisibleOptions = {
1425
+ /**
1426
+ * The element to check if it is visible inside a container.
1427
+ */
1428
+ element?: HTMLElement | null;
1429
+ /**
1430
+ * The container to check if the element is visible inside.
1431
+ * If null or undefined, uses the viewport as the container.
1432
+ * @default null (viewport)
1433
+ */
1434
+ container?: HTMLElement | null;
1435
+ /**
1436
+ * The container's rect to check if the element is visible inside. Can be supplied to reduce the amount of DOM reads.
1437
+ * Only used when container is provided and not null.
1438
+ * @default container.getBoundingClientRect()
1439
+ */
1440
+ containerRect?: DOMRect | null;
1441
+ /**
1442
+ * The element's rect. Can be supplied to reduce the amount of DOM reads.
1443
+ * @default element.getBoundingClientRect()
1444
+ */
1445
+ elementRect?: DOMRect | null;
1027
1446
  };
1028
-
1029
- declare const provideRenderer: () => _angular_core.Provider[];
1030
- declare const injectRenderer: {
1031
- (): {
1032
- addClass: (element: HTMLElement, ...classes: string[]) => void;
1033
- removeClass: (element: HTMLElement, ...classes: string[]) => void;
1034
- toggleClass: (element: HTMLElement, className: string, force?: boolean) => boolean;
1035
- setStyle: (element: HTMLElement, style: Partial<Record<keyof CSSStyleDeclaration, string | null>>, flags?: RendererStyleFlags2) => void;
1036
- removeStyle: (element: HTMLElement, style: keyof CSSStyleDeclaration | string, flags?: RendererStyleFlags2) => void;
1037
- removeStyles: (element: HTMLElement, ...styles: (keyof CSSStyleDeclaration | string)[]) => void;
1038
- setAttribute: (element: HTMLElement, name: string, value: string | null, namespace?: string | null) => void;
1039
- removeAttribute: (element: HTMLElement, ...names: string[]) => void;
1040
- setProperty: (element: HTMLElement, name: string, value: unknown) => void;
1041
- setProperties: (element: HTMLElement, properties: Record<string, unknown>) => void;
1042
- createElement: <K extends keyof HTMLElementTagNameMap>(tagName: K, namespace?: string | null) => HTMLElementTagNameMap[K];
1043
- createText: (value: string) => Text;
1044
- createComment: (value: string) => Comment;
1045
- appendChild: (parent: HTMLElement, newChild: Node) => void;
1046
- insertBefore: (parent: Node, newChild: Node, refChild: Node | null) => void;
1047
- removeChild: (parent: Node, oldChild: Node, isHostElement?: boolean) => void;
1048
- selectRootElement: (selectorOrNode: string | HTMLElement, preserveContent?: boolean) => HTMLElement;
1049
- parentNode: (node: Node) => Node | null;
1050
- nextSibling: (node: Node) => Node | null;
1051
- setValue: (node: Node, value: string) => void;
1052
- listen: (target: HTMLElement | Window | Document | "window" | "document" | "body", eventName: string, callback: (event: Event) => boolean | void) => (() => void);
1053
- destroyNode: (node: Node) => void;
1054
- replaceChild: (parent: Node, newChild: Node, oldChild: Node) => void;
1055
- empty: (element: HTMLElement) => void;
1056
- setTextContent: (element: HTMLElement, text: string) => void;
1057
- setInnerHTML: (element: HTMLElement, html: string) => void;
1058
- setAttributes: (element: HTMLElement, attributes: Record<string, string | null>, namespace?: string | null) => void;
1059
- setDataAttributes: (element: HTMLElement, data: Record<string, string | null>) => void;
1060
- setCssProperty: (element: HTMLElement, name: string, value: string | null) => void;
1061
- setCssProperties: (element: HTMLElement, properties: Record<string, string | null>) => void;
1062
- renderer: _angular_core.Renderer2;
1063
- };
1064
- (options: _angular_core.InjectOptions & {
1065
- optional?: false;
1066
- }): {
1067
- addClass: (element: HTMLElement, ...classes: string[]) => void;
1068
- removeClass: (element: HTMLElement, ...classes: string[]) => void;
1069
- toggleClass: (element: HTMLElement, className: string, force?: boolean) => boolean;
1070
- setStyle: (element: HTMLElement, style: Partial<Record<keyof CSSStyleDeclaration, string | null>>, flags?: RendererStyleFlags2) => void;
1071
- removeStyle: (element: HTMLElement, style: keyof CSSStyleDeclaration | string, flags?: RendererStyleFlags2) => void;
1072
- removeStyles: (element: HTMLElement, ...styles: (keyof CSSStyleDeclaration | string)[]) => void;
1073
- setAttribute: (element: HTMLElement, name: string, value: string | null, namespace?: string | null) => void;
1074
- removeAttribute: (element: HTMLElement, ...names: string[]) => void;
1075
- setProperty: (element: HTMLElement, name: string, value: unknown) => void;
1076
- setProperties: (element: HTMLElement, properties: Record<string, unknown>) => void;
1077
- createElement: <K extends keyof HTMLElementTagNameMap>(tagName: K, namespace?: string | null) => HTMLElementTagNameMap[K];
1078
- createText: (value: string) => Text;
1079
- createComment: (value: string) => Comment;
1080
- appendChild: (parent: HTMLElement, newChild: Node) => void;
1081
- insertBefore: (parent: Node, newChild: Node, refChild: Node | null) => void;
1082
- removeChild: (parent: Node, oldChild: Node, isHostElement?: boolean) => void;
1083
- selectRootElement: (selectorOrNode: string | HTMLElement, preserveContent?: boolean) => HTMLElement;
1084
- parentNode: (node: Node) => Node | null;
1085
- nextSibling: (node: Node) => Node | null;
1086
- setValue: (node: Node, value: string) => void;
1087
- listen: (target: HTMLElement | Window | Document | "window" | "document" | "body", eventName: string, callback: (event: Event) => boolean | void) => (() => void);
1088
- destroyNode: (node: Node) => void;
1089
- replaceChild: (parent: Node, newChild: Node, oldChild: Node) => void;
1090
- empty: (element: HTMLElement) => void;
1091
- setTextContent: (element: HTMLElement, text: string) => void;
1092
- setInnerHTML: (element: HTMLElement, html: string) => void;
1093
- setAttributes: (element: HTMLElement, attributes: Record<string, string | null>, namespace?: string | null) => void;
1094
- setDataAttributes: (element: HTMLElement, data: Record<string, string | null>) => void;
1095
- setCssProperty: (element: HTMLElement, name: string, value: string | null) => void;
1096
- setCssProperties: (element: HTMLElement, properties: Record<string, string | null>) => void;
1097
- renderer: _angular_core.Renderer2;
1098
- };
1099
- (options: _angular_core.InjectOptions): {
1100
- addClass: (element: HTMLElement, ...classes: string[]) => void;
1101
- removeClass: (element: HTMLElement, ...classes: string[]) => void;
1102
- toggleClass: (element: HTMLElement, className: string, force?: boolean) => boolean;
1103
- setStyle: (element: HTMLElement, style: Partial<Record<keyof CSSStyleDeclaration, string | null>>, flags?: RendererStyleFlags2) => void;
1104
- removeStyle: (element: HTMLElement, style: keyof CSSStyleDeclaration | string, flags?: RendererStyleFlags2) => void;
1105
- removeStyles: (element: HTMLElement, ...styles: (keyof CSSStyleDeclaration | string)[]) => void;
1106
- setAttribute: (element: HTMLElement, name: string, value: string | null, namespace?: string | null) => void;
1107
- removeAttribute: (element: HTMLElement, ...names: string[]) => void;
1108
- setProperty: (element: HTMLElement, name: string, value: unknown) => void;
1109
- setProperties: (element: HTMLElement, properties: Record<string, unknown>) => void;
1110
- createElement: <K extends keyof HTMLElementTagNameMap>(tagName: K, namespace?: string | null) => HTMLElementTagNameMap[K];
1111
- createText: (value: string) => Text;
1112
- createComment: (value: string) => Comment;
1113
- appendChild: (parent: HTMLElement, newChild: Node) => void;
1114
- insertBefore: (parent: Node, newChild: Node, refChild: Node | null) => void;
1115
- removeChild: (parent: Node, oldChild: Node, isHostElement?: boolean) => void;
1116
- selectRootElement: (selectorOrNode: string | HTMLElement, preserveContent?: boolean) => HTMLElement;
1117
- parentNode: (node: Node) => Node | null;
1118
- nextSibling: (node: Node) => Node | null;
1119
- setValue: (node: Node, value: string) => void;
1120
- listen: (target: HTMLElement | Window | Document | "window" | "document" | "body", eventName: string, callback: (event: Event) => boolean | void) => (() => void);
1121
- destroyNode: (node: Node) => void;
1122
- replaceChild: (parent: Node, newChild: Node, oldChild: Node) => void;
1123
- empty: (element: HTMLElement) => void;
1124
- setTextContent: (element: HTMLElement, text: string) => void;
1125
- setInnerHTML: (element: HTMLElement, html: string) => void;
1126
- setAttributes: (element: HTMLElement, attributes: Record<string, string | null>, namespace?: string | null) => void;
1127
- setDataAttributes: (element: HTMLElement, data: Record<string, string | null>) => void;
1128
- setCssProperty: (element: HTMLElement, name: string, value: string | null) => void;
1129
- setCssProperties: (element: HTMLElement, properties: Record<string, string | null>) => void;
1130
- renderer: _angular_core.Renderer2;
1131
- } | null;
1447
+ type CurrentElementVisibility = {
1448
+ /**
1449
+ * Whether the element is visible in the inline direction.
1450
+ */
1451
+ inline: boolean;
1452
+ /**
1453
+ * Whether the element is visible in the block direction.
1454
+ */
1455
+ block: boolean;
1456
+ /**
1457
+ * The percentage of the element that is visible in the inline direction.
1458
+ */
1459
+ inlineIntersection: number;
1460
+ /**
1461
+ * The percentage of the element that is visible in the block direction.
1462
+ */
1463
+ blockIntersection: number;
1464
+ /**
1465
+ * Whether the element is intersecting the container.
1466
+ */
1467
+ isIntersecting: boolean;
1468
+ /**
1469
+ * The ratio of the element that is intersecting the container.
1470
+ */
1471
+ intersectionRatio: number;
1472
+ /**
1473
+ * The element that is being checked for visibility.
1474
+ */
1475
+ element: HTMLElement;
1476
+ /**
1477
+ * The container's rect used for the calculation.
1478
+ */
1479
+ containerRect: DOMRect;
1480
+ /**
1481
+ * The element's rect used for the calculation.
1482
+ */
1483
+ elementRect: DOMRect;
1132
1484
  };
1133
- type AngularRenderer = NonNullable<ReturnType<typeof injectRenderer>>;
1485
+ declare const isElementVisible: (options: IsElementVisibleOptions) => CurrentElementVisibility | null;
1486
+ declare const getElementScrollCoordinates: (options: ScrollToElementOptions) => ScrollToOptions;
1487
+ type ScrollToElementOptions = {
1488
+ /**
1489
+ * The element to scroll to.
1490
+ */
1491
+ element?: HTMLElement | null;
1492
+ /**
1493
+ * The scroll container to scroll to the element in.
1494
+ * Must be provided - cannot scroll the viewport programmatically with this function.
1495
+ */
1496
+ container?: HTMLElement | null;
1497
+ /**
1498
+ * The direction to scroll in.
1499
+ * @default 'both'
1500
+ */
1501
+ direction?: 'inline' | 'block' | 'both';
1502
+ /**
1503
+ * The origin of the element to scroll to.
1504
+ * @default 'nearest'
1505
+ */
1506
+ origin?: 'start' | 'end' | 'center' | 'nearest';
1507
+ /**
1508
+ * The scroll behavior.
1509
+ * @default 'smooth'
1510
+ */
1511
+ behavior?: ScrollBehavior;
1512
+ /**
1513
+ * The scroll inline-margin
1514
+ * @default 0
1515
+ */
1516
+ scrollInlineMargin?: number;
1517
+ /**
1518
+ * The scroll block-margin
1519
+ * @default 0
1520
+ */
1521
+ scrollBlockMargin?: number;
1522
+ };
1523
+ declare const scrollToElement: (options: ScrollToElementOptions) => void;
1524
+
1525
+ type ScrollSnapOrigin = 'auto' | 'start' | 'center' | 'end';
1526
+ type ScrollSnapTarget = {
1527
+ /** The element to snap to. */
1528
+ element: HTMLElement;
1529
+ /** The resolved alignment to use when scrolling to the element. */
1530
+ origin: 'start' | 'center' | 'end';
1531
+ } | null;
1532
+ declare const getScrollSnapTarget: (items: HTMLElement[], container: HTMLElement, direction: "horizontal" | "vertical", origin: ScrollSnapOrigin, margin?: number) => ScrollSnapTarget;
1533
+ type ScrollContainerTarget = {
1534
+ element: HTMLElement;
1535
+ origin: 'start' | 'end';
1536
+ } | null;
1537
+ declare const getScrollContainerTarget: (entries: IntersectionObserverEntry[], direction: "start" | "end") => ScrollContainerTarget;
1538
+ type ScrollItemTarget = {
1539
+ element: HTMLElement;
1540
+ index: number;
1541
+ origin: 'start' | 'end' | 'center';
1542
+ } | null;
1543
+ declare const getScrollItemTarget: (entries: IntersectionObserverEntry[], container: HTMLElement, direction: "start" | "end", scrollOrigin: "auto" | "center" | "start" | "end", axisDirection: "horizontal" | "vertical") => ScrollItemTarget;
1134
1544
 
1135
1545
  declare const previousSignalValue: <T>(signal: Signal<T>) => Signal<T | undefined>;
1136
1546
  type SyncSignalOptions = {
@@ -1236,6 +1646,50 @@ declare const easeOutBack: (t: number) => number;
1236
1646
  /** Back easing function with more overshoot */
1237
1647
  declare const easeOutBackStrong: (t: number) => number;
1238
1648
 
1649
+ type BreakpointMap<T> = Partial<Record<Breakpoint, T>>;
1650
+ type BreakpointInput<T> = T | BreakpointMap<T>;
1651
+ declare const breakpointTransformBase: <T, WriteT = BreakpointInput<T>>(coerce: (value: WriteT) => T) => ((value: WriteT) => T);
1652
+ /**
1653
+ * Transform factory for boolean inputs.
1654
+ * Coerces plain values with `booleanAttribute`; resolves {@link BreakpointMap} mobile-first.
1655
+ *
1656
+ * @example
1657
+ * snap = input(false, { transform: boolBreakpointTransform() });
1658
+ * // Template: `snap` | `[snap]="true"` | `[snap]="{ xs: false, md: true }"`
1659
+ */
1660
+ declare const boolBreakpointTransform: () => ((value: BreakpointInput<boolean> | string) => boolean);
1661
+ /**
1662
+ * Transform factory for number inputs.
1663
+ * Coerces plain values with `numberAttribute`; resolves {@link BreakpointMap} mobile-first.
1664
+ *
1665
+ * @example
1666
+ * scrollMargin = input(0, { transform: numberBreakpointTransform() });
1667
+ * // Template: `[scrollMargin]="16"` | `[scrollMargin]="{ xs: 0, md: 16 }"`
1668
+ */
1669
+ declare const numberBreakpointTransform: () => ((value: BreakpointInput<number> | string) => number);
1670
+ /**
1671
+ * Transform factory for any typed input (string unions, arrays, objects, etc.).
1672
+ * Passes plain values through as-is; resolves {@link BreakpointMap} mobile-first.
1673
+ * A value is treated as a {@link BreakpointMap} only when all its keys are valid breakpoint names.
1674
+ *
1675
+ * @example
1676
+ * itemSize = input('auto', { transform: typedBreakpointTransform<ScrollableItemSize>() });
1677
+ * tags = input([], { transform: typedBreakpointTransform<string[]>() });
1678
+ * // Template: `[itemSize]="'third'"` | `[itemSize]="{ xs: 'full', md: 'third' }"`
1679
+ */
1680
+ declare const typedBreakpointTransform: <T>() => ((value: BreakpointInput<T>) => T);
1681
+ type BoolBreakpointSignal = InputSignalWithTransform<boolean, BreakpointInput<boolean> | string>;
1682
+ type NumberBreakpointSignal = InputSignalWithTransform<number, BreakpointInput<number> | string>;
1683
+ type TypedBreakpointSignal<T> = InputSignalWithTransform<T, BreakpointInput<T>>;
1684
+ declare const injectBreakpointInput: <T>(inputSignal: Signal<BreakpointInput<T>>, defaultValue: T) => Signal<T>;
1685
+ declare const booleanBreakpointAttribute: (value: unknown) => BreakpointInput<boolean>;
1686
+ declare const numberBreakpointAttribute: (value: unknown) => BreakpointInput<number>;
1687
+ declare const BREAKPOINT_INSTANCE_TOKEN: InjectionToken<unknown>;
1688
+ declare const provideBreakpointInstance: (componentClass: unknown) => {
1689
+ provide: InjectionToken<unknown>;
1690
+ useExisting: unknown;
1691
+ };
1692
+
1239
1693
  type ControlValueSignalOptions = {
1240
1694
  debounceTime?: number;
1241
1695
  /**
@@ -1354,8 +1808,9 @@ type ElementDimensions = {
1354
1808
  type NullableElementDimensions = {
1355
1809
  [K in keyof ElementDimensions]: ElementDimensions[K] | null;
1356
1810
  };
1357
- declare const signalElementDimensions: (el: SignalElementBindingType) => _angular_core.Signal<NullableElementDimensions>;
1358
- declare const signalHostElementDimensions: () => _angular_core.Signal<NullableElementDimensions>;
1811
+ declare const signalElementDimensions: (el: SignalElementBindingType) => Signal<NullableElementDimensions>;
1812
+ declare const signalHostElementDimensions: () => Signal<NullableElementDimensions>;
1813
+ declare const injectViewportSize: () => Signal<ElementSize>;
1359
1814
 
1360
1815
  type SignalElementIntersectionOptions = Omit<IntersectionObserverInit, 'root'> & {
1361
1816
  root?: SignalElementBindingType;
@@ -1445,7 +1900,10 @@ declare const injectCanHover: () => _angular_core.Signal<boolean>;
1445
1900
  /** Inject a signal containing the viewport dimensions */
1446
1901
  declare const injectViewportDimensions: () => _angular_core.Signal<_ethlete_core.NullableElementDimensions>;
1447
1902
  /** Inject a signal containing the scrollbar dimensions. Dimensions will be 0 if scrollbars overlap the page contents (like on mobile). */
1448
- declare const injectScrollbarDimensions: () => _angular_core.Signal<_ethlete_core.NullableElementDimensions>;
1903
+ declare const injectScrollbarDimensions: () => _angular_core.Signal<{
1904
+ width: number;
1905
+ height: number;
1906
+ } | null>;
1449
1907
 
1450
1908
  /**
1451
1909
  * Applies scrollbar size CSS variables to the documentElement (html tag) in pixels.
@@ -2160,5 +2618,5 @@ declare const injectTitleStore: {
2160
2618
  };
2161
2619
  declare const applyHeadTitleBinding: (binding: MaybeSignal<string | number | null | undefined>, options?: Omit<TitlePart, "text">) => void;
2162
2620
 
2163
- export { ANIMATABLE_TOKEN, ANIMATED_IF_TOKEN, ANIMATED_LIFECYCLE_TOKEN, AT_LEAST_ONE_REQUIRED, AnimatableDirective, AnimatedIfDirective, AnimatedLifecycleDirective, AnimatedOverlayDirective, BOUNDARY_ELEMENT_TOKEN, ClickOutsideDirective, DEFAULT_MULTI_INSTANCE_RELS, DEFAULT_MULTI_INSTANCE_TAGS, DEFAULT_VIEWPORT_CONFIG, DISABLE_LOGGER_PARAM, ET_DISABLE_SCROLL_TOP, ET_DISABLE_SCROLL_TOP_AS_RETURN_ROUTE, ET_DISABLE_SCROLL_TOP_ON_PATH_PARAM_CHANGE, ET_PROPERTY_REMOVED, FOCUS_VISIBLE_TRACKER_TOKEN, IS_ARRAY_NOT_EMPTY, IS_EMAIL, InferMimeTypePipe, IsArrayNotEmpty, IsEmail, jsonLd_d as JsonLD, KeyPressManager, MUST_MATCH, MatchStateType, MustMatch, NormalizeGameResultTypePipe, NormalizeMatchParticipantsPipe, NormalizeMatchScorePipe, NormalizeMatchStatePipe, NormalizeMatchTypePipe, PropsDirective, ProvideThemeDirective, RUNTIME_ERROR_NO_DATA, RepeatDirective, RuntimeError, SEO_DIRECTIVE_TOKEN, SeoDirective, StructuredDataComponent, THEME_PROVIDER, ToArrayPipe, TypedQueryList, ValidateAtLeastOneRequired, Validators, applyAlternateBinding, applyAlternateLanguagesBindings, applyArticleBindings, applyAuthorBinding, applyCanonicalBinding, applyDescriptionBinding, applyHeadBinding, applyHeadTitleBinding, applyHostListener, applyHostListeners, applyKeywordsBinding, applyLinkBinding, applyMetaBinding, applyNextBinding, applyOgBinding, applyOpenGraphBindings, applyPrevBinding, applyResourceHintsBindings, applyRobotsBinding, applySocialMediaBindings, applyStructuredDataBinding, applyTwitterCardBindings, areScrollStatesEqual, bindProps, boundingClientRectToElementRect, buildElementSignal, buildSignalEffects, clamp, clone, cloneFormGroup, computedTillFalsy, computedTillTruthy, controlValueSignal, controlValueSignalWithPrevious, createArrayPropertyBinding, createBulkPropertyBinding, createCanAnimateSignal, createComponentId, createCssThemeName, createDependencyStash, createDestroy, createDocumentElementSignal, createElementDictionary, createElementDimensions, createEmptyElementSignal, createFlipAnimation, createFlipAnimationGroup, createHostProps, createIsRenderedSignal, createLogger, createPropHandlers, createPropertyBinding, createProps, createProvider, createRootProvider, createRootThemeCss, createRxHostListener, createSetup, createStaticProvider, createStaticRootProvider, createSwatchCss, createTailwindColorThemes, createTailwindCssVar, createTailwindRgbVar, createThemeStyle, deferredSignal, deleteCookie, easeElastic, easeIn, easeInOut, easeLinear, easeOut, easeOutBack, easeOutBackStrong, elementCanScroll, equal, firstElementSignal, forceReflow, formatRuntimeError, fromNextFrame, getCookie, getDomain, getElementScrollCoordinates, getFormGroupValue, getGroupMatchPoints, getGroupMatchScore, getKnockoutMatchScore, getMatchScoreSubLine, getObjectProperty, hasCookie, inferMimeType, injectAngularRootElement, injectBoundaryElement, injectBreakpointIsMatched, injectBreakpointObserver, injectCanHover, injectColorThemes, injectCurrentBreakpoint, injectDeviceInputType, injectDisplayOrientation, injectFocusVisibleTracker, injectFragment, injectHasPrecisionInput, injectHasTouchInput, injectHostElement, injectIs2Xl, injectIsLandscape, injectIsLg, injectIsMd, injectIsPortrait, injectIsRouterInitialized, injectIsSm, injectIsXl, injectIsXs, injectLinkStore, injectLinkStoreConfig, injectLocale, injectMediaQueryIsMatched, injectMetaConfig, injectMetaStore, injectObserveBreakpoint, injectObserveMediaQuery, injectPathParam, injectPathParamChanges, injectPathParams, injectQueryParam, injectQueryParamChanges, injectQueryParams, injectRenderer, injectRoute, injectRouteData, injectRouteDataItem, injectRouteTitle, injectRouterEvent, injectRouterState, injectScrollbarDimensions, injectStructuredDataConfig, injectStructuredDataStore, injectTemplateRef, injectThemesPrefix, injectTitleConfig, injectTitleStore, injectUrl, injectViewportConfig, injectViewportDimensions, isArray, isElementSignal, isElementVisible, isGroupMatch, isKnockoutMatch, isObject, maybeSignalValue, memoizeSignal, nextFrame, normalizeGameResultType, normalizeMatchParticipant, normalizeMatchParticipants, normalizeMatchScore, normalizeMatchState, normalizeMatchType, previousSignalValue, provideBoundaryElement, provideBreakpointObserver, provideColorThemes, provideColorThemesWithTailwind4, provideFocusVisibleTracker, provideLinkStore, provideLinkStoreConfig, provideLocale, provideMetaConfig, provideMetaStore, provideRenderer, provideStructuredDataConfig, provideStructuredDataStore, provideTitleConfig, provideTitleStore, provideViewportConfig, round, routerDisableScrollTop, scrollToElement, setCookie, setInputSignal, setupScrollRestoration, signalAnimatedNumber, signalAttributes, signalClasses, signalElementChildren, signalElementDimensions, signalElementIntersection, signalElementLastScrollDirection, signalElementMutations, signalElementScrollState, signalHostAttributes, signalHostClasses, signalHostElementDimensions, signalHostElementIntersection, signalHostElementLastScrollDirection, signalHostElementMutations, signalHostElementScrollState, signalHostStyles, signalIsRendered, signalStyles, switchQueryListChanges, syncSignal, templateComputed, toArray, toArrayTrackByFn, toStringBinding, transformOrReturn, unbindProps, useCursorDragScroll, writeScrollbarSizeToCssVariables, writeViewportSizeToCssVariables, ɵProvideColorThemes, ɵProvideThemesPrefix };
2164
- export type { AlternateLanguagesConfig, AlternateLink, AngularRenderer, AnimatedLifecycleState, AnimatedNumberSignal, AnimatedOverlayComponentBase, AnimatedOverlayMountConfig, AnimatedOverlayState, AnimationEndEvent, AnyTemplateType, ArticleConfig, BindPropsOptions, Breakpoint, BuildMediaQueryOptions, BuildSignalEffectsConfig, ComponentTemplate, ComponentTypeWithInputs, ControlValueSignalOptions, CreateLoggerConfig, CreatePropsOptions, CreateProviderOptions, CurrentElementVisibility, CursorDragScrollDirection, CursorDragScrollOptions, ElementDimensions, ElementLastScrollDirection, ElementLastScrollDirectionType, ElementRect, ElementScrollState, ElementSignal, ElementSignalValue, ElementSize, FacebookCard, FlipAnimationConfig, HeadBinding, HostProps, InjectQueryParamConfig, InjectUtilConfig, InjectUtilTransformConfig, IntersectionObserverEntryWithDetails, IsElementVisibleOptions, LinkConfig, LinkStoreConfig, LogicalSize, MaybeObservable, MaybeSignal, MetaConfig, MetaTagConfig, NgClassType, NgTemplateTemplate, NormalizedGameResultType, NormalizedMatchParticipant, NormalizedMatchParticipants, NormalizedMatchScore, NullableElementDimensions, OnThemeColorMap, OpenGraph, OpenGraphConfig, PropHandlers, Props, PropsAttachedElements, PropsAttachedElementsInternal, PropsInternal, ProviderResult, ResourceHintsConfig, RobotsConfig, RootProviderResult, RouterDisableScrollTopConfig, RouterState, ScrollToElementOptions, SeoConfig, SetupScrollRestorationConfig, SignalAnimatedNumberOptions, SignalElementBindingComplexType, SignalElementBindingType, SignalElementIntersectionOptions, SignalElementScrollStateOptions, SocialMediaConfig, StaticProviderResult, StringTemplate, StructuredDataConfig, SyncSignalOptions, TemplateRefWithContext, Theme, ThemeColor, ThemeColorMap, ThemeHSLColor, ThemeRGBColor, ThemeSwatch, TitleConfig, TitlePart, Translatable, TwitterCard, TwitterCardConfig, UnbindPropsOptions, ValidateAtLeastOneRequiredConfig, Vec2, ViewportConfig };
2621
+ export { ANIMATABLE_TOKEN, ANIMATED_IF_TOKEN, ANIMATED_LIFECYCLE_TOKEN, AT_LEAST_ONE_REQUIRED, AnimatableDirective, AnimatedIfDirective, AnimatedLifecycleDirective, AnimatedOverlayDirective, BOUNDARY_ELEMENT_TOKEN, BREAKPOINT_INSTANCE_TOKEN, BREAKPOINT_ORDER, COLOR_PROVIDER, ClickOutsideDirective, ColorInteractiveContainerDirective, ColorInteractiveDirective, ColorInteractiveExcludeDirective, ColorInteractiveHasFocusDirective, DEFAULT_MULTI_INSTANCE_RELS, DEFAULT_MULTI_INSTANCE_TAGS, DEFAULT_VIEWPORT_CONFIG, DISABLE_LOGGER_PARAM, DragHandleDirective, ET_DISABLE_SCROLL_TOP, ET_DISABLE_SCROLL_TOP_AS_RETURN_ROUTE, ET_DISABLE_SCROLL_TOP_ON_PATH_PARAM_CHANGE, ET_PROPERTY_REMOVED, FOCUSABLE_SELECTOR, FOCUS_VISIBLE_TRACKER_TOKEN, IS_ARRAY_NOT_EMPTY, IS_EMAIL, InferMimeTypePipe, IsArrayNotEmpty, IsEmail, jsonLd_d as JsonLD, KeyPressManager, MUST_MATCH, MatchStateType, MustMatch, NormalizeGameResultTypePipe, NormalizeMatchParticipantsPipe, NormalizeMatchScorePipe, NormalizeMatchStatePipe, NormalizeMatchTypePipe, PropsDirective, ProvideColorDirective, ProvideSurfaceDirective, RUNTIME_ERROR_NO_DATA, RepeatDirective, ResizeHandlesComponent, RuntimeError, SEO_DIRECTIVE_TOKEN, SURFACE_PROVIDER, SURFACE_TYPE, ScrollObserverDirective, ScrollObserverEndDirective, ScrollObserverStartDirective, SeoDirective, StructuredDataComponent, SurfaceInteractiveDirective, ToArrayPipe, TypedQueryList, ValidateAtLeastOneRequired, Validators, applyAlternateBinding, applyAlternateLanguagesBindings, applyArticleBindings, applyAuthorBinding, applyCanonicalBinding, applyCenteredPosition, applyDescriptionBinding, applyHeadBinding, applyHeadTitleBinding, applyHostListener, applyHostListeners, applyInitialFocus, applyKeywordsBinding, applyLinkBinding, applyMetaBinding, applyNextBinding, applyOgBinding, applyOpenGraphBindings, applyPrevBinding, applyResourceHintsBindings, applyRobotsBinding, applySocialMediaBindings, applyStructuredDataBinding, applyTwitterCardBindings, areScrollStatesEqual, bindProps, boolBreakpointTransform, booleanBreakpointAttribute, boundingClientRectToElementRect, breakpointTransformBase, buildElementSignal, buildSignalEffects, canUseSessionMemory, clamp, clone, cloneFormGroup, computedTillFalsy, computedTillTruthy, controlValueSignal, controlValueSignalWithPrevious, createAnchoredPositionCleanup, createArrayPropertyBinding, createAutoSessionMemoryKey, createBulkPropertyBinding, createCanAnimateSignal, createComponentId, createCssColorThemeName, createCssSurfaceName, createDependencyStash, createDestroy, createDocumentElementSignal, createElementDictionary, createElementDimensions, createEmptyElementSignal, createFlipAnimation, createFlipAnimationGroup, createHostProps, createIsRenderedSignal, createLogger, createOverlayRuntimeRef, createPropHandlers, createPropertyBinding, createProps, createProvider, createRootProvider, createRootThemeCss, createRxHostListener, createSessionMemory, createSetup, createStaticProvider, createStaticRootProvider, createSwatchCss, createTailwindColorThemes, createTailwindCssVar, createTailwindRgbVar, createThemeStyle, createUserConsentProvider, deferredSignal, deleteCookie, easeElastic, easeIn, easeInOut, easeLinear, easeOut, easeOutBack, easeOutBackStrong, elementCanScroll, equal, firstElementSignal, focusElement, forceReflow, formatRuntimeError, fromNextFrame, getCookie, getDomain, getElementScrollCoordinates, getFocusableElements, getFormGroupValue, getGroupMatchPoints, getGroupMatchScore, getHeadingElement, getKnockoutMatchScore, getMatchScoreSubLine, getObjectProperty, getScrollContainerTarget, getScrollItemTarget, getScrollSnapTarget, hasCookie, inferMimeType, injectAngularRootElement, injectBoundaryElement, injectBreakpointInput, injectBreakpointIsMatched, injectBreakpointObserver, injectCanHover, injectColorThemes, injectColorThemesPrefix, injectCurrentBreakpoint, injectDeviceInputType, injectDisplayOrientation, injectErrorTheme, injectFocusVisibleTracker, injectFragment, injectHasPrecisionInput, injectHasTouchInput, injectHostElement, injectIs2Xl, injectIsLandscape, injectIsLg, injectIsMd, injectIsPortrait, injectIsRouterInitialized, injectIsSm, injectIsXl, injectIsXs, injectLinkStore, injectLinkStoreConfig, injectLocale, injectMediaQueryIsMatched, injectMetaConfig, injectMetaStore, injectObserveBreakpoint, injectObserveMediaQuery, injectOverlayRuntime, injectPathParam, injectPathParamChanges, injectPathParams, injectQueryParam, injectQueryParamChanges, injectQueryParams, injectRenderer, injectRoute, injectRouteData, injectRouteDataItem, injectRouteTitle, injectRouterEvent, injectRouterState, injectScrollbarDimensions, injectStructuredDataConfig, injectStructuredDataStore, injectStyleManager, injectSuccessTheme, injectSurfaceContextTracker, injectSurfaceThemes, injectSurfaceThemesPrefix, injectTemplateRef, injectTitleConfig, injectTitleStore, injectUrl, injectViewportConfig, injectViewportDimensions, injectViewportSize, injectWarningTheme, isArray, isElementSignal, isElementVisible, isFocusable, isGroupMatch, isHTMLElement, isKnockoutMatch, isObject, maybeSignalValue, memoizeSignal, nextFrame, normalizeGameResultType, normalizeMatchParticipant, normalizeMatchParticipants, normalizeMatchScore, normalizeMatchState, normalizeMatchType, numberBreakpointAttribute, numberBreakpointTransform, previousSignalValue, provideBoundaryElement, provideBreakpointInstance, provideBreakpointObserver, provideColorThemes, provideColorThemesWithTailwind4, provideFocusVisibleTracker, provideLinkStore, provideLinkStoreConfig, provideLocale, provideMetaConfig, provideMetaStore, provideOverlayRuntime, provideRenderer, provideStructuredDataConfig, provideStructuredDataStore, provideStyleManager, provideSurfaceContextTracker, provideSurfaceThemesWithTailwind4, provideTitleConfig, provideTitleStore, provideViewportConfig, resolveSurfaceByElevation, round, routerDisableScrollTop, scrollToElement, setBackdropStyles, setBaseElementStyles, setCookie, setInputSignal, setupFocusTrap, setupPositioning, setupScrollRestoration, signalAnimatedNumber, signalAttributes, signalClasses, signalElementChildren, signalElementDimensions, signalElementIntersection, signalElementLastScrollDirection, signalElementMutations, signalElementScrollState, signalHostAttributes, signalHostClasses, signalHostElementDimensions, signalHostElementIntersection, signalHostElementLastScrollDirection, signalHostElementMutations, signalHostElementScrollState, signalHostStyles, signalIsRendered, signalStyles, switchQueryListChanges, syncSignal, templateComputed, toArray, toArrayTrackByFn, toStringBinding, transformOrReturn, typedBreakpointTransform, unbindProps, useCursorDragScroll, writeScrollbarSizeToCssVariables, writeViewportSizeToCssVariables, ɵProvideColorThemes, ɵProvideColorThemesPrefix, ɵProvideSurfaceThemes, ɵProvideSurfaceThemesPrefix };
2622
+ export type { AlternateLanguagesConfig, AlternateLink, AngularRenderer, AnimatedLifecycleState, AnimatedNumberSignal, AnimatedOverlayComponentBase, AnimatedOverlayMountConfig, AnimatedOverlayState, AnimationEndEvent, AnyTemplateType, ArticleConfig, BindPropsOptions, BoolBreakpointSignal, Breakpoint, BreakpointInput, BreakpointMap, BuildMediaQueryOptions, BuildSignalEffectsConfig, ColorTheme, ColorThemeType, ComponentTemplate, ComponentTypeWithInputs, ConsentHandler, ControlValueSignalOptions, CreateLoggerConfig, CreatePropsOptions, CreateProviderOptions, CreateSessionMemoryConfig, CreateUserConsentProviderOptions, CurrentElementVisibility, CursorDragScrollDirection, CursorDragScrollOptions, DragMoveEvent, ElementDimensions, ElementLastScrollDirection, ElementLastScrollDirectionType, ElementRect, ElementScrollState, ElementSignal, ElementSignalValue, ElementSize, FacebookCard, FlipAnimationConfig, HeadBinding, HostProps, InjectQueryParamConfig, InjectUtilConfig, InjectUtilTransformConfig, IntersectionObserverEntryWithDetails, IsElementVisibleOptions, LinkConfig, LinkStoreConfig, LogicalSize, MaybeObservable, MaybeSignal, MetaConfig, MetaTagConfig, NgClassType, NgTemplateTemplate, NormalizedGameResultType, NormalizedMatchParticipant, NormalizedMatchParticipants, NormalizedMatchScore, NullableElementDimensions, NumberBreakpointSignal, OnThemeColorMap, OpenGraph, OpenGraphConfig, OverlayRuntimeAnchoredPosition, OverlayRuntimeAutoFocusTarget, OverlayRuntimeCenteredPosition, OverlayRuntimeCloseEvent, OverlayRuntimeCloseSource, OverlayRuntimeComponentBase, OverlayRuntimeElements, OverlayRuntimeMountConfig, OverlayRuntimePositionStrategy, OverlayRuntimeRef, OverlayRuntimeRole, OverlayRuntimeState, PropHandlers, Props, PropsAttachedElements, PropsAttachedElementsInternal, PropsInternal, ProviderResult, ResizeEdge, ResizeMoveEvent, ResourceHintsConfig, RobotsConfig, RootProviderResult, RouterDisableScrollTopConfig, RouterState, ScrollContainerTarget, ScrollItemTarget, ScrollSnapOrigin, ScrollSnapTarget, ScrollToElementOptions, SeoConfig, SetupScrollRestorationConfig, SignalAnimatedNumberOptions, SignalElementBindingComplexType, SignalElementBindingType, SignalElementIntersectionOptions, SignalElementScrollStateOptions, SocialMediaConfig, StaticProviderResult, StringTemplate, StructuredDataConfig, StyleManager, SurfaceContextEntry, SurfaceContextTracker, SurfaceInteractionColor, SurfaceTheme, SurfaceThemeColor, SurfaceType, SyncSignalOptions, TemplateRefWithContext, ThemeColor, ThemeColorMap, ThemeHSLColor, ThemeInkColorMap, ThemeRGBColor, ThemeSwatch, TitleConfig, TitlePart, Translatable, TwitterCard, TwitterCardConfig, TypedBreakpointSignal, UnbindPropsOptions, ValidateAtLeastOneRequiredConfig, Vec2, ViewportConfig };