/**
 * @license
 * Copyright 2023 Tyler Technologies, Inc. 
 * License: Apache-2.0
 */
import { IListDropdownOption, IListDropdownOptionGroup } from '../../list-dropdown/list-dropdown-constants';
export declare type SelectOptionBuilder = (option: ISelectOption, parentElement: HTMLElement) => HTMLElement;
export declare type SelectSelectedTextBuilder = (selectedOptions: IListDropdownOption[]) => string;
export declare type SelectOptionListenerDestructor = () => void;
export declare type SelectBeforeValueChangeCallback<T> = (value: T | T[]) => boolean | Promise<boolean>;
export interface ISelectOption extends IListDropdownOption {
}
export interface ISelectOptionGroup extends IListDropdownOptionGroup {
}
export declare const BASE_SELECT_CONSTANTS: {
    attributes: {
        VALUE: string;
        MULTIPLE: string;
        OBSERVE_SCROLL: string;
        OBSERVE_SCROLL_THRESHOLD: string;
        POPUP_CLASSES: string;
        OPTION_LIMIT: string;
        SYNC_POPUP_WIDTH: string;
        CONSTRAIN_POPUP_WIDTH: string;
        WRAP_OPTION_TEXT: string;
    };
    events: {
        CHANGE: string;
    };
};
