import * as i4 from 'igniteui-angular/input-group'; import { IgxInputDirective, IgxInputGroupComponent, IgxPrefixDirective, IgxSuffixDirective, IgxLabelDirective, IgxInputGroupType, IgxHintDirective } from 'igniteui-angular/input-group'; import { IgxDropDownGroupComponent, IgxDropDownItemComponent, IgxDropDownBaseDirective, IgxDropDownItemBaseDirective, IgxDropDownComponent, Navigate } from 'igniteui-angular/drop-down'; import * as i0 from '@angular/core'; import { AfterContentInit, OnInit, AfterViewInit, OnDestroy, AfterContentChecked, QueryList, EventEmitter, TemplateRef } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; import { OverlaySettings, EditorProvider, IgxOverlayService, IBaseCancelableBrowserEventArgs, IBaseEventArgs } from 'igniteui-angular/core'; import { ToggleViewCancelableEventArgs, ToggleViewEventArgs } from 'igniteui-angular/directives'; /** * The `` is a container intended for row items in * a `` container. */ declare class IgxSelectGroupComponent extends IgxDropDownGroupComponent { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class IgxSelectItemComponent extends IgxDropDownItemComponent { /** @hidden @internal */ isHeader: boolean; private _text; /** * Gets/Sets the item's text to be displayed in the select component's input when the item is selected. * * ```typescript * //get * let mySelectedItem = this.dropDown.selectedItem; * let selectedItemText = mySelectedItem.text; * ``` * * ```html * // set * * ``` */ get text(): string; set text(text: string); /** @hidden @internal */ get itemText(): any; /** * Sets/Gets if the item is the currently selected one in the select * * ```typescript * let mySelectedItem = this.select.selectedItem; * let isMyItemSelected = mySelectedItem.selected; // true * ``` */ get selected(): any; set selected(value: any); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** @hidden @internal */ interface IgxSelectBase extends IgxDropDownBaseDirective { input: IgxInputDirective; readonly selectedItem: IgxDropDownItemBaseDirective; open(overlaySettings?: OverlaySettings): any; close(): any; toggle(overlaySettings?: OverlaySettings): any; calculateScrollPosition(item: IgxDropDownItemBaseDirective): number; getFirstItemElement(): HTMLElement; getEditElement(): HTMLElement; } /** @hidden @internal */ declare class IgxSelectToggleIconDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** @hidden @internal */ declare class IgxSelectHeaderDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** @hidden @internal */ declare class IgxSelectFooterDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** * **Ignite UI for Angular Select** - * [Documentation](https://www.infragistics.com/products/ignite-ui-angular/angular/components/select) * * The `igxSelect` provides an input with dropdown list allowing selection of a single item. * * Example: * ```html * * * * {{ item.field }} * * * ``` */ declare class IgxSelectComponent extends IgxDropDownComponent implements IgxSelectBase, ControlValueAccessor, AfterContentInit, OnInit, AfterViewInit, OnDestroy, EditorProvider, AfterContentChecked { protected overlayService: IgxOverlayService; private _inputGroupType; private _injector; /** @hidden @internal */ inputGroup: IgxInputGroupComponent; /** @hidden @internal */ input: IgxInputDirective; /** @hidden @internal */ children: QueryList; protected prefixes: QueryList; protected suffixes: QueryList; protected internalSuffixes: QueryList; /** @hidden @internal */ label: IgxLabelDirective; /** * Sets input placeholder. * */ placeholder: any; /** * Disables the component. * ```html * * ``` */ disabled: boolean; /** * Sets custom OverlaySettings `IgxSelectComponent`. * ```html * * ``` */ overlaySettings: OverlaySettings; /** @hidden @internal */ maxHeight: string; /** * Emitted before the dropdown is opened * * ```html * * ``` */ opening: EventEmitter; /** * Emitted after the dropdown is opened * * ```html * * ``` */ opened: EventEmitter; /** * Emitted before the dropdown is closed * * ```html * * ``` */ closing: EventEmitter; /** * Emitted after the dropdown is closed * * ```html * * ``` */ closed: EventEmitter; /** * The custom template, if any, that should be used when rendering the select TOGGLE(open/close) button * * ```typescript * // Set in typescript * const myCustomTemplate: TemplateRef = myComponent.customTemplate; * myComponent.select.toggleIconTemplate = myCustomTemplate; * ``` * ```html * * * ... * * {{ collapsed ? 'remove_circle' : 'remove_circle_outline'}} * * * ``` */ toggleIconTemplate: TemplateRef; /** * The custom template, if any, that should be used when rendering the HEADER for the select items list * * ```typescript * // Set in typescript * const myCustomTemplate: TemplateRef = myComponent.customTemplate; * myComponent.select.headerTemplate = myCustomTemplate; * ``` * ```html * * * ... * *
* This is a custom header *
*
*
* ``` */ headerTemplate: TemplateRef; /** * The custom template, if any, that should be used when rendering the FOOTER for the select items list * * ```typescript * // Set in typescript * const myCustomTemplate: TemplateRef = myComponent.customTemplate; * myComponent.select.footerTemplate = myCustomTemplate; * ``` * ```html * * * ... * * * * * ``` */ footerTemplate: TemplateRef; private hintElement; /** @hidden @internal */ width: string; /** @hidden @internal do not use the drop-down container class */ cssClass: boolean; /** @hidden @internal */ allowItemsFocus: boolean; /** @hidden @internal */ height: string; private ngControl; private _overlayDefaults; private _value; private _type; /** * Gets/Sets the component value. * * ```typescript * // get * let selectValue = this.select.value; * ``` * * ```typescript * // set * this.select.value = 'London'; * ``` * ```html * * ``` */ get value(): any; set value(v: any); /** * Sets how the select will be styled. * The allowed values are `line`, `box` and `border`. The input-group default is `line`. * ```html * * ``` */ get type(): IgxInputGroupType; set type(val: IgxInputGroupType); /** @hidden @internal */ get selectionValue(): any; /** @hidden @internal */ get selectedItem(): IgxSelectItemComponent; private _onChangeCallback; private _onTouchedCallback; /** @hidden @internal */ writeValue: (value: any) => void; /** @hidden @internal */ registerOnChange(fn: any): void; /** @hidden @internal */ registerOnTouched(fn: any): void; /** @hidden @internal */ setDisabledState(isDisabled: boolean): void; /** @hidden @internal */ getEditElement(): HTMLInputElement; /** @hidden @internal */ selectItem(newSelection: IgxDropDownItemBaseDirective, event?: any): void; /** @hidden @internal */ getFirstItemElement(): HTMLElement; /** * Opens the select * * ```typescript * this.select.open(); * ``` */ open(overlaySettings?: OverlaySettings): void; inputGroupClick(event: MouseEvent, overlaySettings?: OverlaySettings): void; /** @hidden @internal */ ngAfterContentInit(): void; /** * Event handlers * * @hidden @internal */ handleOpening(e: ToggleViewCancelableEventArgs): void; /** @hidden @internal */ onToggleContentAppended(event: ToggleViewEventArgs): void; /** @hidden @internal */ handleOpened(): void; /** @hidden @internal */ handleClosing(e: ToggleViewCancelableEventArgs): void; /** @hidden @internal */ handleClosed(): void; /** @hidden @internal */ onBlur(): void; /** @hidden @internal */ onFocus(): void; /** * @hidden @internal */ ngOnInit(): void; /** * @hidden @internal */ ngAfterViewInit(): void; /** @hidden @internal */ ngAfterContentChecked(): void; /** @hidden @internal */ get toggleIcon(): string; /** * @hidden @internal * Prevent input blur - closing the items container on Header/Footer Template click. */ mousedownHandler(event: any): void; protected onStatusChanged(): void; private get isTouchedOrDirty(); private get hasValidators(); protected navigate(direction: Navigate, currentIndex?: number): void; protected manageRequiredAsterisk(): void; private setSelection; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_disabled: unknown; } declare const IGX_SELECT_DIRECTIVES: readonly [typeof IgxSelectComponent, typeof IgxSelectItemComponent, typeof IgxSelectGroupComponent, typeof IgxSelectHeaderDirective, typeof IgxSelectFooterDirective, typeof IgxSelectToggleIconDirective, typeof IgxLabelDirective, typeof IgxPrefixDirective, typeof IgxSuffixDirective, typeof IgxHintDirective]; /** * @hidden * @deprecated * IMPORTANT: The following is NgModule exported for backwards-compatibility before standalone components */ declare class IgxSelectModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export { IGX_SELECT_DIRECTIVES, IgxSelectComponent, IgxSelectFooterDirective, IgxSelectGroupComponent, IgxSelectHeaderDirective, IgxSelectItemComponent, IgxSelectModule, IgxSelectToggleIconDirective };