import * as i0 from '@angular/core'; import { AfterViewInit, ElementRef, EventEmitter, ChangeDetectorRef, DestroyRef, Renderer2, AfterContentInit, OnDestroy, TemplateRef, QueryList, EmbeddedViewRef, ViewContainerRef, NgZone, OnInit, OnChanges, SimpleChanges, PipeTransform, ComponentRef, DoCheck, IterableDiffers, IterableDiffer, TrackByFunction, IterableChanges, AfterViewChecked } from '@angular/core'; import { IBaseEventArgs, ThemeToken, IgxTheme, PlatformUtil, CancelableBrowserEventArgs, IToggleView, IgxOverlayService, OverlaySettings, OffsetMode, IgxNavigationService, IgxOverlayOutletDirective, PositionSettings, AutoPositionStrategy, Size, Point, ConnectedFit, DatePartDeltas, DatePart, IPositionStrategy } from 'igniteui-angular/core'; import { NgControl, ControlValueAccessor, Validator, AbstractControl, ValidationErrors } from '@angular/forms'; import { Subject } from 'rxjs'; import { NgForOfContext } from '@angular/common'; import { AnimationBuilder } from '@angular/animations'; declare const IgxBaseButtonType: { readonly Flat: "flat"; readonly Contained: "contained"; readonly Outlined: "outlined"; }; declare abstract class IgxButtonBaseDirective implements AfterViewInit { private _platformUtil; element: ElementRef; private _viewInit; /** * Emitted when the button is clicked. */ buttonClick: EventEmitter; /** * Sets/gets the `role` attribute. * * @example * ```typescript * this.button.role = 'navbutton'; * let buttonRole = this.button.role; * ``` */ role: string; /** * @hidden * @internal */ onClick(ev: MouseEvent): void; /** * @hidden * @internal */ protected onBlur(): void; /** * Sets/gets whether the button component is on focus. * Default value is `false`. * ```typescript * this.button.focus = true; * ``` * ```typescript * let isFocused = this.button.focused; * ``` */ protected focused: boolean; /** * Enables/disables the button. * * @example * ```html * * ``` */ disabled: boolean; /** * @hidden * @internal */ get disabledAttribute(): true; protected constructor(); ngAfterViewInit(): void; /** * @hidden * @internal */ protected updateOnKeyUp(event: KeyboardEvent): void; /** * Returns the underlying DOM element. */ get nativeElement(): any; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; static ngAcceptInputType_disabled: unknown; } declare const IgxButtonType: { readonly FAB: "fab"; readonly Flat: "flat"; readonly Contained: "contained"; readonly Outlined: "outlined"; }; /** * Determines the Button type. */ type IgxButtonType = typeof IgxButtonType[keyof typeof IgxButtonType]; /** * The Button directive provides the Ignite UI Button functionality to every component that's intended to be used as a button. * * @igxModule IgxButtonModule * * @igxParent Data Entry & Display * * @igxTheme igx-button-theme * * @igxKeywords button, span, div, click * * @remarks * The Ignite UI Button directive is intended to be used by any button, span or div and turn it into a fully functional button. * * @example * ```html * * ``` */ declare class IgxButtonDirective extends IgxButtonBaseDirective { private _renderer; private static ngAcceptInputType_type; /** * Called when the button is selected. */ buttonSelected: EventEmitter; /** * @hidden * @internal */ _cssClass: string; /** * @hidden * @internal */ private _type; /** * @hidden * @internal */ private _color; /** * @hidden * @internal */ private _label; /** * @hidden * @internal */ private _backgroundColor; /** * @hidden * @internal */ private _selected; protected emitSelected(): void; /** * Gets or sets whether the button is selected. * Mainly used in the IgxButtonGroup component and it will have no effect if set separately. * * @example * ```html * * ``` */ set selected(value: boolean); get selected(): boolean; constructor(); /** * Sets the type of the button. * * @example * ```html * * ``` */ set type(type: IgxButtonType); /** * Sets the `aria-label` attribute. * * @example * ```html * * ``` */ set label(value: string); /** * @hidden * @internal */ get flat(): boolean; /** * @hidden * @internal */ get contained(): boolean; /** * @hidden * @internal */ get outlined(): boolean; /** * @hidden * @internal */ get fab(): boolean; /** * @hidden * @internal */ select(): void; /** * @hidden * @internal */ deselect(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; static ngAcceptInputType_selected: unknown; } interface IButtonEventArgs extends IBaseEventArgs { button: IgxButtonDirective; } declare const LabelPosition: { readonly BEFORE: "before"; readonly AFTER: "after"; }; type LabelPosition = typeof LabelPosition[keyof typeof LabelPosition]; interface IChangeCheckboxEventArgs extends IBaseEventArgs { checked: boolean; value?: any; } declare class CheckboxBaseDirective implements AfterViewInit { protected cdr: ChangeDetectorRef; protected themeToken: ThemeToken; ngControl: NgControl; /** * An event that is emitted after the checkbox state is changed. * Provides references to the `IgxCheckboxComponent` and the `checked` property as event arguments. */ readonly change: EventEmitter; /** * @hidden * @internal */ destroy$: Subject; /** * Returns reference to the native checkbox element. * * @example * ```typescript * let checkboxElement = this.component.checkboxElement; * ``` */ nativeInput: ElementRef; /** * Returns reference to the native label element. * ```typescript * * @example * let labelElement = this.component.nativeLabel; * ``` */ nativeLabel: ElementRef; cssClass: string; disabled: boolean; readonly: boolean; indeterminate: boolean; focused: boolean; invalid: boolean; get checked(): boolean; set checked(value: boolean); /** * Returns reference to the `nativeElement` of the igx-checkbox/igx-switch. * * @example * ```typescript * let nativeElement = this.component.nativeElement; * ``` */ get nativeElement(): any; /** * Returns reference to the label placeholder element. * ```typescript * * @example * let labelPlaceholder = this.component.placeholderLabel; * ``` */ placeholderLabel: ElementRef; /** * Sets/gets the `id` of the checkbox component. * If not set, the `id` of the first checkbox component will be `"igx-checkbox-0"`. * * @example * ```html * * ``` * ```typescript * let checkboxId = this.checkbox.id; * ``` */ id: string; /** * Sets/gets the id of the `label` element. * If not set, the id of the `label` in the first checkbox component will be `"igx-checkbox-0-label"`. * * @example * ```html * * ``` * ```typescript * let labelId = this.component.labelId; * ``` */ labelId: string; /** * Sets/gets the `value` attribute. * * @example * ```html * * ``` * ```typescript * let value = this.checkbox.value; * ``` */ value: any; /** * Sets/gets the `name` attribute. * * @example * ```html * * ``` * ```typescript * let name = this.checkbox.name; * ``` */ name: string; /** * Sets/gets the value of the `tabindex` attribute. * * @example * ```html * * ``` * ```typescript * let tabIndex = this.checkbox.tabindex; * ``` */ tabindex: number; /** * Sets/gets the position of the `label`. * If not set, the `labelPosition` will have value `"after"`. * * @example * ```html * * ``` * ```typescript * let labelPosition = this.checkbox.labelPosition; * ``` */ labelPosition: LabelPosition | string; /** * Enables/Disables the ripple effect. * If not set, `disableRipple` will have value `false`. * * @example * ```html * * ``` * ```typescript * let isRippleDisabled = this.checkbox.desableRipple; * ``` */ disableRipple: boolean; /** * Sets/gets the `aria-labelledby` attribute. * If not set, the `aria-labelledby` will be equal to the value of `labelId` attribute. * * @example * ```html * * ``` * ```typescript * let ariaLabelledBy = this.checkbox.ariaLabelledBy; * ``` */ ariaLabelledBy: string; /** * Sets/gets the value of the `aria-label` attribute. * * @example * ```html * * ``` * ```typescript * let ariaLabel = this.checkbox.ariaLabel; * ``` */ ariaLabel: string | null; constructor(); /** * Sets/gets whether the checkbox is required. * If not set, `required` will have value `false`. * * @example * ```html * * ``` * ```typescript * let isRequired = this.checkbox.required; * ``` */ get required(): boolean; set required(value: boolean); /** * @hidden * @internal */ ngAfterViewInit(): void; /** * @hidden * @internal */ inputId: string; /** * @hidden */ protected _onChangeCallback: (_: any) => void; /** * @hidden */ private _onTouchedCallback; /** * @hidden * @internal */ protected _checked: boolean; /** * @hidden * @internal */ protected theme: IgxTheme; /** * @hidden * @internal */ _required: boolean; private elRef; protected destroyRef: DestroyRef; private setComponentTheme; /** @hidden @internal */ onKeyUp(event: KeyboardEvent): void; /** @hidden @internal */ _onCheckboxClick(event: PointerEvent | MouseEvent): void; /** * @hidden * @internal */ get ariaChecked(): boolean | "mixed"; /** @hidden @internal */ _onCheckboxChange(event: Event): void; /** @hidden @internal */ onBlur(): void; /** @hidden @internal */ writeValue(value: boolean): void; /** @hidden @internal */ get labelClass(): string; /** @hidden @internal */ registerOnChange(fn: (_: any) => void): void; /** @hidden @internal */ registerOnTouched(fn: () => void): void; /** @hidden @internal */ setDisabledState(isDisabled: boolean): void; /** @hidden @internal */ getEditElement(): any; /** * @hidden * @internal */ protected updateValidityState(): void; /** * A function to assign a native validity property of a checkbox. * This should be used when there's no ngControl * * @hidden * @internal */ private checkNativeValidity; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; static ngAcceptInputType_checked: unknown; static ngAcceptInputType_disableRipple: unknown; static ngAcceptInputType_required: unknown; } declare const IgxDividerType: { readonly SOLID: "solid"; readonly DASHED: "dashed"; }; type IgxDividerType = (typeof IgxDividerType)[keyof typeof IgxDividerType]; declare class IgxDividerDirective { /** * Sets/gets the `id` of the divider. * If not set, `id` will have value `"igx-divider-0"`; * ```html * * ``` * ```typescript * let dividerId = this.divider.id; * ``` */ id: string; /** * Sets the value of `role` attribute. * If not the default value of `separator` will be used. */ role: string; /** * Sets the type of the divider. The default value * is `default`. The divider can also be `dashed`; * ```html * * ``` */ type: IgxDividerType | string; get isDashed(): boolean; /** * If set to `true` and an `inset` value has been provided, * the divider will start shrinking from both ends. * ```html * * ``` */ middle: boolean; /** * Sets the divider in vertical orientation. * ```html * * ``` */ vertical: boolean; /** * Sets the inset of the divider from the side(s). * If the divider attribute `middle` is set to `true`, * it will inset the divider on both sides. * ```typescript * this.divider.inset = '32px'; * ``` */ set inset(value: string); /** * Gets the current divider inset in terms of * inset-inline-start representation as applied to the divider. * ```typescript * const inset = this.divider.inset; * ``` */ get inset(): string; /** * Sets the value of the `inset` attribute. * If not provided it will be set to `'0'`. * ```html * * ``` */ private _inset; /** * A getter that returns `true` if the type of the divider is `default`; * ```typescript * const isDefault = this.divider.isDefault; * ``` */ get isSolid(): boolean; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; static ngAcceptInputType_middle: unknown; static ngAcceptInputType_vertical: unknown; } interface IDropStrategy { dropAction: (drag: IgxDragDirective, drop: IgxDropDirective, atIndex: number) => void; } declare class IgxDefaultDropStrategy implements IDropStrategy { dropAction(_drag: IgxDragDirective, _drop: IgxDropDirective, _atIndex: number): void; } declare class IgxAppendDropStrategy implements IDropStrategy { private _renderer; constructor(_renderer: Renderer2); dropAction(drag: IgxDragDirective, drop: IgxDropDirective, _atIndex: number): void; } declare class IgxPrependDropStrategy implements IDropStrategy { private _renderer; constructor(_renderer: Renderer2); dropAction(drag: IgxDragDirective, drop: IgxDropDirective, _atIndex: number): void; } declare class IgxInsertDropStrategy implements IDropStrategy { private _renderer; constructor(_renderer: Renderer2); dropAction(drag: IgxDragDirective, drop: IgxDropDirective, atIndex: number): void; } declare enum DragScrollDirection { UP = 0, DOWN = 1, LEFT = 2, RIGHT = 3 } declare enum DragDirection { VERTICAL = 0, HORIZONTAL = 1, BOTH = 2 } interface IgxDragCustomEventDetails { startX: number; startY: number; pageX: number; pageY: number; owner: IgxDragDirective; originalEvent: any; } interface IDropBaseEventArgs extends IBaseEventArgs { /** * Reference to the original event that caused the draggable element to enter the igxDrop element. * Can be PointerEvent, TouchEvent or MouseEvent. */ originalEvent: any; /** The owner igxDrop directive that triggered this event. */ owner: IgxDropDirective; /** The igxDrag directive instanced on an element that entered the area of the igxDrop element */ drag: IgxDragDirective; /** The data contained for the draggable element in igxDrag directive. */ dragData: any; /** The initial position of the pointer on X axis when the dragged element began moving */ startX: number; /** The initial position of the pointer on Y axis when the dragged element began moving */ startY: number; /** * The current position of the pointer on X axis when the event was triggered. * Note: The browser might trigger the event with some delay and pointer would be already inside the igxDrop. */ pageX: number; /** * The current position of the pointer on Y axis when the event was triggered. * Note: The browser might trigger the event with some delay and pointer would be already inside the igxDrop. */ pageY: number; /** * The current position of the pointer on X axis relative to the container that initializes the igxDrop. * Note: The browser might trigger the event with some delay and pointer would be already inside the igxDrop. */ offsetX: number; /** * The current position of the pointer on Y axis relative to the container that initializes the igxDrop. * Note: The browser might trigger the event with some delay and pointer would be already inside the igxDrop. */ offsetY: number; } interface IDropDroppedEventArgs extends IDropBaseEventArgs { /** Specifies if the default drop logic related to the event should be canceled. */ cancel: boolean; } interface IDragBaseEventArgs extends IBaseEventArgs { /** * Reference to the original event that caused the interaction with the element. * Can be PointerEvent, TouchEvent or MouseEvent. */ originalEvent: PointerEvent | MouseEvent | TouchEvent; /** The owner igxDrag directive that triggered this event. */ owner: IgxDragDirective; /** The initial position of the pointer on X axis when the dragged element began moving */ startX: number; /** The initial position of the pointer on Y axis when the dragged element began moving */ startY: number; /** * The current position of the pointer on X axis when the event was triggered. * Note: The browser might trigger the event with some delay and pointer would be already inside the igxDrop. */ pageX: number; /** * The current position of the pointer on Y axis when the event was triggered. * Note: The browser might trigger the event with some delay and pointer would be already inside the igxDrop. */ pageY: number; } interface IDragStartEventArgs extends IDragBaseEventArgs { /** Set if the the dragging should be canceled. */ cancel: boolean; } interface IDragMoveEventArgs extends IDragStartEventArgs { /** The new pageX position of the pointer that the igxDrag will use. It can be overridden to limit dragged element X movement. */ nextPageX: number; /** The new pageX position of the pointer that the igxDrag will use. It can be overridden to limit dragged element Y movement. */ nextPageY: number; } interface IDragGhostBaseEventArgs extends IBaseEventArgs { /** The owner igxDrag directive that triggered this event. */ owner: IgxDragDirective; /** Instance to the ghost element that is created when dragging starts. */ ghostElement: any; /** Set if the ghost creation/destruction should be canceled. */ cancel: boolean; } interface IDragCustomTransitionArgs { duration?: number; timingFunction?: string; delay?: number; } declare class IgxDragLocation { private _pageX; private _pageY; pageX: number; pageY: number; constructor(_pageX: any, _pageY: any); } declare class IgxDragHandleDirective { element: ElementRef; baseClass: boolean; /** * @hidden */ parentDragElement: HTMLElement; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class IgxDragIgnoreDirective { element: ElementRef; baseClass: boolean; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class IgxDragDirective implements AfterContentInit, OnDestroy { /** * - Save data inside the `igxDrag` directive. This can be set when instancing `igxDrag` on an element. * ```html *
* ``` * * @memberof IgxDragDirective */ set data(value: any); get data(): any; /** * Sets the tolerance in pixels before drag starts. * By default the drag starts after the draggable element is moved by 5px. * ```html *
* Drag Me! *
* ``` * * @memberof IgxDragDirective */ dragTolerance: number; /** * Sets the directions that the element can be dragged. * By default it is set to both horizontal and vertical directions. * ```html *
* Drag Me! *
* ``` * ```typescript * public dragDir = DragDirection.HORIZONTAL; * ``` * * @memberof IgxDragDirective */ dragDirection: DragDirection; /** * A property that provides a way for igxDrag and igxDrop to be linked through channels. * It accepts single value or an array of values and evaluates then using strict equality. * ```html *
* 95 *
*
* Numbers drop area! *
* ``` * * @memberof IgxDragDirective */ dragChannel: number | string | number[] | string[]; /** * Sets whether the base element should be moved, or a ghost element should be rendered that represents it instead. * By default it is set to `true`. * If it is set to `false` when dragging the base element is moved instead and no ghost elements are rendered. * ```html *
* Drag Me! *
* ``` * * @memberof IgxDragDirective */ ghost: boolean; /** * Sets a custom class that will be added to the `ghostElement` element. * ```html *
* Drag Me! *
* ``` * * @memberof IgxDragDirective */ ghostClass: string; /** * Set styles that will be added to the `ghostElement` element. * ```html *
* Drag Me! *
* ``` * * @memberof IgxDragDirective */ ghostStyle: {}; /** * Specifies a template for the ghost element created when dragging starts and `ghost` is true. * By default a clone of the base element the igxDrag is instanced is created. * ```html *
* Drag Me! *
* *
* I am being dragged! *
*
* ``` * * @memberof IgxDragDirective */ ghostTemplate: TemplateRef; /** * Sets the element to which the dragged element will be appended. * By default it's set to null and the dragged element is appended to the body. * ```html *
*
* Drag Me! *
* ``` * * @memberof IgxDragDirective */ ghostHost: any; /** * Overrides the scroll container of the dragged element. By default its the window. */ scrollContainer: HTMLElement; /** * Event triggered when the draggable element drag starts. * ```html *
* Drag Me! *
* ``` * ```typescript * public onDragStart(){ * alert("The drag has stared!"); * } * ``` * * @memberof IgxDragDirective */ dragStart: EventEmitter; /** * Event triggered when the draggable element has been moved. * ```html *
* Drag Me! *
* ``` * ```typescript * public onDragMove(){ * alert("The element has moved!"); * } * ``` * * @memberof IgxDragDirective */ dragMove: EventEmitter; /** * Event triggered when the draggable element is released. * ```html *
* Drag Me! *
* ``` * ```typescript * public onDragEnd(){ * alert("The drag has ended!"); * } * ``` * * @memberof IgxDragDirective */ dragEnd: EventEmitter; /** * Event triggered when the draggable element is clicked. * ```html *
* Drag Me! *
* ``` * ```typescript * public onDragClick(){ * alert("The element has been clicked!"); * } * ``` * * @memberof IgxDragDirective */ dragClick: EventEmitter; /** * Event triggered when the drag ghost element is created. * ```html *
* Drag Me! *
* ``` * ```typescript * public ghostCreated(){ * alert("The ghost has been created!"); * } * ``` * * @memberof IgxDragDirective */ ghostCreate: EventEmitter; /** * Event triggered when the drag ghost element is created. * ```html *
* Drag Me! *
* ``` * ```typescript * public ghostDestroyed(){ * alert("The ghost has been destroyed!"); * } * ``` * * @memberof IgxDragDirective */ ghostDestroy: EventEmitter; /** * Event triggered after the draggable element is released and after its animation has finished. * ```html *
* Drag Me! *
* ``` * ```typescript * public onMoveEnd(){ * alert("The move has ended!"); * } * ``` * * @memberof IgxDragDirective */ transitioned: EventEmitter; /** * @hidden */ dragHandles: QueryList; /** * @hidden */ dragIgnoredElems: QueryList; /** * @hidden */ baseClass: boolean; /** * @hidden */ selectDisabled: boolean; /** * Gets the current location of the element relative to the page. */ get location(): IgxDragLocation; /** * Gets the original location of the element before dragging started. */ get originLocation(): IgxDragLocation; /** * @hidden */ get pointerEventsEnabled(): boolean; /** * @hidden */ get touchEventsEnabled(): boolean; /** * @hidden */ get pageX(): number; /** * @hidden */ get pageY(): number; protected get baseLeft(): number; protected get baseTop(): number; protected get baseOriginLeft(): number; protected get baseOriginTop(): number; protected set ghostLeft(pageX: number); protected get ghostLeft(): number; protected set ghostTop(pageY: number); protected get ghostTop(): number; protected get windowScrollTop(): number; protected get windowScrollLeft(): number; protected get windowScrollHeight(): number; protected get windowScrollWidth(): number; /** * @hidden */ defaultReturnDuration: string; /** * @hidden */ ghostElement: any; /** * @hidden */ animInProgress: boolean; protected ghostContext: any; protected _startX: number; protected _startY: number; protected _lastX: number; protected _lastY: number; protected _dragStarted: boolean; /** Drag ghost related properties */ protected _defaultOffsetX: any; protected _defaultOffsetY: any; protected _offsetX: any; protected _offsetY: any; protected _ghostStartX: any; protected _ghostStartY: any; protected _ghostHostX: number; protected _ghostHostY: number; protected _dynamicGhostRef: EmbeddedViewRef; protected _pointerDownId: any; protected _clicked: boolean; protected _lastDropArea: any; protected _destroy: Subject; protected _removeOnDestroy: boolean; protected _data: any; protected _scrollContainer: any; protected _originalScrollContainerWidth: number; protected _originalScrollContainerHeight: number; protected _scrollContainerStep: number; protected _scrollContainerStepMs: number; protected _scrollContainerThreshold: number; protected _containerScrollIntervalId: any; private document; /** * Sets the offset of the dragged element relative to the mouse in pixels. * By default it's taking the relative position to the mouse when the drag started and keeps it the same. * ```html *
*
* Drag Me! *
* ``` * * @memberof IgxDragDirective */ set ghostOffsetX(value: any); get ghostOffsetX(): any; /** * Sets the offset of the dragged element relative to the mouse in pixels. * By default it's taking the relative position to the mouse when the drag started and keeps it the same. * ```html *
*
* Drag Me! *
* ``` * * @memberof IgxDragDirective */ set ghostOffsetY(value: any); get ghostOffsetY(): any; cdr: ChangeDetectorRef; element: ElementRef; viewContainer: ViewContainerRef; zone: NgZone; renderer: Renderer2; protected platformUtil: PlatformUtil; constructor(); /** * @hidden */ ngAfterContentInit(): void; /** * @hidden */ ngOnDestroy(): void; /** * Sets desired location of the base element or ghost element if rended relative to the document. * * @param newLocation New location that should be applied. It is advised to get new location using getBoundingClientRects() + scroll. */ setLocation(newLocation: IgxDragLocation): void; /** * Animates the base or ghost element depending on the `ghost` input to its initial location. * If `ghost` is true but there is not ghost rendered, it will be created and animated. * If the base element has changed its DOM position its initial location will be changed accordingly. * * @param customAnimArgs Custom transition properties that will be applied when performing the transition. * @param startLocation Start location from where the transition should start. */ transitionToOrigin(customAnimArgs?: IDragCustomTransitionArgs, startLocation?: IgxDragLocation): void; /** * Animates the base or ghost element to a specific target location or other element using transition. * If `ghost` is true but there is not ghost rendered, it will be created and animated. * It is recommended to use 'getBoundingClientRects() + pageScroll' when determining desired location. * * @param target Target that the base or ghost will transition to. It can be either location in the page or another HTML element. * @param customAnimArgs Custom transition properties that will be applied when performing the transition. * @param startLocation Start location from where the transition should start. */ transitionTo(target: IgxDragLocation | ElementRef, customAnimArgs?: IDragCustomTransitionArgs, startLocation?: IgxDragLocation): void; /** * @hidden * Method bound to the PointerDown event of the base element igxDrag is initialized. * @param event PointerDown event captured */ onPointerDown(event: any): void; /** * @hidden * Perform drag move logic when dragging and dispatching events if there is igxDrop under the pointer. * This method is bound at first at the base element. * If dragging starts and after the ghostElement is rendered the pointerId is reassigned it. Then this method is bound to it. * @param event PointerMove event captured */ onPointerMove(event: any): void; /** * @hidden * Perform drag end logic when releasing the ghostElement and dispatching drop event if igxDrop is under the pointer. * This method is bound at first at the base element. * If dragging starts and after the ghostElement is rendered the pointerId is reassigned to it. Then this method is bound to it. * @param event PointerUp event captured */ onPointerUp(event: any): void; /** * @hidden * Execute this method whe the pointer capture has been lost. * This means that during dragging the user has performed other action like right clicking and then clicking somewhere else. * This method will ensure that the drag state is being reset in this case as if the user released the dragged element. * @param event Event captured */ onPointerLost(event: any): void; /** * @hidden */ onTransitionEnd(event: any): void; protected detachGhost(): void; protected clearGhost(): void; /** * @hidden * Create ghost element - if a Node object is provided it creates a clone of that node, * otherwise it clones the host element. * Bind all needed events. * @param pageX Latest pointer position on the X axis relative to the page. * @param pageY Latest pointer position on the Y axis relative to the page. * @param node The Node object to be cloned. */ protected createGhost(pageX: any, pageY: any, node?: any): void; /** * @hidden * Dispatch custom igxDragEnter/igxDragLeave events based on current pointer position and if drop area is under. */ protected dispatchDragEvents(pageX: number, pageY: number, originalEvent: any): void; /** * @hidden * Traverse shadow dom in depth. */ protected getFromShadowRoot(elem: any, pageX: any, pageY: any, parentDomElems: any): any[]; /** * @hidden * Dispatch custom igxDrop event based on current pointer position if there is last recorder drop area under the pointer. * Last recorder drop area is updated in @dispatchDragEvents method. */ protected dispatchDropEvent(pageX: number, pageY: number, originalEvent: any): void; /** * @hidden */ protected getElementsAtPoint(pageX: number, pageY: number): any; /** * @hidden */ protected dispatchEvent(target: any, eventName: string, eventArgs: IgxDragCustomEventDetails): void; protected getTransformX(elem: any): number; protected getTransformY(elem: any): number; /** Method setting transformation to the base draggable element. */ protected setTransformXY(x: number, y: number): void; /** * Since we are using absolute position to move the ghost, the ghost host might not have position: relative. * Combined with position static, this means that the absolute position in the browser is relative to the offsetParent. * The offsetParent is pretty much the closes parent that has position: relative, or if no such until it reaches the body. * That's why if this is the case, we need to know how much we should compensate for the ghostHost being offset from * its offsetParent. * * OffsetParent can be null in the case of position: fixed applied to the ghost host or display: none. In that case * just get the clientRects of the ghost host. */ protected getGhostHostBaseOffsetX(): any; protected getGhostHostBaseOffsetY(): any; protected getContainerScrollDirection(): DragScrollDirection; protected onScrollContainerStep(scrollDir: DragScrollDirection): void; protected onScrollContainer(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; static ngAcceptInputType_ghost: unknown; } declare class IgxDropDirective implements OnInit, OnDestroy { /** * - Save data inside the `igxDrop` directive. This can be set when instancing `igxDrop` on an element. * ```html *
* ``` * * @memberof IgxDropDirective */ set data(v: any); get data(): any; /** * A property that provides a way for igxDrag and igxDrop to be linked through channels. * It accepts single value or an array of values and evaluates then using strict equality. * ```html *
* 95 *
*
* Numbers drop area! *
* ``` * * @memberof IgxDropDirective */ dropChannel: number | string | number[] | string[]; /** * Sets a drop strategy type that will be executed when an `IgxDrag` element is released inside * the current drop area. The provided strategies are: * - IgxDefaultDropStrategy - This is the default base strategy and it doesn't perform any actions. * - IgxAppendDropStrategy - Appends the dropped element to last position as a direct child to the `igxDrop`. * - IgxPrependDropStrategy - Prepends the dropped element to first position as a direct child to the `igxDrop`. * - IgxInsertDropStrategy - If the dropped element is released above a child element of the `igxDrop`, it will be inserted * at that position. Otherwise the dropped element will be appended if released outside any child of the `igxDrop`. * ```html *
* DragMe *
*
* Numbers drop area! *
* ``` * ```typescript * import { IgxAppendDropStrategy } from 'igniteui-angular'; * * export class App { * public myDropStrategy = IgxAppendDropStrategy; * } * ``` * * @memberof IgxDropDirective */ set dropStrategy(classRef: any); get dropStrategy(): any; /** * Event triggered when dragged element enters the area of the element. * ```html *
*
* ``` * ```typescript * public dragEnter(){ * alert("A draggable element has entered the chip area!"); * } * ``` * * @memberof IgxDropDirective */ enter: EventEmitter; /** * Event triggered when dragged element enters the area of the element. * ```html *
*
* ``` * ```typescript * public dragEnter(){ * alert("A draggable element has entered the chip area!"); * } * ``` * * @memberof IgxDropDirective */ over: EventEmitter; /** * Event triggered when dragged element leaves the area of the element. * ```html *
*
* ``` * ```typescript * public dragLeave(){ * alert("A draggable element has left the chip area!"); * } * ``` * * @memberof IgxDropDirective */ leave: EventEmitter; /** * Event triggered when dragged element is dropped in the area of the element. * Since the `igxDrop` has default logic that appends the dropped element as a child, it can be canceled here. * To cancel the default logic the `cancel` property of the event needs to be set to true. * ```html *
*
* ``` * ```typescript * public dragDrop(){ * alert("A draggable element has been dropped in the chip area!"); * } * ``` * * @memberof IgxDropDirective */ dropped: EventEmitter; /** * @hidden */ droppable: boolean; /** * @hidden */ dragover: boolean; /** * @hidden */ protected _destroy: Subject; protected _dropStrategy: IDropStrategy; private _data; element: ElementRef; protected _renderer: Renderer2; private _zone; constructor(); /** * @hidden */ onDragDrop(event: any): void; /** * @hidden */ ngOnInit(): void; /** * @hidden */ ngOnDestroy(): void; /** * @hidden */ onDragOver(event: any): void; /** * @hidden */ onDragEnter(event: CustomEvent): void; /** * @hidden */ onDragLeave(event: any): void; protected getWindowScrollTop(): number; protected getWindowScrollLeft(): number; protected isDragLinked(drag: IgxDragDirective): boolean; protected getInsertIndexAt(draggedDir: IgxDragDirective, elementsAtPoint: any[]): number; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare const IGX_DRAG_DROP_DIRECTIVES: readonly [typeof IgxDragDirective, typeof IgxDropDirective, typeof IgxDragHandleDirective, typeof IgxDragIgnoreDirective]; declare class IgxFilterOptions { inputValue: string; key: string | string[]; items: any[]; get_value(item: any, key: string): string; formatter(valueToTest: string): string; matchFn(valueToTest: string, inputValue: string): boolean; metConditionFn(item: any): void; overdueConditionFn(item: any): void; } declare class IgxFilterDirective implements OnChanges { filtering: EventEmitter; filtered: EventEmitter; filterOptions: IgxFilterOptions; constructor(); ngOnChanges(changes: SimpleChanges): void; private filter; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class IgxFilterPipe implements PipeTransform { private findMatchByKey; transform(items: any[], options: IgxFilterOptions): any[]; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵpipe: i0.ɵɵPipeDeclaration; } declare class IgxFocusDirective { private element; private comp; private control; private focusState; /** * Returns the state of the igxFocus. * ```typescript * @ViewChild('focusContainer', {read: IgxFocusDirective}) * public igxFocus: IgxFocusDirective; * let isFocusOn = this.igxFocus.focused; * ``` * * @memberof IgxFocusDirective */ get focused(): boolean; /** * Sets the state of the igxFocus. * ```html * * * * ``` * * @memberof IgxFocusDirective */ set focused(val: boolean); /** * Gets the native element of the igxFocus. * ```typescript * @ViewChild('focusContainer', {read: IgxFocusDirective}) * public igxFocus: IgxFocusDirective; * let igxFocusNativeElement = this.igxFocus.nativeElement; * ``` * * @memberof IgxFocusDirective */ get nativeElement(): any; /** * Triggers the igxFocus state. * ```typescript * @ViewChild('focusContainer', {read: IgxFocusDirective}) * public igxFocus: IgxFocusDirective; * this.igxFocus.trigger(); * ``` * * @memberof IgxFocusDirective */ trigger(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; static ngAcceptInputType_focused: unknown; } declare class IgxFocusTrapDirective implements AfterViewInit, OnDestroy { private elementRef; protected platformUtil: PlatformUtil; /** @hidden */ get element(): HTMLElement | null; private destroy$; private _focusTrap; /** * Sets whether the Tab key focus is trapped within the element. * * @example * ```html *
* ``` */ set focusTrap(focusTrap: boolean); /** @hidden */ get focusTrap(): boolean; /** @hidden */ ngAfterViewInit(): void; /** @hidden */ ngOnDestroy(): void; private handleTab; private getFocusableElements; private getFocusedElement; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; static ngAcceptInputType_focusTrap: unknown; } /** * @hidden */ declare class IgxScrollInertiaDirective implements OnInit, OnDestroy { private element; private _zone; IgxScrollInertiaDirection: string; IgxScrollInertiaScrollContainer: any; wheelStep: number; inertiaStep: number; smoothingStep: number; smoothingDuration: number; swipeToleranceX: number; inertiaDeltaY: number; inertiaDeltaX: number; inertiaDuration: number; private _touchInertiaAnimID; private _startX; private _startY; private _touchStartX; private _touchStartY; private _lastTouchEnd; private _lastTouchX; private _lastTouchY; private _savedSpeedsX; private _savedSpeedsY; private _totalMovedX; private _offsetRecorded; private _offsetDirection; private _lastMovedX; private _lastMovedY; private _nextX; private _nextY; private parentElement; private baseDeltaMultiplier; private firefoxDeltaMultiplier; ngOnInit(): void; ngOnDestroy(): void; /** * @hidden * Function that is called when scrolling with the mouse wheel or using touchpad */ protected onWheel(evt: any): void; /** * @hidden * When there is still room to scroll up/down prevent the parent elements from scrolling too. */ protected preventParentScroll(evt: any, preventDefault: any, nextTop?: number): void; /** * @hidden * Checks if the wheel event would have scrolled an element under the display container * in DOM tree so that it can correctly be ignored until that element can no longer be scrolled. */ protected didChildScroll(evt: any, scrollDeltaX: any, scrollDeltaY: any): boolean; /** * @hidden * Function that is called the first moment we start interacting with the content on a touch device */ protected onTouchStart(event: any): boolean; /** * @hidden * Function that is called when we need to scroll the content based on touch interactions */ protected onTouchMove(event: any): void; protected onTouchEnd(event: any): void; protected _smoothWheelScroll(delta: any): void; protected _inertiaInit(speedX: any, speedY: any): void; private calcAxisCoords; private _scrollTo; private _scrollToX; private _scrollToY; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class DisplayContainerComponent { cdr: ChangeDetectorRef; _viewContainer: ViewContainerRef; _vcr: any; _scrollInertia: IgxScrollInertiaDirective; cssClass: string; notVirtual: boolean; scrollDirection: string; scrollContainer: any; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class VirtualHelperBaseDirective implements OnDestroy, AfterViewInit { elementRef: ElementRef; cdr: ChangeDetectorRef; protected _zone: NgZone; document: Document; protected platformUtil: PlatformUtil; scrollAmount: number; _size: number; destroyed: any; protected destroy$: Subject; private _afterViewInit; private _scrollNativeSize; private _detached; protected renderer: Renderer2; protected platformId: Object; protected ngZone: NgZone; constructor(); onScroll(event: any): void; ngAfterViewInit(): void; get nativeElement(): HTMLElement; ngOnDestroy(): void; calculateScrollNativeSize(): number; set size(value: number); get size(): number; get scrollNativeSize(): number; protected get isAttachedToDom(): boolean; private toggleClass; private updateScrollbarClass; protected handleMutations(event: any): void; protected restoreScroll(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class IgxForOfSyncService { private _master; /** * @hidden */ isMaster(directive: IgxGridForOfDirective): boolean; /** * @hidden */ setMaster(directive: IgxGridForOfDirective, forced?: boolean): void; /** * @hidden */ resetMaster(): void; /** * @hidden */ sizesCache(dir: string): number[]; /** * @hidden */ chunkSize(dir: string): number; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } declare class IgxForOfScrollSyncService { private _masterScroll; setScrollMaster(dir: string, scroll: VirtualHelperBaseDirective): void; getScrollMaster(dir: string): VirtualHelperBaseDirective; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } /** * @publicApi */ declare class IgxForOfContext { $implicit: T; igxForOf: U; index: number; count: number; constructor($implicit: T, igxForOf: U, index: number, count: number); /** * A function that returns whether the element is the first or not */ get first(): boolean; /** * A function that returns whether the element is the last or not */ get last(): boolean; /** * A function that returns whether the element is even or not */ get even(): boolean; /** * A function that returns whether the element is odd or not */ get odd(): boolean; } /** @hidden @internal */ declare abstract class IgxForOfToken { abstract igxForOf: U & T[] | null; abstract state: IForOfState; abstract totalItemCount: number; abstract scrollPosition: number; abstract chunkLoad: EventEmitter; abstract chunkPreload: EventEmitter; abstract scrollTo(index: number): void; abstract getScrollForIndex(index: number, bottom?: boolean): number; abstract getScroll(): HTMLElement | undefined; abstract igxForItemSize: any; abstract igxForContainerSize: any; /** @hidden */ abstract dc: ComponentRef; } declare class IgxForOfDirective extends IgxForOfToken implements OnInit, OnChanges, DoCheck, OnDestroy, AfterViewInit { private _viewContainer; protected _template: TemplateRef>>; protected _differs: IterableDiffers; cdr: ChangeDetectorRef; protected _zone: NgZone; protected syncScrollService: IgxForOfScrollSyncService; protected platformUtil: PlatformUtil; protected document: Document; /** * Sets the data to be rendered. * ```html * * ``` */ igxForOf: U & T[] | null; /** * Sets the property name from which to read the size in the data object. */ igxForSizePropName: any; /** * Specifies the scroll orientation. * Scroll orientation can be "vertical" or "horizontal". * ```html * * ``` */ igxForScrollOrientation: string; /** * Optionally pass the parent `igxFor` instance to create a virtual template scrolling both horizontally and vertically. * ```html * *
* *
{{rowIndex}} : {{item.text}}
*
*
*
* ``` */ igxForScrollContainer: any; /** * Sets the px-affixed size of the container along the axis of scrolling. * For "horizontal" orientation this value is the width of the container and for "vertical" is the height. * ```html * * * ``` */ igxForContainerSize: any; /** * @hidden * @internal * Initial chunk size if no container size is passed. If container size is passed then the igxForOf calculates its chunk size */ igxForInitialChunkSize: any; /** * Sets the px-affixed size of the item along the axis of scrolling. * For "horizontal" orientation this value is the width of the column and for "vertical" is the height or the row. * ```html * * ``` */ igxForItemSize: any; /** * An event that is emitted after a new chunk has been loaded. * ```html * * ``` * ```typescript * loadChunk(e){ * alert("chunk loaded!"); * } * ``` */ chunkLoad: EventEmitter; /** * @hidden @internal * An event that is emitted when scrollbar visibility has changed. */ scrollbarVisibilityChanged: EventEmitter; /** * An event that is emitted after the rendered content size of the igxForOf has been changed. */ contentSizeChange: EventEmitter; /** * An event that is emitted after data has been changed. * ```html * * ``` * ```typescript * dataChanged(e){ * alert("data changed!"); * } * ``` */ dataChanged: EventEmitter; beforeViewDestroyed: EventEmitter>; /** * An event that is emitted on chunk loading to emit the current state information - startIndex, endIndex, totalCount. * Can be used for implementing remote load on demand for the igxFor data. * ```html * * ``` * ```typescript * chunkPreload(e){ * alert("chunk is loading!"); * } * ``` */ chunkPreload: EventEmitter; /** * @hidden */ dc: ComponentRef; /** * The current state of the directive. It contains `startIndex` and `chunkSize`. * state.startIndex - The index of the item at which the current visible chunk begins. * state.chunkSize - The number of items the current visible chunk holds. * These options can be used when implementing remote virtualization as they provide the necessary state information. * ```typescript * const gridState = this.parentVirtDir.state; * ``` */ state: IForOfState; protected func: any; protected _sizesCache: number[]; protected scrollComponent: VirtualHelperBaseDirective; protected _differ: IterableDiffer | null; protected _trackByFn: TrackByFunction; protected individualSizeCache: number[]; /** Internal track for scroll top that is being virtualized */ protected _virtScrollPosition: number; /** If the next onScroll event is triggered due to internal setting of scrollTop */ protected _bScrollInternal: boolean; protected _embeddedViews: Array>; protected contentResizeNotify: Subject; protected contentObserver: ResizeObserver; /** Size that is being virtualized. */ protected _virtSize: number; /** * @hidden */ protected destroy$: Subject; private _totalItemCount; private _adjustToIndex; /** Maximum size for an element of the browser. */ private _maxSize; /** * Ratio for height that's being virtualizaed and the one visible * If _virtHeightRatio = 1, the visible height and the virtualized are the same, also _maxSize > _virtHeight. */ private _virtRatio; /** * The total count of the virtual data items, when using remote service. * Similar to the property totalItemCount, but this will allow setting the data count into the template. * ```html * * ``` */ get igxForTotalItemCount(): number; set igxForTotalItemCount(value: number); /** * The total count of the virtual data items, when using remote service. * ```typescript * this.parentVirtDir.totalItemCount = data.Count; * ``` */ get totalItemCount(): number; set totalItemCount(val: number); get displayContainer(): HTMLElement | undefined; get virtualHelper(): HTMLElement; /** * @hidden */ get isRemote(): boolean; /** * * Gets/Sets the scroll position. * ```typescript * const position = directive.scrollPosition; * directive.scrollPosition = value; * ``` */ get scrollPosition(): number; set scrollPosition(val: number); /** * @hidden */ protected get isRTL(): boolean; protected get sizesCache(): number[]; protected set sizesCache(value: number[]); private get _isScrolledToBottom(); private get _isAtBottomIndex(); verticalScrollHandler(event: any): void; isScrollable(): boolean; /** * @hidden */ ngOnInit(): void; ngAfterViewInit(): void; /** * @hidden */ ngOnDestroy(): void; /** * @hidden @internal * Asserts the correct type of the context for the template that `igxForOf` will render. * * The presence of this method is a signal to the Ivy template type-check compiler that the * `IgxForOf` structural directive renders its template with a specific context type. */ static ngTemplateContextGuard(dir: IgxForOfDirective, ctx: any): ctx is IgxForOfContext; /** * @hidden */ ngOnChanges(changes: SimpleChanges): void; /** * @hidden */ ngDoCheck(): void; /** * Shifts the scroll thumb position. * ```typescript * this.parentVirtDir.addScroll(5); * ``` * * @param addTop negative value to scroll up and positive to scroll down; */ addScrollTop(add: number): boolean; /** * Shifts the scroll thumb position. * ```typescript * this.parentVirtDir.addScroll(5); * ``` * * @param add negative value to scroll previous and positive to scroll next; */ addScroll(add: number): boolean; /** * Scrolls to the specified index. * ```typescript * this.parentVirtDir.scrollTo(5); * ``` * * @param index */ scrollTo(index: number): void; /** * Scrolls by one item into the appropriate next direction. * For "horizontal" orientation that will be the right column and for "vertical" that is the lower row. * ```typescript * this.parentVirtDir.scrollNext(); * ``` */ scrollNext(): void; /** * Scrolls by one item into the appropriate previous direction. * For "horizontal" orientation that will be the left column and for "vertical" that is the upper row. * ```typescript * this.parentVirtDir.scrollPrev(); * ``` */ scrollPrev(): void; /** * Scrolls by one page into the appropriate next direction. * For "horizontal" orientation that will be one view to the right and for "vertical" that is one view to the bottom. * ```typescript * this.parentVirtDir.scrollNextPage(); * ``` */ scrollNextPage(): void; /** * Scrolls by one page into the appropriate previous direction. * For "horizontal" orientation that will be one view to the left and for "vertical" that is one view to the top. * ```typescript * this.parentVirtDir.scrollPrevPage(); * ``` */ scrollPrevPage(): void; /** * @hidden */ getColumnScrollLeft(colIndex: any): number; /** * Returns the total number of items that are fully visible. * ```typescript * this.parentVirtDir.getItemCountInView(); * ``` */ getItemCountInView(): number; /** * Returns a reference to the scrollbar DOM element. * This is either a vertical or horizontal scrollbar depending on the specified igxForScrollOrientation. * ```typescript * dir.getScroll(); * ``` */ getScroll(): HTMLElement; /** * Returns the size of the element at the specified index. * ```typescript * this.parentVirtDir.getSizeAt(1); * ``` */ getSizeAt(index: number): number; /** * @hidden * Function that is called to get the native scrollbar size that the browsers renders. */ getScrollNativeSize(): number; /** * Returns the scroll offset of the element at the specified index. * ```typescript * this.parentVirtDir.getScrollForIndex(1); * ``` */ getScrollForIndex(index: number, bottom?: boolean): number; /** * Returns the index of the element at the specified offset. * ```typescript * this.parentVirtDir.getIndexAtScroll(100); * ``` */ getIndexAtScroll(scrollOffset: number): number; /** * Returns whether the target index is outside the view. * ```typescript * this.parentVirtDir.isIndexOutsideView(10); * ``` */ isIndexOutsideView(index: number): boolean; /** * @hidden * Function that recalculates and updates cache sizes. */ recalcUpdateSizes(): void; /** * @hidden * Reset scroll position. * Needed in case scrollbar is hidden/detached but we still need to reset it. */ resetScrollPosition(): void; /** * @hidden */ protected removeScrollEventListeners(): void; /** * @hidden * Function that is called when scrolling vertically */ protected onScroll(event: any): void; /** * @hidden * @internal */ updateScroll(): void; protected updateSizes(): void; /** * @hidden */ protected fixedUpdateAllElements(inScrollTop: number): number; /** * @hidden * The function applies an optimized state change for scrolling down/right employing context change with view rearrangement */ protected moveApplyScrollNext(prevIndex: number): void; /** * @hidden * The function applies an optimized state change for scrolling up/left employing context change with view rearrangement */ protected moveApplyScrollPrev(prevIndex: number): void; /** * @hidden */ protected getContextIndex(input: any): number; /** * @hidden * Function which updates the passed context of an embedded view with the provided index * from the view container. * Often, called while handling a scroll event. */ protected updateTemplateContext(context: any, index?: number): void; /** * @hidden * The function applies an optimized state change through context change for each view */ protected fixedApplyScroll(): void; /** * @hidden * @internal * * Clears focus inside the virtualized container on small scroll swaps. */ protected scrollFocus(node?: HTMLElement): void; /** * @hidden * Function that is called when scrolling horizontally */ protected onHScroll(event: any): void; /** * Gets the function used to track changes in the items collection. * By default the object references are compared. However this can be optimized if you have unique identifier * value that can be used for the comparison instead of the object ref or if you have some other property values * in the item object that should be tracked for changes. * This option is similar to ngForTrackBy. * ```typescript * const trackFunc = this.parentVirtDir.igxForTrackBy; * ``` */ get igxForTrackBy(): TrackByFunction; /** * Sets the function used to track changes in the items collection. * This function can be set in scenarios where you want to optimize or * customize the tracking of changes for the items in the collection. * The igxForTrackBy function takes the index and the current item as arguments and needs to return the unique identifier for this item. * ```typescript * this.parentVirtDir.igxForTrackBy = (index, item) => { * return item.id + item.width; * }; * ``` */ set igxForTrackBy(fn: TrackByFunction); /** * @hidden */ protected _applyChanges(): void; /** * @hidden */ protected _calcMaxBrowserSize(): number; /** * @hidden * Recalculates the chunkSize based on current startIndex and returns the new size. * This should be called after this.state.startIndex is updated, not before. */ protected _calculateChunkSize(): number; /** * @hidden */ protected getElement(viewref: any, nodeName: any): any; /** * @hidden */ protected initSizesCache(items: U): number; protected _updateSizeCache(): void; /** * @hidden */ protected _calcMaxChunkSize(): number; /** * @hidden */ protected getIndexAt(left: any, set: any): number; protected _recalcScrollBarSize(containerSizeInfo?: any): void; protected _calcSize(): number; protected _recalcOnContainerChange(containerSizeInfo?: any): void; /** * @hidden * Removes an element from the embedded views and updates chunkSize. */ protected removeLastElem(): void; /** * @hidden * If there exists an element that we can create embedded view for creates it, appends it and updates chunkSize */ protected addLastElem(): void; /** * Recalculates chunkSize and adds/removes elements if need due to the change. * this.state.chunkSize is updated in @addLastElem() or @removeLastElem() */ protected applyChunkSizeChange(): void; protected _calcVirtualScrollPosition(scrollPosition: number): void; protected _getItemSize(item: any, dimension: string): number; protected _updateScrollOffset(): void; protected _adjustScrollPositionAfterSizeChange(sizeDiff: any): void; private getMargin; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵdir: i0.ɵɵDirectiveDeclaration, "[igxFor][igxForOf]", never, { "igxForOf": { "alias": "igxForOf"; "required": false; }; "igxForSizePropName": { "alias": "igxForSizePropName"; "required": false; }; "igxForScrollOrientation": { "alias": "igxForScrollOrientation"; "required": false; }; "igxForScrollContainer": { "alias": "igxForScrollContainer"; "required": false; }; "igxForContainerSize": { "alias": "igxForContainerSize"; "required": false; }; "igxForInitialChunkSize": { "alias": "igxForInitialChunkSize"; "required": false; }; "igxForItemSize": { "alias": "igxForItemSize"; "required": false; }; "igxForTotalItemCount": { "alias": "igxForTotalItemCount"; "required": false; }; "igxForTrackBy": { "alias": "igxForTrackBy"; "required": false; }; }, { "chunkLoad": "chunkLoad"; "scrollbarVisibilityChanged": "scrollbarVisibilityChanged"; "contentSizeChange": "contentSizeChange"; "dataChanged": "dataChanged"; "beforeViewDestroyed": "beforeViewDestroyed"; "chunkPreload": "chunkPreload"; }, never, never, true, never>; } interface IForOfState extends IBaseEventArgs { startIndex?: number; chunkSize?: number; } /** * @deprecated in 19.2.7. Use `IForOfDataChangeEventArgs` instead. */ interface IForOfDataChangingEventArgs extends IBaseEventArgs { containerSize: number; state: IForOfState; } interface IForOfDataChangeEventArgs extends IForOfDataChangingEventArgs { } declare class IgxGridForOfContext extends IgxForOfContext { igxGridForOf: U; constructor($implicit: T, igxGridForOf: U, index: number, count: number); } declare class IgxGridForOfDirective extends IgxForOfDirective implements OnInit, OnChanges, DoCheck { protected syncService: IgxForOfSyncService; set igxGridForOf(value: U & T[] | null); get igxGridForOf(): (U & T[]) | null; igxGridForOfUniqueSizeCache: boolean; igxGridForOfVariableSizes: boolean; /** * @hidden * @internal */ get sizesCache(): number[]; /** * @hidden * @internal */ set sizesCache(value: number[]); protected get itemsDimension(): any; recalcUpdateSizes(): void; /** * @hidden @internal * An event that is emitted after data has been changed but before the view is refreshed */ dataChanging: EventEmitter; /** * @hidden @internal * Asserts the correct type of the context for the template that `IgxGridForOfDirective` will render. * * The presence of this method is a signal to the Ivy template type-check compiler that the * `IgxGridForOfDirective` structural directive renders its template with a specific context type. */ static ngTemplateContextGuard(dir: IgxGridForOfDirective, ctx: any): ctx is IgxGridForOfContext; ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; /** * @hidden * @internal */ assumeMaster(): void; ngDoCheck(): void; onScroll(event: any): void; onHScroll(scrollAmount: any): void; protected getItemSize(item: any): number; protected initSizesCache(items: U): number; protected _updateSizeCache(changes?: IterableChanges): number; protected handleCacheChanges(changes: IterableChanges): number; protected addLastElem(): void; protected _updateViews(prevChunkSize: any): void; protected _applyChanges(): void; /** * @hidden */ protected _calcMaxChunkSize(): number; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵdir: i0.ɵɵDirectiveDeclaration, "[igxGridFor][igxGridForOf]", never, { "igxGridForOf": { "alias": "igxGridForOf"; "required": false; }; "igxGridForOfUniqueSizeCache": { "alias": "igxGridForOfUniqueSizeCache"; "required": false; }; "igxGridForOfVariableSizes": { "alias": "igxGridForOfVariableSizes"; "required": false; }; }, { "dataChanging": "dataChanging"; }, never, never, true, never>; static ngAcceptInputType_igxGridForOfUniqueSizeCache: unknown; static ngAcceptInputType_igxGridForOfVariableSizes: unknown; } /** * Determines the Icon Button type. */ type IgxIconButtonType = typeof IgxBaseButtonType[keyof typeof IgxBaseButtonType]; /** * The IgxIconButtonDirective provides a way to use an icon as a fully functional button. * * @example * ```html * * ``` */ declare class IgxIconButtonDirective extends IgxButtonBaseDirective { private static ngAcceptInputType_type; constructor(); /** * @hidden * @internal */ protected _cssClass: string; /** * @hidden * @internal */ private _type; /** * Sets the type of the icon button. * * @example * ```html * * ``` */ set type(type: IgxIconButtonType); /** * @hidden * @internal */ get flat(): boolean; /** * @hidden * @internal */ get contained(): boolean; /** * @hidden * @internal */ get outlined(): boolean; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class IgxLayoutDirective { /** * Sets the default flow direction of the container's children. * * Defaults to `rows`. * * ```html *
*
1
*
2
*
3
*
* ``` */ dir: string; /** * Defines the direction flex children are placed in the flex container. * * When set to `true`, the `rows` direction goes right to left and `columns` goes bottom to top. * * ```html *
*
1
*
2
*
3
*
* ``` */ reverse: boolean; /** * By default the immediate children will all try to fit onto one line. * * The default value `nowrap` sets this behavior. * * Other accepted values are `wrap` and `wrap-reverse`. * * ```html *
*
1
*
2
*
3
*
* ``` */ wrap: string; /** * Defines the alignment along the main axis. * * Defaults to `flex-start` which packs the children toward the start line. * * Other possible values are `flex-end`, `center`, `space-between`, `space-around`. * * ```html *
*
1
*
2
*
3
*
* ``` */ justify: string; /** * Defines the default behavior for how children are laid out along the corss axis of the current line. * * Defaults to `flex-start`. * * Other possible values are `flex-end`, `center`, `baseline`, and `stretch`. * * ```html *
*
1
*
2
*
3
*
* ``` */ itemAlign: string; /** * @hidden */ display: string; /** * @hidden */ get flexwrap(): string; /** * @hidden */ get justifycontent(): string; /** * @hidden */ get align(): string; /** * @hidden */ get direction(): "row" | "row-reverse" | "column-reverse" | "column"; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; static ngAcceptInputType_reverse: unknown; } declare class IgxFlexDirective { /** * Applies the `grow` attribute to an element that uses the directive. * * Default value is `1`. * * ```html *
*
Content1
*
Content2
*
Content3
*
* ``` */ grow: number; /** * Applies the `shrink` attribute to an element that uses the directive. * * Default value is `1`. * * ```html *
*
Content1
*
Content2
*
Content3
*
* ``` */ shrink: number; /** * Applies the directive to an element. * * Possible values include `igxFlexGrow`, `igxFlexShrink`, `igxFlexOrder`, `igxFlexBasis`. * * ```html *
Content
* ``` */ flex: string; /** * Applies the `order` attribute to an element that uses the directive. * * Default value is `0`. * * ```html *
*
Content1
*
Content2
*
Content3
*
* ``` */ order: number; /** * Applies the `flex-basis` attribute to an element that uses the directive. * * Default value is `auto`. * * Other possible values include `content`, `max-content`, `min-content`, `fit-content`. * * ```html *
Content
* ``` */ basis: string; /** * @hidden */ get style(): string; /** * @hidden */ get itemorder(): number; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** @hidden */ interface MaskOptions { format: string; promptChar: string; } /** @hidden */ interface Replaced { value: string; end: number; } /** @hidden */ declare class MaskParsingService { applyMask(inputVal: string, maskOptions: MaskOptions, pos?: number): string; parseValueFromMask(maskedValue: string, maskOptions: MaskOptions): string; replaceInMask(maskedValue: string, value: string, maskOptions: MaskOptions, start: number, end: number): Replaced; /** Validates only non literal positions. */ private validateCharOnPosition; private getNonLiteralIndices; private getNonLiteralValues; private replaceIMENumbers; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } declare class IgxMaskDirective implements OnInit, AfterViewChecked, ControlValueAccessor { protected elementRef: ElementRef; protected maskParser: MaskParsingService; protected renderer: Renderer2; protected platform: PlatformUtil; /** * Sets the input mask. * ```html * * ``` */ get mask(): string; set mask(val: string); /** * Sets the character representing a fillable spot in the input mask. * Default value is "'_'". * ```html * * ``` */ promptChar: string; /** * Specifies if the bound value includes the formatting symbols. * ```html * * ``` */ includeLiterals: boolean; /** * Specifies a pipe to be used on blur. * ```html * * ``` */ displayValuePipe: PipeTransform; /** * Specifies a pipe to be used on focus. * ```html * * ``` */ focusedValuePipe: PipeTransform; /** * Emits an event each time the value changes. * Provides `rawValue: string` and `formattedValue: string` as event arguments. * ```html * * ``` */ valueChanged: EventEmitter; /** @hidden */ get nativeElement(): HTMLInputElement; /** @hidden @internal; */ protected get inputValue(): string; /** @hidden @internal */ protected set inputValue(val: string); /** @hidden */ protected get maskOptions(): MaskOptions; /** @hidden */ protected get selectionStart(): number; /** @hidden */ protected get selectionEnd(): number; /** @hidden */ protected get start(): number; /** @hidden */ protected get end(): number; protected _composing: boolean; protected _compositionStartIndex: number; protected _focused: boolean; private _compositionValue; private _end; private _start; private _key; private _mask; private _oldText; private _dataValue; private _droppedData; private _hasDropAction; private readonly defaultMask; protected _onTouchedCallback: () => void; protected _onChangeCallback: (_: any) => void; /** @hidden */ onKeyDown(event: KeyboardEvent): void; /** @hidden @internal */ onCompositionStart(): void; /** @hidden @internal */ onCompositionEnd(): void; /** @hidden @internal */ onInputChanged(event: any): void; /** @hidden */ onPaste(): void; /** @hidden */ onFocus(): void; /** @hidden */ onBlur(event: FocusEvent): void; /** @hidden */ onDragEnter(): void; /** @hidden */ onDragLeave(): void; /** @hidden */ onDrop(event: DragEvent): void; /** @hidden */ ngOnInit(): void; /** * TODO: Remove after date/time picker integration refactor * * @hidden */ ngAfterViewChecked(): void; /** @hidden */ writeValue(value: string): void; /** @hidden */ registerOnChange(fn: (_: any) => void): void; /** @hidden */ registerOnTouched(fn: () => void): void; /** @hidden */ protected showMask(value: string): void; /** @hidden */ protected setSelectionRange(start: number, end?: number): void; /** @hidden */ protected afterInput(): void; /** @hidden */ protected setPlaceholder(value: string): void; private updateInputValue; private updateInput; private showDisplayValue; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; static ngAcceptInputType_includeLiterals: unknown; } /** * The IgxMaskModule provides the {@link IgxMaskDirective} inside your application. */ interface IMaskEventArgs extends IBaseEventArgs { rawValue: string; formattedValue: string; } declare class IgxRippleDirective { protected builder: AnimationBuilder; protected elementRef: ElementRef; protected renderer: Renderer2; private zone; /** * Sets/gets the ripple target. * ```html *
* ``` * ```typescript * @ViewChild('rippleContainer', {read: IgxRippleDirective}) * public ripple: IgxRippleDirective; * let rippleTarget = this.ripple.rippleTarget; * ``` * Can set the ripple to activate on a child element inside the parent where igxRipple is defined. * ```html *
* *
* ``` * * @memberof IgxRippleDirective */ rippleTarget: string; /** * Sets/gets the ripple color. * ```html * * ``` * ```typescript * @ViewChild('rippleContainer', {read: IgxRippleDirective}) * public ripple: IgxRippleDirective; * let rippleColor = this.ripple.rippleColor; * ``` * * @memberof IgxRippleDirective */ rippleColor: string; /** * Sets/gets the ripple duration(in milliseconds). * Default value is `600`. * ```html * * ``` * ```typescript * @ViewChild('rippleContainer', {read: IgxRippleDirective}) * public ripple: IgxRippleDirective; * let rippleDuration = this.ripple.rippleDuration; * ``` * * @memberof IgxRippleDirective */ rippleDuration: number; /** * Enables/disables the ripple to be centered. * ```html * * ``` * * @memberof IgxRippleDirective */ set centered(value: boolean); /** * Sets/gets whether the ripple is disabled. * Default value is `false`. * ```html * * ``` * ```typescript * @ViewChild('rippleContainer', {read: IgxRippleDirective}) * public ripple: IgxRippleDirective; * let isRippleDisabled = this.ripple.rippleDisabled; * ``` * * @memberof IgxRippleDirective */ rippleDisabled: boolean; protected get nativeElement(): HTMLElement; private rippleElementClass; private rippleHostClass; private _centered; private animationQueue; /** * @hidden */ onMouseDown(event: any): void; private setStyles; private _ripple; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; static ngAcceptInputType_centered: unknown; static ngAcceptInputType_rippleDisabled: unknown; } declare class IgSizeDirective { private _size; get igSize(): string; set igSize(value: 'small' | 'medium' | 'large'); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } interface IBaseSearchInfo { searchText: string; caseSensitive: boolean; exactMatch: boolean; matchCount: number; content: string; } /** * An interface describing information for the active highlight. */ interface IActiveHighlightInfo { /** * The row of the highlight. */ row?: any; /** * The column of the highlight. */ column?: any; /** * The index of the highlight. */ index: number; /** * Additional, custom checks to perform prior an element highlighting. */ metadata?: Map; } declare class IgxTextHighlightDirective implements AfterViewInit, AfterViewChecked, OnDestroy, OnChanges { private element; private service; private renderer; /** * Determines the `CSS` class of the highlight elements. * This allows the developer to provide custom `CSS` to customize the highlight. * * ```html *
*
* ``` */ cssClass: string; /** * Determines the `CSS` class of the active highlight element. * This allows the developer to provide custom `CSS` to customize the highlight. * * ```html *
*
* ``` */ activeCssClass: string; /** * @hidden */ containerClass: string; /** * Identifies the highlight within a unique group. * This allows it to have several different highlight groups, * with each of them having their own active highlight. * * ```html *
*
* ``` */ groupName: string; /** * The underlying value of the element that will be highlighted. * * ```typescript * // get * const elementValue = this.textHighlight.value; * ``` * * ```html * *
*
* ``` */ get value(): any; set value(value: any); /** * The identifier of the row on which the directive is currently on. * * ```html *
*
* ``` */ row: any; /** * The identifier of the column on which the directive is currently on. * * ```html *
*
* ``` */ column: any; /** * A map that contains all additional conditions, that you need to activate a highlighted * element. To activate the condition, you will have to add a new metadata key to * the `metadata` property of the IActiveHighlightInfo interface. * * @example * ```typescript * // Set a property, which would disable the highlight for a given element on a certain condition * const metadata = new Map(); * metadata.set('highlightElement', false); * ``` * ```html *
*
* ``` */ metadata: Map; /** * @hidden */ get lastSearchInfo(): IBaseSearchInfo; /** * @hidden */ parentElement: any; private _container; private destroy$; private _value; private _lastSearchInfo; private _div; private _observer; private _nodeWasRemoved; private _forceEvaluation; private _activeElementIndex; private _valueChanged; private _defaultCssClass; private _defaultActiveCssClass; constructor(); /** * @hidden */ ngOnDestroy(): void; /** * @hidden */ ngOnChanges(changes: SimpleChanges): void; /** * @hidden */ ngAfterViewInit(): void; /** * @hidden */ ngAfterViewChecked(): void; /** * Clears the existing highlight and highlights the searched text. * Returns how many times the element contains the searched text. */ highlight(text: string, caseSensitive?: boolean, exactMatch?: boolean): number; /** * Clears any existing highlight. */ clearHighlight(): void; /** * Activates the highlight if it is on the currently active row and column. */ activateIfNecessary(): void; /** * Attaches a MutationObserver to the parentElement and watches for when the container element is removed/readded to the DOM. * Should be used only when necessary as using many observers may lead to performance degradation. */ observe(): void; private activate; private deactivate; private clearChildElements; private getHighlightedText; private appendText; private appendSpan; private appendDiv; private searchNeedsEvaluation; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class IgxTextSelectionDirective { private element; /** * Determines whether the input element could be selected through the directive. * * ```html * * * * * * * ``` */ selected: boolean; /** * Returns the nativeElement of the element where the directive was applied. * * ```html * * * ``` * * ```typescript * @ViewChild('firstName', * {read: IgxTextSelectionDirective}) * public inputElement: IgxTextSelectionDirective; * * public getNativeElement() { * return this.inputElement.nativeElement; * } * ``` */ get nativeElement(): any; /** * @hidden */ onFocus(): void; /** * Triggers the selection of the element if it is marked as selectable. * * ```html * * * ``` * * ```typescript * @ViewChild('firstName', * {read: IgxTextSelectionDirective}) * public inputElement: IgxTextSelectionDirective; * * public triggerElementSelection() { * this.inputElement.trigger(); * } * ``` */ trigger(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; static ngAcceptInputType_selected: unknown; } /** * @hidden */ declare class IgxTemplateOutletDirective implements OnChanges { _viewContainerRef: ViewContainerRef; private _zone; cdr: ChangeDetectorRef; igxTemplateOutletContext: any; igxTemplateOutlet: TemplateRef; viewCreated: EventEmitter; viewMoved: EventEmitter; cachedViewLoaded: EventEmitter; beforeViewDetach: EventEmitter; private _viewRef; /** * The embedded views cache. Collection is key-value paired. * Key is the template type, value is another key-value paired collection * where the key is the template id and value is the embedded view for the related template. */ private _embeddedViewsMap; ngOnChanges(changes: SimpleChanges): void; cleanCache(): void; cleanView(tmplID: any): void; private _recreateView; private _moveView; private _useCachedView; private _shouldRecreateView; private _hasContextShapeChanged; private _updateExistingContext; private _cloneContext; private _getActionType; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } interface IViewChangeEventArgs extends IBaseEventArgs { owner: IgxTemplateOutletDirective; view: EmbeddedViewRef; context: any; } interface ICachedViewLoadedEventArgs extends IViewChangeEventArgs { oldContext: any; } interface ToggleViewEventArgs extends IBaseEventArgs { /** Id of the toggle view */ id: string; /** Provides reference to the owner component (from IBaseEventArgs) */ owner?: any; event?: Event; } interface ToggleViewCancelableEventArgs extends ToggleViewEventArgs, CancelableBrowserEventArgs { cancel: boolean; } declare class IgxToggleDirective implements IToggleView, OnInit, OnDestroy { private elementRef; private cdr; protected overlayService: IgxOverlayService; private navigationService; private platform; /** * Emits an event after the toggle container is opened. * * ```typescript * onToggleOpened(event) { * alert("Toggle opened!"); * } * ``` * * ```html *
*
* ``` */ opened: EventEmitter; /** * Emits an event before the toggle container is opened. * * ```typescript * onToggleOpening(event) { * alert("Toggle opening!"); * } * ``` * * ```html *
*
* ``` */ opening: EventEmitter; /** * Emits an event after the toggle container is closed. * * ```typescript * onToggleClosed(event) { * alert("Toggle closed!"); * } * ``` * * ```html *
*
* ``` */ closed: EventEmitter; /** * Emits an event before the toggle container is closed. * * ```typescript * onToggleClosing(event) { * alert("Toggle closing!"); * } * ``` * * ```html *
*
* ``` */ closing: EventEmitter; /** * Emits an event after the toggle element is appended to the overlay container. * * ```typescript * onAppended() { * alert("Content appended!"); * } * ``` * * ```html *
*
* ``` */ appended: EventEmitter; /** * @hidden */ get collapsed(): boolean; /** * Identifier which is registered into `IgxNavigationService` * * ```typescript * let myToggleId = this.toggle.id; * ``` */ id: string; /** * @hidden */ get element(): HTMLElement; /** * @hidden */ get hiddenClass(): boolean; /** * @hidden */ get hiddenWebkitClass(): boolean; /** * @hidden */ get defaultClass(): boolean; protected _overlayId: string; private _collapsed; protected destroy$: Subject; private _overlaySubFilter; private _overlayOpenedSub; private _overlayClosingSub; private _overlayClosedSub; private _overlayContentAppendedSub; /** * Opens the toggle. * * ```typescript * this.myToggle.open(); * ``` */ open(overlaySettings?: OverlaySettings): void; /** * Closes the toggle. * * ```typescript * this.myToggle.close(); * ``` */ close(event?: Event): void; /** * Opens or closes the toggle, depending on its current state. * * ```typescript * this.myToggle.toggle(); * ``` */ toggle(overlaySettings?: OverlaySettings): void; /** @hidden @internal */ get isClosing(): boolean; /** * Returns the id of the overlay the content is rendered in. * ```typescript * this.myToggle.overlayId; * ``` */ get overlayId(): string; /** * Repositions the toggle. * ```typescript * this.myToggle.reposition(); * ``` */ reposition(): void; /** * Offsets the content along the corresponding axis by the provided amount with optional * offsetMode that determines whether to add (by default) or set the offset values with OffsetMode.Add and OffsetMode.Set */ setOffset(deltaX: number, deltaY: number, offsetMode?: OffsetMode): void; /** * @hidden */ ngOnInit(): void; /** * @hidden */ ngOnDestroy(): void; private overlayClosed; private subscribe; private unsubscribe; private clearSubscription; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class IgxToggleActionDirective implements OnInit { protected element: ElementRef; protected navigationService: IgxNavigationService; /** * Provide settings that control the toggle overlay positioning, interaction and scroll behavior. * ```typescript * const settings: OverlaySettings = { * closeOnOutsideClick: false, * modal: false * } * ``` * --- * ```html * *
* ``` */ overlaySettings: OverlaySettings; /** * Determines where the toggle element overlay should be attached. * * ```html * *
* ``` * Where `outlet` in an instance of `IgxOverlayOutletDirective` or an `ElementRef` */ outlet: IgxOverlayOutletDirective | ElementRef; /** * @hidden */ set target(target: any); /** * @hidden */ get target(): any; protected _overlayDefaults: OverlaySettings; protected _target: IToggleView | string; /** * @hidden */ onClick(): void; /** * @hidden */ ngOnInit(): void; /** * Updates provided overlay settings * * @param settings settings to update * @returns returns updated copy of provided overlay settings */ protected updateOverlaySettings(settings: OverlaySettings): OverlaySettings; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** * **Ignite UI for Angular Tooltip** - * [Documentation](https://www.infragistics.com/products/ignite-ui-angular/angular/components/tooltip) * * The Ignite UI for Angular Tooltip directive is used to mark an HTML element in the markup as one that should behave as a tooltip. * The tooltip is used in combination with the Ignite UI for Angular Tooltip Target by assigning the exported tooltip reference to the * respective target's selector property. * * Example: * ```html * * Hello there, I am a tooltip! * ``` */ declare class IgxTooltipDirective extends IgxToggleDirective implements AfterViewInit, OnDestroy { /** * @hidden */ get hiddenClass(): boolean; /** * @hidden */ get defaultClass(): boolean; /** * Gets/sets any tooltip related data. * The 'context' can be used for storing any information that is necessary * to access when working with the tooltip. * * ```typescript * // get * let tooltipContext = this.tooltip.context; * ``` * * ```typescript * // set * this.tooltip.context = "Tooltip's context"; * ``` */ context: any; /** * Identifier for the tooltip. * If this is property is not explicitly set, it will be automatically generated. * * ```typescript * let tooltipId = this.tooltip.id; * ``` */ id: string; /** * Get the role attribute of the tooltip. * * ```typescript * let tooltipRole = this.tooltip.role; * ``` */ set role(value: "tooltip" | "status"); get role(): "tooltip" | "status"; /** * Get the arrow element of the tooltip. * * ```typescript * let tooltipArrow = this.tooltip.arrow; * ``` */ get arrow(): HTMLElement; /** * @hidden */ timeoutId: any; /** * @hidden */ tooltipTarget: IgxTooltipTargetDirective; private _arrowEl; private _role; private _destroy$; private _document; private _renderer; private _platformUtil; /** @hidden */ constructor(); /** @hidden */ ngAfterViewInit(): void; /** @hidden */ ngOnDestroy(): void; /** * @hidden */ onMouseEnter(): void; /** * @hidden */ onMouseLeave(): void; /** * If there is an animation in progress, this method will reset it to its initial state. * Allows hovering over the tooltip while an open/close animation is running. * Stops the animation and immediately shows the tooltip. * * @hidden */ stopAnimations(): void; /** * If there is a close animation in progress, this method will end it. * If there is no close animation in progress, this method will close the tooltip with no animation. * * @param overlaySettings settings to use for closing the tooltip * @hidden */ forceClose(overlaySettings: OverlaySettings): void; private _createArrow; private _removeArrow; private onDocumentTouchStart; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } interface ITooltipShowEventArgs extends IBaseEventArgs { target: IgxTooltipTargetDirective; tooltip: IgxTooltipDirective; cancel: boolean; } interface ITooltipHideEventArgs extends IBaseEventArgs { target: IgxTooltipTargetDirective; tooltip: IgxTooltipDirective; cancel: boolean; } /** * **Ignite UI for Angular Tooltip Target** - * [Documentation](https://www.infragistics.com/products/ignite-ui-angular/angular/components/tooltip) * * The Ignite UI for Angular Tooltip Target directive is used to mark an HTML element in the markup as one that has a tooltip. * The tooltip target is used in combination with the Ignite UI for Angular Tooltip by assigning the exported tooltip reference to the * target's selector property. * * Example: * ```html * * Hello there, I am a tooltip! * ``` */ declare class IgxTooltipTargetDirective extends IgxToggleActionDirective implements OnInit, AfterViewInit, OnDestroy { private _viewContainerRef; private _renderer; private _envInjector; /** * Gets/sets the amount of milliseconds that should pass before showing the tooltip. * * ```typescript * // get * let tooltipShowDelay = this.tooltipTarget.showDelay; * ``` * * ```html * * * Hello there, I am a tooltip! * ``` */ showDelay: number; /** * Gets/sets the amount of milliseconds that should pass before hiding the tooltip. * * ```typescript * // get * let tooltipHideDelay = this.tooltipTarget.hideDelay; * ``` * * ```html * * * Hello there, I am a tooltip! * ``` */ hideDelay: number; /** * Controls whether to display an arrow indicator for the tooltip. * Set to true to show the arrow. Default value is `false`. * * ```typescript * // get * let isArrowDisabled = this.tooltip.hasArrow; * ``` * * ```typescript * // set * this.tooltip.hasArrow = true; * ``` * * ```html * * info * ``` */ set hasArrow(value: boolean); get hasArrow(): boolean; /** * Specifies if the tooltip remains visible until the user closes it via the close button or Esc key. * * ```typescript * // get * let isSticky = this.tooltip.sticky; * ``` * * ```typescript * // set * this.tooltip.sticky = true; * ``` * * ```html * * info * ``` */ set sticky(value: boolean); get sticky(): boolean; /** * Allows full control over the appearance of the close button inside the tooltip. * * ```typescript * // get * let customCloseTemplate = this.tooltip.customCloseTemplate; * ``` * * ```typescript * // set * this.tooltip.customCloseTemplate = TemplateRef; * ``` * * ```html * * info * * * * ``` */ set closeTemplate(value: TemplateRef); get closeTemplate(): TemplateRef | undefined; /** * Get the position and animation settings used by the tooltip. * ```typescript * let positionSettings = this.tooltipTarget.positionSettings; * ``` */ get positionSettings(): PositionSettings; /** * Set the position and animation settings used by the tooltip. * ```html * info * Hello there, I am a tooltip! * ``` * ```typescript * * import { PositionSettings, HorizontalAlignment, VerticalAlignment } from 'igniteui-angular'; * ... * public newPositionSettings: PositionSettings = { * horizontalDirection: HorizontalAlignment.Right, * horizontalStartPoint: HorizontalAlignment.Left, * verticalDirection: VerticalAlignment.Top, * verticalStartPoint: VerticalAlignment.Top, * }; * ``` */ set positionSettings(settings: PositionSettings); /** * Specifies if the tooltip should not show when hovering its target with the mouse. (defaults to false) * While setting this property to 'true' will disable the user interactions that shows/hides the tooltip, * the developer will still be able to show/hide the tooltip through the API. * * ```typescript * // get * let tooltipDisabledValue = this.tooltipTarget.tooltipDisabled; * ``` * * ```html * * * Hello there, I am a tooltip! * ``` */ tooltipDisabled: boolean; /** * @hidden */ set target(target: any); /** * @hidden */ get target(): any; /** * @hidden */ set tooltip(content: any); /** * Gets the respective native element of the directive. * * ```typescript * let tooltipTargetElement = this.tooltipTarget.nativeElement; * ``` */ get nativeElement(): any; /** * Indicates if the tooltip that is is associated with this target is currently hidden. * * ```typescript * let tooltipHiddenValue = this.tooltipTarget.tooltipHidden; * ``` */ get tooltipHidden(): boolean; /** * Emits an event when the tooltip that is associated with this target starts showing. * This event is fired before the start of the countdown to showing the tooltip. * * ```typescript * tooltipShowing(args: ITooltipShowEventArgs) { * alert("Tooltip started showing!"); * } * ``` * * ```html * * Hello there, I am a tooltip! * ``` */ tooltipShow: EventEmitter; /** * Emits an event when the tooltip that is associated with this target starts hiding. * This event is fired before the start of the countdown to hiding the tooltip. * * ```typescript * tooltipHiding(args: ITooltipHideEventArgs) { * alert("Tooltip started hiding!"); * } * ``` * * ```html * * Hello there, I am a tooltip! * ``` */ tooltipHide: EventEmitter; private _destroy$; private _autoHideDelay; private _isForceClosed; private _hasArrow; private _closeButtonRef?; private _closeTemplate; private _sticky; private _positionSettings; /** * @hidden */ onClick(): void; /** * @hidden */ onMouseEnter(): void; /** * @hidden */ onMouseLeave(): void; /** * @hidden */ onTouchStart(): void; /** * @hidden */ onDocumentTouchStart(event: any): void; /** * @hidden */ ngOnInit(): void; /** * @hidden */ ngAfterViewInit(): void; /** * @hidden */ ngOnDestroy(): void; /** * Shows the tooltip if not already shown. * * ```typescript * this.tooltipTarget.showTooltip(); * ``` */ showTooltip(): void; /** * Hides the tooltip if not already hidden. * * ```typescript * this.tooltipTarget.hideTooltip(); * ``` */ hideTooltip(): void; private get _mergedOverlaySettings(); private _checkOutletAndOutsideClick; /** * A guard method that performs precondition checks before showing the tooltip. * It ensures that the tooltip is not disabled and not already shown in sticky mode. * If all conditions pass, it executes the provided `action` callback. */ private _checksBeforeShowing; private _hideTooltip; private _showTooltip; private _showOnInteraction; private _hideOnInteraction; private _setAutoHide; /** * Used when the browser animations are set to a lower percentage * and the user interacts with the target or tooltip __while__ an animation is playing. * It stops the running animation, and the tooltip is instantly shown. */ private _stopTimeoutAndAnimation; /** * Used when a single tooltip is used for multiple targets. */ private _checkTooltipForMultipleTargets; /** * Updates the tooltip's sticky-related state, but only if the current target owns the tooltip. * * This method ensures that when the active target modifies its `sticky` or `closeTemplate` properties * at runtime, the tooltip reflects those changes accordingly: */ private _evaluateStickyState; /** * Creates (if not already created) an instance of the IgxTooltipCloseButtonComponent, * and assigns it the provided custom template. */ private _createCloseTemplate; /** * Appends the close button to the tooltip. */ private _appendCloseButtonToTooltip; /** * Removes the close button from the tooltip. */ private _removeCloseButtonFromTooltip; private _destroyCloseButton; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; static ngAcceptInputType_tooltipDisabled: unknown; } interface ArrowFit { /** Rectangle of the arrow element. */ readonly arrowRect?: Partial; /** Rectangle of the tooltip element. */ readonly tooltipRect?: Partial; /** Direction in which the arrow points. */ readonly direction?: 'top' | 'bottom' | 'right' | 'left'; /** Vertical offset of the arrow element from the tooltip */ top?: number; /** Horizontal offset of the arrow element from the tooltip */ left?: number; } declare class TooltipPositionStrategy extends AutoPositionStrategy { private _placement; constructor(settings?: PositionSettings); position(contentElement: HTMLElement, size: Size, document?: Document, initialCall?: boolean, target?: Point | HTMLElement): void; protected fitInViewport(element: HTMLElement, connectedFit: ConnectedFit): void; /** * Sets the position of the arrow relative to the tooltip element. * * @param arrow the arrow element of the tooltip. * @param arrowFit arrowFit object containing all necessary parameters. */ positionArrow(arrow: HTMLElement, arrowFit: ArrowFit): void; /** * Resets the element's top / bottom / left / right style properties. * * @param arrow the arrow element of the tooltip. */ private resetArrowPositionStyles; /** * Gets values for `top` or `left` position styles. * * @param arrowRect * @param tooltipRect * @param positionProperty - for which position property to get style values. */ private getArrowPositionStyles; /** * Configure arrow class and arrowFit. * * @param tooltip tooltip element. */ private configArrow; /** * Gets the placement that correspond to the given position settings. * Returns `undefined` if the position settings do not match any of the predefined placement values. * * @param settings Position settings for which to get the corresponding placement. */ private getPlacementByPositionSettings; /** * Gets opposite direction, e.g., top -> bottom * * @param direction for which direction to return its opposite. * @returns `top` | `bottom` | `right` | `left` */ private getOppositeDirection; } declare const IGX_TOOLTIP_DIRECTIVES: readonly [typeof IgxTooltipDirective, typeof IgxTooltipTargetDirective]; interface IgxDateTimeEditorEventArgs { readonly oldValue?: Date; newValue?: Date; readonly userInput: string; } /** * Date Time Editor provides a functionality to input, edit and format date and time. * * @igxModule IgxDateTimeEditorModule * * @igxParent IgxInputGroup * * @igxTheme igx-input-theme * * @igxKeywords date, time, editor * * @igxGroup Scheduling * * @remarks * * The Ignite UI Date Time Editor Directive makes it easy for developers to manipulate date/time user input. * It requires input in a specified or default input format which is visible in the input element as a placeholder. * It allows the input of only date (ex: 'dd/MM/yyyy'), only time (ex:'HH:mm tt') or both at once, if needed. * Supports display format that may differ from the input format. * Provides methods to increment and decrement any specific/targeted `DatePart`. * * **Note:** This directive uses the Mask Directive internally and requires `type="text"` on the input element. * Input elements with `type="date"` or other date/time types are not supported, as they do not allow * programmatic cursor positioning and text selection required for mask functionality. * * @example * ```html * * * * ``` */ declare class IgxDateTimeEditorDirective extends IgxMaskDirective implements OnChanges, OnInit, Validator, ControlValueAccessor { private _document; private _locale; /** * Locale settings used for value formatting. * * @remarks * Uses Angular's `LOCALE_ID` by default. Affects both input mask and display format if those are not set. * If a `locale` is set, it must be registered via `registerLocaleData`. * Please refer to https://angular.io/guide/i18n#i18n-pipes. * If it is not registered, `Intl` will be used for formatting. * * @example * ```html * * ``` */ locale: string; /** * Minimum value required for the editor to remain valid. * * @remarks * If a `string` value is passed, it must be in the defined input format. * * @example * ```html * * ``` */ get minValue(): string | Date; set minValue(value: string | Date); /** * Maximum value required for the editor to remain valid. * * @remarks * If a `string` value is passed in, it must be in the defined input format. * * @example * ```html * * ``` */ get maxValue(): string | Date; set maxValue(value: string | Date); /** * Specify if the currently spun date segment should loop over. * * @example * ```html * * ``` */ spinLoop: boolean; /** * Set both pre-defined format options such as `shortDate` and `longDate`, * as well as constructed format string using characters supported by `DatePipe`, e.g. `EE/MM/yyyy`. * * @example * ```html * * ``` */ set displayFormat(value: string); get displayFormat(): string; /** * Expected user input format (and placeholder). * * @example * ```html * * ``` */ set inputFormat(value: string); get inputFormat(): string; /** * Editor value. * * @example * ```html * * ``` */ set value(value: Date | string | undefined | null); get value(): Date | string | undefined | null; /** * Specify the default input format type. Defaults to `date`, which includes * only date parts for editing. Other valid options are `time` and `dateTime`. * * @example * ```html * * ``` */ defaultFormatType: 'date' | 'time' | 'dateTime'; /** * Delta values used to increment or decrement each editor date part on spin actions. * All values default to `1`. * * @example * ```html * * ``` */ spinDelta: DatePartDeltas; /** * Emitted when the editor's value has changed. * * @example * ```html * * ``` */ valueChange: EventEmitter; /** * Emitted when the editor is not within a specified range or when the editor's value is in an invalid state. * * @example * ```html * * ``` */ validationFailed: EventEmitter; private readonly SCROLL_THRESHOLD; private _inputFormat; private _scrollAccumulator; private _displayFormat; private _oldValue; private _dateValue; private _onClear; private document; private _defaultInputFormat; private _value?; private _minValue; private _maxValue; private _inputDateParts; private _datePartDeltas; private onChangeCallback; private _onValidatorChange; private get datePartDeltas(); private get emptyMask(); private get targetDatePart(); private get hasDateParts(); private get hasTimeParts(); private get dateValue(); constructor(); onWheel(event: WheelEvent): void; ngOnInit(): void; /** @hidden @internal */ ngOnChanges(changes: SimpleChanges): void; /** Clear the input element value. */ clear(): void; /** * Increment specified DatePart. * * @param datePart The optional DatePart to increment. Defaults to Date or Hours (when Date is absent from the inputFormat - ex:'HH:mm'). * @param delta The optional delta to increment by. Overrides `spinDelta`. */ increment(datePart?: DatePart, delta?: number): void; /** * Decrement specified DatePart. * * @param datePart The optional DatePart to decrement. Defaults to Date or Hours (when Date is absent from the inputFormat - ex:'HH:mm'). * @param delta The optional delta to decrement by. Overrides `spinDelta`. */ decrement(datePart?: DatePart, delta?: number): void; /** @hidden @internal */ writeValue(value: any): void; /** @hidden @internal */ validate(control: AbstractControl): ValidationErrors | null; /** @hidden @internal */ registerOnValidatorChange?(fn: () => void): void; /** @hidden @internal */ registerOnChange(fn: any): void; /** @hidden @internal */ registerOnTouched(fn: any): void; /** @hidden @internal */ setDisabledState?(_isDisabled: boolean): void; /** @hidden @internal */ onCompositionEnd(): void; /** @hidden @internal */ onInputChanged(event: any): void; /** @hidden @internal */ onKeyDown(event: KeyboardEvent): void; /** @hidden @internal */ onFocus(): void; /** @hidden @internal */ onBlur(event: FocusEvent): void; /** @hidden */ protected setPlaceholder(_value: string): void; private updateDefaultFormat; private updateMask; private setMask; private parseDate; private getMaskedValue; private valueInRange; private spinValue; private trySpinValue; private setDateValue; private updateValue; private toTwelveHourFormat; private getPartValue; private prependValue; private spin; private inputIsComplete; private moveCursor; /** * Move the cursor in a specific direction until it reaches a date/time separator. * Then return its index. * * @param value The string it operates on. * @param direction 0 is left, 1 is right. Default is 0. */ private getNewPosition; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; static ngAcceptInputType_spinLoop: unknown; } declare class IgcFormControlDirective implements ControlValueAccessor { private elementRef; private renderer; /** @hidden @internal */ private onChange; /** @hidden @internal */ private onTouched; /** @hidden @internal */ onBlur(): void; /** @hidden @internal */ listenForValueChange(value: any): void; /** @hidden @internal */ writeValue(value: any): void; /** @hidden @internal */ registerOnChange(fn: any): void; /** @hidden @internal */ registerOnTouched(fn: any): void; /** @hidden @internal */ setDisabledState(isDisabled: boolean): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare abstract class IgxNotificationsDirective extends IgxToggleDirective implements IToggleView, OnDestroy { /** * Sets/gets the `aria-live` attribute. * If not set, `aria-live` will have value `"polite"`. */ ariaLive: string; /** * Sets/gets whether the element will be hidden after the `displayTime` is over. * Default value is `true`. */ autoHide: boolean; /** * Sets/gets the duration of time span (in milliseconds) which the element will be visible * after it is being shown. * Default value is `4000`. */ displayTime: number; /** * Gets/Sets the container used for the element. * * @remarks * `outlet` is an instance of `IgxOverlayOutletDirective` or an `ElementRef`. */ outlet: IgxOverlayOutletDirective | ElementRef; /** * Enables/Disables the visibility of the element. * If not set, the `isVisible` attribute will have value `false`. */ get isVisible(): boolean; set isVisible(value: boolean); /** * @hidden * @internal */ textMessage: string; /** * @hidden */ timeoutId: number; /** * @hidden */ protected strategy: IPositionStrategy; /** * @hidden */ open(): void; /** * Hides the element. */ close(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; static ngAcceptInputType_autoHide: unknown; static ngAcceptInputType_isVisible: unknown; } declare class IgxTextHighlightService { highlightGroupsMap: Map; onActiveElementChanged: EventEmitter; constructor(); /** * Activates the highlight at a given index. * (if such index exists) */ setActiveHighlight(groupName: string, highlight: IActiveHighlightInfo): void; /** * Clears any existing highlight. */ clearActiveHighlight(groupName: any): void; /** * Destroys a highlight group. */ destroyGroup(groupName: string): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } /** * @hidden * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components */ declare class IgxButtonModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** * @hidden * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components */ declare class IgxDateTimeEditorModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** * @hidden * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components */ declare class IgxDividerModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** * @hidden * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components */ declare class IgxDragDropModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** * @hidden * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components */ declare class IgxFilterModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** * @hidden * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components */ declare class IgxFocusModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** * @hidden * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components */ declare class IgxFocusTrapModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** * @hidden * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components */ declare class IgxForOfModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** * @hidden * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components */ declare class IgcFormsModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** * @hidden * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components */ declare class IgxLayoutModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** * @hidden * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components */ declare class IgxMaskModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** * @hidden * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components */ declare class IgxRippleModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** * @hidden * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components */ declare class IgxScrollInertiaModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** * @hidden * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components */ declare class IgxTextHighlightModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** * @hidden * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components */ declare class IgxTextSelectionModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** * @hidden * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components */ declare class IgxToggleModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** * @hidden * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components */ declare class IgxTooltipModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export { CheckboxBaseDirective, DragDirection, IGX_DRAG_DROP_DIRECTIVES, IGX_TOOLTIP_DIRECTIVES, IgSizeDirective, IgcFormControlDirective, IgcFormsModule, IgxAppendDropStrategy, IgxButtonDirective, IgxButtonModule, IgxButtonType, IgxDateTimeEditorDirective, IgxDateTimeEditorModule, IgxDefaultDropStrategy, IgxDividerDirective, IgxDividerModule, IgxDividerType, IgxDragDirective, IgxDragDropModule, IgxDragHandleDirective, IgxDragIgnoreDirective, IgxDragLocation, IgxDropDirective, IgxFilterDirective, IgxFilterModule, IgxFilterOptions, IgxFilterPipe, IgxFlexDirective, IgxFocusDirective, IgxFocusModule, IgxFocusTrapDirective, IgxFocusTrapModule, IgxForOfContext, IgxForOfDirective, IgxForOfModule, IgxForOfScrollSyncService, IgxForOfSyncService, IgxForOfToken, IgxGridForOfContext, IgxGridForOfDirective, IgxIconButtonDirective, IgxInsertDropStrategy, IgxLayoutDirective, IgxLayoutModule, IgxMaskDirective, IgxMaskModule, IgxNotificationsDirective, IgxPrependDropStrategy, IgxRippleDirective, IgxRippleModule, IgxScrollInertiaDirective, IgxScrollInertiaModule, IgxTemplateOutletDirective, IgxTextHighlightDirective, IgxTextHighlightModule, IgxTextHighlightService, IgxTextSelectionDirective, IgxTextSelectionModule, IgxToggleActionDirective, IgxToggleDirective, IgxToggleModule, IgxTooltipDirective, IgxTooltipModule, IgxTooltipTargetDirective, LabelPosition, TooltipPositionStrategy }; export type { ArrowFit, IActiveHighlightInfo, IBaseSearchInfo, IButtonEventArgs, ICachedViewLoadedEventArgs, IChangeCheckboxEventArgs, IDragBaseEventArgs, IDragCustomTransitionArgs, IDragGhostBaseEventArgs, IDragMoveEventArgs, IDragStartEventArgs, IDropBaseEventArgs, IDropDroppedEventArgs, IDropStrategy, IForOfDataChangeEventArgs, IForOfDataChangingEventArgs, IForOfState, IMaskEventArgs, ITooltipHideEventArgs, ITooltipShowEventArgs, IViewChangeEventArgs, IgxDateTimeEditorEventArgs, IgxDragCustomEventDetails, IgxIconButtonType, ToggleViewCancelableEventArgs, ToggleViewEventArgs };