import { ComponentPropsWithoutRef, ReactNode } from 'react';
import { ExperimentalChipProps } from './Chip';
type OptionValue = string | symbol | number | bigint | boolean | Record<string, unknown>;
export declare namespace ExperimentalSelectChipProps {
    interface BaseProps<V extends OptionValue | null> extends Omit<ExperimentalChipProps.ButtonProps, 'selected' | 'type' | 'value' | 'defaultValue' | 'onChange'> {
        valueIdKey?: V extends Record<string, unknown> ? keyof V : never;
        valueLabelKey?: V extends Record<string, unknown> ? keyof V : never;
        valueLabel?: ReactNode;
        label?: string;
        /** @default false */
        disabled?: boolean;
        /** @default "start" */
        menuAlign?: 'start' | 'center' | 'end';
    }
    interface SingleProps<T extends OptionValue, V extends T | null> extends BaseProps<V> {
        value?: V;
        defaultValue?: V;
        onChange?: (value: V) => void;
        /** @default false */
        clearable?: V extends null ? true : false;
        /** @default false */
        multiple?: false;
    }
    interface MultipleProps<T extends OptionValue, V extends T | null> extends BaseProps<V> {
        value?: T[];
        defaultValue?: T[];
        onChange?: (value: T[]) => void;
        /** @default false */
        clearable?: false;
        /** @default false */
        multiple: true;
    }
}
export type ExperimentalSelectChipProps<T extends OptionValue, V extends T | null> = ExperimentalSelectChipProps.MultipleProps<T, V> | ExperimentalSelectChipProps.SingleProps<T, V>;
export declare const ExperimentalSelectChipRoot: <T extends OptionValue, V extends T | null>(props: ExperimentalSelectChipProps<T, V> & import('react').RefAttributes<HTMLButtonElement>) => ReactNode | null;
export interface ExperimentalSelectChipOptionProps extends ComponentPropsWithoutRef<'div'> {
    value?: OptionValue | null;
    disabled?: boolean;
}
export declare const ExperimentalSelectChipOption: import('react').ForwardRefExoticComponent<ExperimentalSelectChipOptionProps & import('react').RefAttributes<HTMLElement>>;
export {};
//# sourceMappingURL=SelectChip.parts.d.ts.map