/** * DevExtreme (ui/lookup.d.ts) * Version: 21.1.7 * Build date: Thu Aug 07 2025 * * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/ */ import { animationConfig, } from '../animation/fx'; import { positionConfig, } from '../animation/position'; import { UserDefinedElement, DxElement, } from '../core/element'; import { template, } from '../core/templates/template'; import { DxEvent, EventInfo, NativeEventInfo, InitializedEventInfo, ChangedOptionInfo, ItemInfo, } from '../events/index'; import { ValueChangedInfo, } from './editor/editor'; import dxDropDownList, { dxDropDownListOptions, SelectionChangedInfo, } from './drop_down_editor/ui.drop_down_list'; import { ScrollInfo, } from './list'; import { dxPopoverOptions, } from './popover'; import { TitleRenderedInfo, } from './popup'; /** @public */ export type ClosedEvent = EventInfo; /** @public */ export type ContentReadyEvent = EventInfo; /** @public */ export type DisposingEvent = EventInfo; /** @public */ export type InitializedEvent = InitializedEventInfo; /** @public */ export type ItemClickEvent = NativeEventInfo & ItemInfo; /** @public */ export type OpenedEvent = EventInfo; /** @public */ export type OptionChangedEvent = EventInfo & ChangedOptionInfo; /** @public */ export type PageLoadingEvent = EventInfo; /** @public */ export type PullRefreshEvent = EventInfo; /** @public */ export type ScrollEvent = NativeEventInfo & ScrollInfo; /** @public */ export type SelectionChangedEvent = EventInfo & SelectionChangedInfo; /** @public */ export type TitleRenderedEvent = EventInfo & TitleRenderedInfo; /** @public */ export type ValueChangedEvent = NativeEventInfo & ValueChangedInfo; /** * @deprecated use Properties instead * @namespace DevExpress.ui */ export interface dxLookupOptions extends dxDropDownListOptions { /** * @docid * @default undefined * @public * @deprecated dxLookupOptions.dropDownOptions */ animation?: { /** * @docid * @default undefined */ hide?: animationConfig; /** * @docid * @default undefined */ show?: animationConfig; }; /** * @docid * @default "OK" * @public */ applyButtonText?: string; /** * @docid * @type Enums.EditorApplyValueMode * @hidden false * @public */ applyValueMode?: 'instantly' | 'useButtons'; /** * @docid * @default "Cancel" * @public */ cancelButtonText?: string; /** * @docid * @default true * @public */ cleanSearchOnOpening?: boolean; /** * @docid * @default "Clear" * @public */ clearButtonText?: string; /** * @docid * @default false * @type_function_param1 event:event * @publicName closeOnOutsideClick * @default true &for(Material) * @public * @deprecated dxLookupOptions.dropDownOptions */ closeOnOutsideClick?: boolean | ((event: DxEvent) => boolean); /** * @docid * @default null * @type_function_param1 selectedItem:object * @type_function_return string|Element|jQuery * @public */ fieldTemplate?: template | ((selectedItem: any, fieldElement: DxElement) => string | UserDefinedElement); /** * @docid * @default false * @default true &for(desktop) * @public */ focusStateEnabled?: boolean; /** * @docid * @default false * @default true &for(iPhone) * @public * @deprecated dxLookupOptions.dropDownOptions */ fullScreen?: boolean; /** * @docid * @default "group" * @type_function_param1 itemData:object * @type_function_return string|Element|jQuery * @public */ groupTemplate?: template | ((itemData: any, itemIndex: number, itemElement: DxElement) => string | UserDefinedElement); /** * @docid * @default false * @public */ grouped?: boolean; /** * @docid * @default "More" * @public */ nextButtonText?: string; /** * @docid * @default null * @type_function_param1 e:object * @type_function_param1_field1 component:dxLookup * @type_function_param1_field2 element:DxElement * @type_function_param1_field3 model:any * @action * @public */ onPageLoading?: ((e: PageLoadingEvent) => void); /** * @docid * @default null * @type_function_param1 e:object * @type_function_param1_field1 component:dxLookup * @type_function_param1_field2 element:DxElement * @type_function_param1_field3 model:any * @action * @public */ onPullRefresh?: ((e: PullRefreshEvent) => void); /** * @docid * @default null * @type_function_param1 e:object * @type_function_param1_field4 event:event * @type_function_param1_field5 scrollOffset:object * @type_function_param1_field6 reachedLeft:boolean * @type_function_param1_field7 reachedRight:boolean * @type_function_param1_field8 reachedTop:boolean * @type_function_param1_field9 reachedBottom:boolean * @type_function_param1_field1 component:dxLookup * @type_function_param1_field2 element:DxElement * @type_function_param1_field3 model:any * @action * @public */ onScroll?: ((e: ScrollEvent) => void); /** * @docid * @default null * @type_function_param1 e:object * @type_function_param1_field4 titleElement:DxElement * @type_function_param1_field1 component:dxLookup * @type_function_param1_field2 element:DxElement * @type_function_param1_field3 model:any * @action * @public * @deprecated dxLookupOptions.dropDownOptions */ onTitleRendered?: ((e: TitleRenderedEvent) => void); /** * @docid * @default null * @type_function_param1 e:object * @type_function_param1_field4 value:object * @type_function_param1_field5 previousValue:object * @type_function_param1_field6 event:event * @type_function_param1_field1 component:dxLookup * @type_function_param1_field2 element:DxElement * @type_function_param1_field3 model:any * @action * @public */ onValueChanged?: ((e: ValueChangedEvent) => void); /** * @docid * @type Enums.ListPageLoadMode * @default "scrollBottom" * @public */ pageLoadMode?: 'nextButton' | 'scrollBottom'; /** * @docid * @default "Loading..." * @public */ pageLoadingText?: string; /** * @docid * @default "Select" * @public */ placeholder?: string; /** * @docid * @default function() { return $(window).height() * 0.8 } * @default 'auto' &for(desktop|iPad) * @public * @deprecated dxLookupOptions.dropDownOptions */ popupHeight?: number | string | (() => number | string); /** * @docid * @default function() {return $(window).width() * 0.8 } * @default function() { return Math.min($(window).width(), $(window).height()) * 0.4; } &for(iPad) * @public * @deprecated dxLookupOptions.dropDownOptions */ popupWidth?: number | string | (() => number | string); /** * @docid * @default undefined * @publicName position * @default { my: 'left top', at: 'left top', of: lookupContainer } &for(Material) * @public * @deprecated dxLookupOptions.dropDownOptions */ position?: positionConfig; /** * @docid * @default false * @public */ pullRefreshEnabled?: boolean; /** * @docid * @default "Release to refresh..." * @public */ pulledDownText?: string; /** * @docid * @default "Pull down to refresh..." * @public */ pullingDownText?: string; /** * @docid * @default "Refreshing..." * @public */ refreshingText?: string; /** * @docid * @default true * @publicName searchEnabled * @default false &for(Material) * @public */ searchEnabled?: boolean; /** * @docid * @default "Search" * @public */ searchPlaceholder?: string; /** * @docid * @default true * @public * @deprecated dxLookupOptions.dropDownOptions */ shading?: boolean; /** * @docid * @default true * @publicName showCancelButton * @default false &for(Material) * @public */ showCancelButton?: boolean; /** * @docid * @default false * @public */ showClearButton?: boolean; /** * @docid * @default true * @publicName showPopupTitle * @default false &for(Material) * @public * @deprecated dxLookupOptions.dropDownOptions */ showPopupTitle?: boolean; /** * @docid * @default "" * @public * @deprecated dxLookupOptions.dropDownOptions */ title?: string; /** * @docid * @default "title" * @type_function_return string|Element|jQuery * @public * @deprecated dxLookupOptions.dropDownOptions */ titleTemplate?: template | ((titleElement: DxElement) => string | UserDefinedElement); /** * @docid * @default true * @default false &for(desktop except Mac) * @public */ useNativeScrolling?: boolean; /** * @docid * @default false * @default true &for(desktop|iOS) * @publicName usePopover * @default false &for(Material) * @public */ usePopover?: boolean; /** * @docid * @default false * @default true &for(Material) * @public */ dropDownCentered?: boolean; /** * @docid */ dropDownOptions?: dxPopoverOptions; } /** * @docid * @isEditor * @inherits dxDropDownList * @namespace DevExpress.ui * @public */ export default class dxLookup extends dxDropDownList { constructor(element: UserDefinedElement, options?: dxLookupOptions) } /** @public */ export type Properties = dxLookupOptions; /** @deprecated use Properties instead */ export type Options = dxLookupOptions; /** @deprecated use Properties instead */ export type IOptions = dxLookupOptions;