/**
* The base for every editor that is a single native text-entry control.
*
* @packageDocumentation
*/
import { AbstractCellEditor } from './abstract-editor';
/**
* The shared modifier every native-picker control carries in addition to its own.
*
* A date, a datetime, a time and a select are four different controls with one
* thing in common: the browser draws an indicator the user clicks to open a
* platform picker, and that indicator has to be sized, coloured and positioned
* consistently or the column looks assembled from different kits. One class lets
* the stylesheet say that once, instead of repeating the same rule under four
* type-specific selectors and forgetting the fifth when it is added.
*/
export declare const NATIVE_PICKER_CLASS = "pg-editor--picker";
/**
* Asks a native control to drop its picker open, and does nothing at all if it
* cannot.
*
* Shared by every editor whose value is chosen from a platform surface — the
* date, datetime, time and select editors — so entering a cell shows the
* calendar, the clock or the option list without the user having to click a
* second time on an indicator they may not have noticed.
*
* `showPicker` is unsupported in older Safari/Firefox and throws a
* SecurityError unless called from a user gesture. Both are non-fatal — the
* select is focused and fully keyboard-operable either way — so a failure
* must degrade silently rather than break the edit session.
*
* @param element - The focused control. Left untouched when it does not
* implement the method.
*/
export declare function showNativePicker(element: HTMLElement): void;
/**
* Resolves the `commitOnChange` param the picker editors share, defaulting it
* to `true`.
*
* A single resolver rather than `params.commitOnChange !== false` repeated in
* four editors: the default is a behavioural contract users will rely on, and
* four independent copies of it are four chances for one to drift when the
* option is next touched. `!== false` rather than `=== true` because the
* default is on — an omitted param must behave like an enabled one.
*
* @param flag - The editor's `commitOnChange` param, or `undefined` when the
* column supplied none.
* @returns Whether a native `change` on the control should close the session.
*/
export declare function resolveCommitOnChange(flag: boolean | undefined): boolean;
/**
* A single `` (or `