import { default as React } from 'react';
import { selectSlots } from './select-styles';
import * as SelectPrimitive from "@radix-ui/react-select";
interface SelectContextProps {
    size: "sm" | "md" | "lg";
    position: "item-aligned" | "popper";
    shape: "full" | "minimal" | "sharp";
}
export declare const useSelectContext: () => SelectContextProps;
export interface SelectProps extends React.ComponentPropsWithoutRef<typeof SelectPrimitive.Root> {
    variant?: "filled" | "filled-inverted" | "outlined" | "outlined-inverted" | "underlined" | "underlined-inverted" | "ghost" | "ghost-inverted";
    color?: "primary" | "secondary" | "error";
    size?: "sm" | "md" | "lg";
    shape?: "full" | "minimal" | "sharp";
    label?: React.ReactNode;
    labelPlacement?: "inside" | "outside" | "outside-left";
    placeholder?: string;
    description?: React.ReactNode;
    errorMessage?: React.ReactNode;
    startContent?: React.ReactNode;
    isInvalid?: boolean;
    className?: string;
    classNames?: Partial<Record<keyof typeof selectSlots, string>>;
    items?: {
        value: string;
        label: string;
        disabled?: boolean;
    }[];
    children?: React.ReactNode;
    position?: "item-aligned" | "popper";
    mobileLayout?: "default" | "bottom-sheet" | "dialog";
}
export declare const Select: React.ForwardRefExoticComponent<SelectProps & React.RefAttributes<HTMLButtonElement>>;
export * from './select-subcomponents';
