UNPKG

igniteui-angular

Version:

Ignite UI for Angular is a dependency-free Angular toolkit for building modern web apps

73 lines (72 loc) 2.48 kB
import { CancelableEventArgs, CancelableBrowserEventArgs, IBaseEventArgs } from '../core/utils'; import { IgxDropDownItemBaseDirective } from './drop-down-item.base'; import { IToggleView } from '../core/navigation/IToggleView'; import { EventEmitter, InjectionToken } from '@angular/core'; /** @hidden */ export declare enum Navigate { Up = -1, Down = 1 } /** Key actions that have designated handlers in IgxDropDownComponent */ export declare const DropDownActionKey: { ESCAPE: "escape"; ENTER: "enter"; SPACE: "space"; }; export type DropDownActionKey = (typeof DropDownActionKey)[keyof typeof DropDownActionKey]; /** * Interface that encapsulates selectionChanging event arguments - old selection, new selection and cancel selection. * * @export */ export interface ISelectionEventArgs extends CancelableEventArgs, IBaseEventArgs { oldSelection: IgxDropDownItemBaseDirective; newSelection: IgxDropDownItemBaseDirective; } /** * Interface for an instance of IgxDropDownNavigationDirective * * @export */ export interface IDropDownNavigationDirective { target: any; handleKeyDown(event: KeyboardEvent): void; onArrowDownKeyDown(event?: KeyboardEvent): void; onArrowUpKeyDown(event?: KeyboardEvent): void; onEndKeyDown(event?: KeyboardEvent): void; onHomeKeyDown(event?: KeyboardEvent): void; } export declare const IGX_DROPDOWN_BASE: InjectionToken<IDropDownBase>; /** * @hidden */ export interface IDropDownList { selectionChanging: EventEmitter<ISelectionEventArgs>; width: string; height: string; id: string; maxHeight: string; collapsed: boolean; items: IgxDropDownItemBaseDirective[]; headers: IgxDropDownItemBaseDirective[]; focusedItem: IgxDropDownItemBaseDirective; navigateFirst(): void; navigateLast(): void; navigateNext(): void; navigatePrev(): void; navigateItem(newIndex: number, direction?: Navigate): void; onItemActionKey(key: DropDownActionKey, event?: Event): void; } /** * @hidden */ export interface IDropDownBase extends IDropDownList, IToggleView { selectedItem: any; opening: EventEmitter<CancelableBrowserEventArgs>; opened: EventEmitter<IBaseEventArgs>; closing: EventEmitter<CancelableBrowserEventArgs>; closed: EventEmitter<IBaseEventArgs>; allowItemsFocus?: boolean; setSelectedItem(index: number): void; selectItem(item: IgxDropDownItemBaseDirective, event?: Event, emit?: boolean): void; }