/** * DevExtreme (ui/select_box.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 { UserDefinedElement, DxElement, } from '../core/element'; import { template, } from '../core/templates/template'; import { EventInfo, NativeEventInfo, InitializedEventInfo, ChangedOptionInfo, ItemInfo, } from '../events/index'; import { DropDownButtonTemplateDataModel, } from './drop_down_editor/ui.drop_down_editor'; import dxDropDownList, { dxDropDownListOptions, SelectionChangedInfo, } from './drop_down_editor/ui.drop_down_list'; import { ValueChangedInfo, } from './editor/editor'; export interface CustomItemCreatingInfo { readonly text?: string; customItem?: string | any | PromiseLike; } /** @public */ export type ChangeEvent = NativeEventInfo; /** @public */ export type ClosedEvent = EventInfo; /** @public */ export type ContentReadyEvent = EventInfo; /** @public */ export type CopyEvent = NativeEventInfo; /** @public */ export type CustomItemCreatingEvent = EventInfo & CustomItemCreatingInfo; /** @public */ export type CutEvent = NativeEventInfo; /** @public */ export type DisposingEvent = EventInfo; /** @public */ export type EnterKeyEvent = NativeEventInfo; /** @public */ export type FocusInEvent = NativeEventInfo; /** @public */ export type FocusOutEvent = NativeEventInfo; /** @public */ export type InitializedEvent = InitializedEventInfo; /** @public */ export type InputEvent = NativeEventInfo; /** @public */ export type ItemClickEvent = NativeEventInfo & ItemInfo; /** @public */ export type KeyDownEvent = NativeEventInfo; /** @public */ export type KeyPressEvent = NativeEventInfo; /** @public */ export type KeyUpEvent = NativeEventInfo; /** @public */ export type OpenedEvent = EventInfo; /** @public */ export type OptionChangedEvent = EventInfo & ChangedOptionInfo; /** @public */ export type PasteEvent = NativeEventInfo; /** @public */ export type SelectionChangedEvent = EventInfo & SelectionChangedInfo; /** @public */ export type ValueChangedEvent = NativeEventInfo & ValueChangedInfo; /** @public */ export type DropDownButtonTemplateData = DropDownButtonTemplateDataModel; /** * @deprecated use Properties instead * @namespace DevExpress.ui */ export interface dxSelectBoxOptions extends dxDropDownListOptions { /** * @docid * @default false * @public */ acceptCustomValue?: boolean; /** * @docid * @default null * @type_function_param1 selectedItem:object * @type_function_return string|Element|jQuery * @public */ fieldTemplate?: template | ((selectedItem: any, fieldElement: DxElement) => string | UserDefinedElement); /** * @section Utils * @type function * @docid * @type_function_param1 e:object * @type_function_param1_field1 component:this * @type_function_param1_field2 element:DxElement * @type_function_param1_field3 model:object * @type_function_param1_field4 text:string * @type_function_param1_field5 customItem:string|object|Promise * @type_function_param1_field1 component:this * @type_function_param1_field2 element:DxElement * @type_function_param1_field3 model:any * @action * @default function(e) { if(!e.customItem) { e.customItem = e.text; } } * @public */ onCustomItemCreating?: ((e: EventInfo & CustomItemCreatingInfo) => void); /** * @docid * @default true * @public */ openOnFieldClick?: boolean; /** * @docid * @default "Select" * @public */ placeholder?: string; /** * @docid * @public */ showDropDownButton?: boolean; /** * @docid * @default false * @public */ showSelectionControls?: boolean; /** * @docid * @default "change" * @public */ valueChangeEvent?: string; } /** * @docid * @isEditor * @inherits dxDropDownList * @namespace DevExpress.ui * @public */ export default class dxSelectBox extends dxDropDownList { constructor(element: UserDefinedElement, options?: dxSelectBoxOptions) } /** @public */ export type Properties = dxSelectBoxOptions; /** @deprecated use Properties instead */ export type Options = dxSelectBoxOptions; /** @deprecated use Properties instead */ export type IOptions = dxSelectBoxOptions;