/// import * as Blockly from "blockly"; import { FieldCustom, FieldCustomOptions } from "./field_utils"; export interface FieldTextDropdownOptions extends FieldCustomOptions { values?: string; data?: string; } export declare class BaseFieldTextDropdown extends Blockly.FieldTextInput { protected menuGenerator_: any[]; static DROPDOWN_SVG_DATAURI: string; /** A reference to the currently selected menu item. */ private selectedMenuItem; /** The dropdown menu. */ protected menu_: Blockly.Menu | null; /** SVG based arrow element. */ private svgArrow; /** A cache of the most recently generated options. */ private generatedOptions; protected dropDownOpen_: boolean; private menuItems; private lastHighlightedMenuElement; private inputKeydownHandler; private dropdownKeydownHandler; constructor(text: string, menuGenerator_: any[], opt_validator?: Blockly.FieldValidator); initView(): void; private inputKeydownListener; private dropdownKeydownListener; protected showEditor_(e?: Event, quietInput?: boolean): void; doValueUpdate_(newValue: string): void; getOptions(useCache?: boolean): Blockly.MenuOption[]; isOptionListDynamic(): boolean; getFieldDescription(): string; protected dropdownDispose_(): void; private dropdownCreate; showDropdown_(e?: MouseEvent): void; protected updateSize_(margin?: number): void; private positionSVGArrow; protected createSVGArrow(): void; private handleMenuActionEvent; protected onItemSelected_(menu: Blockly.Menu, menuItem: Blockly.MenuItem): void; } export declare class FieldTextDropdown extends BaseFieldTextDropdown implements FieldCustom { isFieldCustom_: boolean; constructor(text: string, options: FieldTextDropdownOptions, opt_validator?: Blockly.FieldValidator); }