import type { JSX } from "react";
import type { Popover } from "../headless/popover";
import { type ChipProps } from "./chip.js";
import type { SmartSelectRootProps } from "./root";
import { type MultiComboTriggerProps } from "./triggers/multi-combo-trigger.js";
import { type MultiTriggerProps } from "./triggers/multi-trigger.js";
import type { BaseOption } from "./type";
export declare const SmartSelect: {
    <T extends BaseOption>(props: SmartSelectRootProps<T>): import("react/jsx-runtime").JSX.Element;
    Container: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").DialogHTMLAttributes<HTMLDialogElement>, HTMLDialogElement>, "ref"> & import("react").RefAttributes<HTMLDialogElement>>;
    Chip: import("react").ForwardRefExoticComponent<Omit<ChipProps<BaseOption>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
    ChipRemove: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
    BasicTrigger: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
    MultiTrigger: import("react").ForwardRefExoticComponent<Omit<MultiTriggerProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
    ComboTrigger: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "ref"> & import("react").RefAttributes<HTMLInputElement>>;
    MultiComboTrigger: import("react").ForwardRefExoticComponent<Omit<MultiComboTriggerProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
    Option: import("react").ForwardRefExoticComponent<Omit<import("./option.js").OptionTriggerProps<BaseOption>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
};
export declare namespace SmartSelect {
    type Props<T extends BaseOption> = SmartSelectRootProps<T>;
    namespace Component {
        type Container = Popover.Component.Container;
        type Chip<T extends BaseOption> = ChipProps<T>;
        type BasicTrigger = JSX.IntrinsicElements["button"];
        type MultiTrigger = MultiTriggerProps;
        type ComboTrigger = JSX.IntrinsicElements["input"];
        type MultiComboTrigger = MultiComboTriggerProps;
        type ChipRemove = JSX.IntrinsicElements["button"];
    }
}
