/**
 * Copyright Aquera Inc 2025
 *
 * This source code is licensed under the BSD-3-Clause license found in the
 * LICENSE file in the root directory of this source tree.
 */
export type NileRemoveEvent = CustomEvent<Record<PropertyKey, never>>;
export interface VirtualOption {
    value: string;
    selected: boolean;
    getTextLabel: () => string;
    getOptionPrefix: () => string;
}
export interface RenderItemConfig {
    getDisplayText: (item: any) => string;
    getValue?: (item: any) => string;
    getSearchText?: (item: any) => string;
    getDescription?: (item: any) => string;
    getPrefix?: (item: any) => string;
    getSuffix?: (item: any) => string;
}
export interface VirtualSelectProperties {
    name: string;
    data: any[];
    value: string | string[];
    size: 'small' | 'medium' | 'large';
    placeholder: string;
    searchEnabled: boolean;
    internalSearchPlaceHolder: string;
    disableLocalSearch: boolean;
    optionsLoading: boolean;
    multiple: boolean;
    helpText: string;
    errorMessage: string;
    warning: boolean;
    error: boolean;
    success: boolean;
    disabled: boolean;
    clearable: boolean;
    open: boolean;
    hoist: boolean;
    filled: boolean;
    pill: boolean;
    label: string;
    placement: 'top' | 'bottom';
    form: string;
    required: boolean;
    showNoResults: boolean;
    noResultsMessage: string;
    renderItemConfig?: RenderItemConfig;
    blockValueChange: boolean;
    noWidthSync: boolean;
}
