import { NgClass, NgStyle } from '@angular/common'; import * as i0 from '@angular/core'; import { DoCheck, ElementRef, Renderer2, AfterViewInit, OnChanges, SimpleChanges, KeyValueDiffers } from '@angular/core'; import * as i1 from '@ngbracket/ngx-layout/core'; import { BaseDirective2, StyleUtils, MediaMarshaller, StyleBuilder, StyleDefinition, LayoutConfigOptions } from '@ngbracket/ngx-layout/core'; import { DomSanitizer } from '@angular/platform-browser'; declare class ClassDirective extends BaseDirective2 implements DoCheck { protected readonly ngClassInstance: NgClass; protected DIRECTIVE_KEY: string; protected inputs: string[]; /** * Capture class assignments so we cache the default classes * which are merged with activated styles and used as fallbacks. */ set klass(val: string); constructor(elementRef: ElementRef, styler: StyleUtils, marshal: MediaMarshaller, renderer2: Renderer2, ngClassInstance: NgClass); protected updateWithValue(value: any): void; /** * For ChangeDetectionStrategy.onPush and ngOnChanges() updates */ ngDoCheck(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** * Directive to add responsive support for ngClass. * This maintains the core functionality of 'ngClass' and adds responsive API * Note: this class is a no-op when rendered on the server * * @deprecated The DefaultClassDirective will be removed in version 21. * Use ClassDirective directly instead. */ declare class DefaultClassDirective extends ClassDirective { protected inputs: string[]; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class ImgSrcStyleBuilder extends StyleBuilder { buildStyles(url: string): { content: string; }; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } declare class ImgSrcDirective extends BaseDirective2 { protected platformId: Object; protected serverModuleLoaded: boolean; protected DIRECTIVE_KEY: string; protected inputs: string[]; protected defaultSrc: string; set src(val: string); constructor(elementRef: ElementRef, styleBuilder: ImgSrcStyleBuilder, styler: StyleUtils, marshal: MediaMarshaller, platformId: Object, serverModuleLoaded: boolean); /** * Use the [responsively] activated input value to update * the host img src attribute or assign a default `img.src=''` * if the src has not been defined. * * Do nothing to standard `` usages, only when responsive * keys are present do we actually call `setAttribute()` */ protected updateWithValue(value?: string): void; protected styleCache: Map; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** * * @deprecated The DefaultImgSrcDirective will be removed in version 21. * Use ImgSrcDirective directly instead. * * This directive provides a responsive API for the HTML 'src' attribute * and will update the img.src property upon each responsive activation. * * e.g. * * * @see https://css-tricks.com/responsive-images-youre-just-changing-resolutions-use-src/ */ declare class DefaultImgSrcDirective extends ImgSrcDirective { protected inputs: string[]; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } interface ShowHideParent { display: string; isServer: boolean; } declare class ShowHideStyleBuilder extends StyleBuilder { buildStyles(show: string, parent: ShowHideParent): { display: string; }; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } declare class ShowHideDirective extends BaseDirective2 implements AfterViewInit, OnChanges { protected layoutConfig: LayoutConfigOptions; protected platformId: object; protected serverModuleLoaded: boolean; protected DIRECTIVE_KEY: string; protected inputs: string[]; /** Original DOM Element CSS display style */ protected display: string; protected hasLayout: boolean; protected hasFlexChild: boolean; constructor(elementRef: ElementRef, styleBuilder: ShowHideStyleBuilder, styler: StyleUtils, marshal: MediaMarshaller, layoutConfig: LayoutConfigOptions, platformId: object, serverModuleLoaded: boolean); ngAfterViewInit(): void; /** * On changes to any @Input properties... * Default to use the non-responsive Input value ('fxShow') * Then conditionally override with the mq-activated Input's current value */ ngOnChanges(changes: SimpleChanges): void; /** * Watch for these extra triggers to update fxShow, fxHide stylings */ protected trackExtraTriggers(): void; /** * Override accessor to the current HTMLElement's `display` style * Note: Show/Hide will not change the display to 'flex' but will set it to 'block' * unless it was already explicitly specified inline or in a CSS stylesheet. */ protected getDisplayStyle(): string; /** Validate the visibility value and then update the host's inline display style */ protected updateWithValue(value?: boolean | string): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** * 'show' Layout API directive * @deprecated The DefaultShowHideDirective will be removed in version 21. * Use ShowHideDirective directly instead. */ declare class DefaultShowHideDirective extends ShowHideDirective { protected inputs: string[]; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } type NgStyleRawList = string[]; type NgStyleMap = { [klass: string]: string; }; type NgStyleType = string | Set | NgStyleRawList | NgStyleMap; declare class StyleDirective extends BaseDirective2 implements DoCheck { protected sanitizer: DomSanitizer; private readonly ngStyleInstance; protected DIRECTIVE_KEY: string; protected inputs: string[]; protected fallbackStyles: NgStyleMap; protected isServer: boolean; constructor(elementRef: ElementRef, styler: StyleUtils, marshal: MediaMarshaller, sanitizer: DomSanitizer, differs: KeyValueDiffers, renderer2: Renderer2, ngStyleInstance: NgStyle, serverLoaded: boolean, platformId: Object); /** Add generated styles */ protected updateWithValue(value: any): void; /** Remove generated styles */ protected clearStyles(): void; /** * Convert raw strings to ngStyleMap; which is required by ngStyle * NOTE: Raw string key-value pairs MUST be delimited by `;` * Comma-delimiters are not supported due to complexities of * possible style values such as `rgba(x,x,x,x)` and others */ protected buildStyleMap(styles: NgStyleType): NgStyleMap; /** For ChangeDetectionStrategy.onPush and ngOnChanges() updates */ ngDoCheck(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** * Directive to add responsive support for ngStyle. * * @deprecated The DefaultStyleDirective will be removed in version 21. * Use StyleDirective directly instead. * */ declare class DefaultStyleDirective extends StyleDirective implements DoCheck { protected inputs: string[]; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** * ***************************************************************** * Define module for the Extended API * ***************************************************************** */ declare class ExtendedModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export { ClassDirective, DefaultClassDirective, DefaultImgSrcDirective, DefaultShowHideDirective, DefaultStyleDirective, ExtendedModule, ImgSrcDirective, ImgSrcStyleBuilder, ShowHideDirective, ShowHideStyleBuilder, StyleDirective }; export type { ShowHideParent };