import * as react_jsx_runtime from 'react/jsx-runtime';
import { ButtonProps as ButtonProps$1, BreadcrumbProps, LinkProps as LinkProps$1, BreadcrumbsProps as BreadcrumbsProps$1, DisclosureGroupProps, DisclosureProps, DisclosurePanelProps, DateValue, CalendarProps as CalendarProps$1, CheckboxProps, CheckboxGroupProps as CheckboxGroupProps$1, ValidationResult, TextProps, FieldErrorProps, GroupProps, InputProps, LabelProps, PopoverProps as PopoverProps$1, MenuProps, MenuItemProps, MenuSectionProps, Header, SeparatorProps, MenuTriggerProps as MenuTriggerProps$1, SubmenuTriggerProps, ListBoxItemProps, ListBoxProps, SectionProps, TextFieldProps as TextFieldProps$1, DatePickerProps as DatePickerProps$1, TimeValue, TimeFieldProps as TimeFieldProps$1, DateInputProps, Key, TabProps, TabListProps, TabPanelProps, TabsProps as TabsProps$1, GridListProps, GridListItemProps, TagProps as TagProps$1, TagGroupProps as TagGroupProps$1, TagListProps, ToolbarProps as ToolbarProps$1 } from 'react-aria-components';
import * as React from 'react';
import React__default, { ReactNode } from 'react';
import * as tailwind_variants from 'tailwind-variants';
import { S as SelectItemObject, a as SelectProps, f as SelectSectionHeader$1 } from '../WidthWidget-sGUpAqm_.cjs';
export { A as AlignWidget, C as CustomRadio, R as Radio, h as RadioGroup, i as RadioGroupProps, g as SizeWidget, W as WidthWidget } from '../WidthWidget-sGUpAqm_.cjs';
import { ListData } from 'react-stately';

interface ButtonProps extends ButtonProps$1 {
    variant?: 'neutral' | 'primary' | 'destructive' | 'icon';
    size?: 'S' | 'L';
    accent?: boolean;
}
declare function Button(props: ButtonProps): react_jsx_runtime.JSX.Element;

interface Breadcrumb {
    '@id': string;
    title: string;
    icon?: React__default.ReactNode;
}
declare function Breadcrumb(props: BreadcrumbProps & Omit<LinkProps$1, 'className'> & {
    separator?: React__default.ReactNode;
    value?: Breadcrumb;
}): react_jsx_runtime.JSX.Element;
interface BreadcrumbsProps<T extends Breadcrumb = Breadcrumb> extends BreadcrumbsProps$1<T> {
    /**
     * If we should include a root item in the breadcrumbs, we provide a Breadcrumb object.
     */
    root?: Breadcrumb;
    /**
     * Icon component to be used for the root item
     */
    homeIcon?: React__default.ReactNode | boolean | null | undefined;
}
declare function Breadcrumbs<T extends Breadcrumb>(props: BreadcrumbsProps<T>): react_jsx_runtime.JSX.Element;

interface AccordionProps extends DisclosureGroupProps {
    ref?: React.RefObject<HTMLDivElement>;
}
declare const Accordion: ({ children, ref, className, ...props }: AccordionProps) => react_jsx_runtime.JSX.Element;
interface AccordionItemProps extends DisclosureProps {
    ref?: React.Ref<HTMLDivElement>;
}
declare const AccordionItem: ({ className, ref, ...props }: AccordionItemProps) => react_jsx_runtime.JSX.Element;
interface AccordionItemTriggerProps extends ButtonProps$1 {
    ref?: React.Ref<HTMLButtonElement>;
}
declare const AccordionItemTrigger: ({ className, ref, ...props }: AccordionItemTriggerProps) => react_jsx_runtime.JSX.Element;
interface AccordionPanelProps extends DisclosurePanelProps {
    ref?: React.Ref<HTMLDivElement>;
}
declare const AccordionPanel: ({ className, ref, ...props }: AccordionPanelProps) => react_jsx_runtime.JSX.Element;

interface CalendarProps<T extends DateValue> extends Omit<CalendarProps$1<T>, 'visibleDuration'> {
    errorMessage?: string;
}
declare function Calendar<T extends DateValue>({ errorMessage, ...props }: CalendarProps<T>): react_jsx_runtime.JSX.Element;
declare function CalendarHeader(): react_jsx_runtime.JSX.Element;
declare function CalendarGridHeader(): react_jsx_runtime.JSX.Element;

interface CheckboxGroupProps extends Omit<CheckboxGroupProps$1, 'children'> {
    label?: string;
    children?: ReactNode;
    description?: string;
    errorMessage?: string | ((validation: ValidationResult) => string);
}
declare function CheckboxGroup(props: CheckboxGroupProps): react_jsx_runtime.JSX.Element;
declare function Checkbox(props: CheckboxProps): react_jsx_runtime.JSX.Element;

/**
 * Props Types for the Container component.
 * They are able to infer the props of the element type passed to the `as` prop.
 */
type ContainerProps<T extends React__default.ElementType> = {
    /** Primary content. */
    children: React__default.ReactNode;
    /** An element type to render as (string or function). */
    as?: T;
    /** Additional CSS classes. */
    className?: string;
    /** Container width */
    width?: 'layout' | 'default' | 'narrow' | 'full';
} & React__default.ComponentPropsWithoutRef<React__default.ElementType extends T ? 'div' : T>;
declare const Container: <T extends React__default.ElementType = "div">(props: ContainerProps<T>) => react_jsx_runtime.JSX.Element;

declare function Label(props: LabelProps): react_jsx_runtime.JSX.Element;
declare function Description(props: TextProps): react_jsx_runtime.JSX.Element;
declare function FieldError(props: FieldErrorProps): react_jsx_runtime.JSX.Element;
declare const fieldBorderStyles: tailwind_variants.TVReturnType<{
    isFocusWithin: {
        false: string;
        true: string;
    };
    isInvalid: {
        true: string;
    };
    isDisabled: {
        true: string;
    };
}, undefined, undefined, {
    isFocusWithin: {
        false: string;
        true: string;
    };
    isInvalid: {
        true: string;
    };
    isDisabled: {
        true: string;
    };
}, undefined, tailwind_variants.TVReturnType<{
    isFocusWithin: {
        false: string;
        true: string;
    };
    isInvalid: {
        true: string;
    };
    isDisabled: {
        true: string;
    };
}, undefined, undefined, unknown, unknown, undefined>>;
declare const fieldGroupStyles: tailwind_variants.TVReturnType<{
    isFocusWithin: {
        true: string;
        false: string;
    };
    isInvalid: {
        true: string;
    };
    isDisabled: {
        true: string;
    };
}, undefined, "\n    group flex h-11 items-center overflow-hidden rounded-lg bg-quanta-snow text-quanta-space\n    hover:bg-quanta-smoke\n    read-only:hover:bg-quanta-air\n    focus:bg-quanta-air\n    active:bg-quanta-air\n    forced-colors:bg-[Field]\n  ", {
    isFocusVisible: {
        false: string;
        true: string;
    };
}, undefined, tailwind_variants.TVReturnType<{
    isFocusVisible: {
        false: string;
        true: string;
    };
}, undefined, "outline-quanta-cobalt outline forced-colors:outline-[Highlight]", {
    isFocusVisible: {
        false: string;
        true: string;
    };
}, undefined, tailwind_variants.TVReturnType<{
    isFocusVisible: {
        false: string;
        true: string;
    };
}, undefined, "outline-quanta-cobalt outline forced-colors:outline-[Highlight]", unknown, unknown, undefined>>>;
declare function FieldGroup(props: GroupProps): react_jsx_runtime.JSX.Element;
declare const inputStyles: tailwind_variants.TVReturnType<{
    isFocused: {
        true: string;
        false: string;
    };
    isInvalid: {
        true: string;
    };
    isDisabled: {
        true: string;
    };
}, undefined, "rounded-md p-3", {
    isFocusVisible: {
        false: string;
        true: string;
    };
}, undefined, tailwind_variants.TVReturnType<{
    isFocusVisible: {
        false: string;
        true: string;
    };
}, undefined, "outline-quanta-cobalt outline forced-colors:outline-[Highlight]", {
    isFocusVisible: {
        false: string;
        true: string;
    };
}, undefined, tailwind_variants.TVReturnType<{
    isFocusVisible: {
        false: string;
        true: string;
    };
}, undefined, "outline-quanta-cobalt outline forced-colors:outline-[Highlight]", unknown, unknown, undefined>>>;
declare function Input(props: InputProps): react_jsx_runtime.JSX.Element;
type FieldWrapperProps = {
    wrapped?: boolean;
    children: React__default.ReactNode;
    className?: string;
    isRequired?: boolean;
    label?: string;
    description?: string;
    errorMessage?: string;
    placeholder?: string;
    isFocused?: boolean;
    isInvalid?: boolean;
    isDisabled?: boolean;
    isReadOnly?: boolean;
    'aria-label'?: string;
    'aria-labelledby'?: string;
    slot?: string;
} & React__default.HTMLAttributes<HTMLDivElement>;
declare const Field: React__default.ForwardRefExoticComponent<{
    wrapped?: boolean;
    children: React__default.ReactNode;
    className?: string;
    isRequired?: boolean;
    label?: string;
    description?: string;
    errorMessage?: string;
    placeholder?: string;
    isFocused?: boolean;
    isInvalid?: boolean;
    isDisabled?: boolean;
    isReadOnly?: boolean;
    'aria-label'?: string;
    'aria-labelledby'?: string;
    slot?: string;
} & React__default.HTMLAttributes<HTMLDivElement> & React__default.RefAttributes<HTMLDivElement>>;
declare const FieldWrapper: (props: FieldWrapperProps) => react_jsx_runtime.JSX.Element;

interface LinkProps extends LinkProps$1 {
    variant?: 'primary' | 'secondary';
}
declare function Link(props: LinkProps): react_jsx_runtime.JSX.Element;

interface PopoverProps extends Omit<PopoverProps$1, 'children'> {
    showArrow?: boolean;
    children: React__default.ReactNode;
}
declare function Popover({ children, showArrow, className, ...props }: PopoverProps): react_jsx_runtime.JSX.Element;

declare function Menu<T extends object>(props: MenuProps<T>): react_jsx_runtime.JSX.Element;
declare function MenuItem(props: MenuItemProps): react_jsx_runtime.JSX.Element;
declare function MenuSeparator(props: SeparatorProps): react_jsx_runtime.JSX.Element;
declare function MenuSection<T extends object>(props: MenuSectionProps<T>): react_jsx_runtime.JSX.Element;
declare function MenuSectionHeader(props: React__default.ComponentProps<typeof Header>): react_jsx_runtime.JSX.Element;
interface MenuTriggerProps extends MenuTriggerProps$1 {
    placement?: PopoverProps['placement'];
}
declare function MenuTrigger(props: MenuTriggerProps): react_jsx_runtime.JSX.Element;
declare function SubmenuTrigger(props: SubmenuTriggerProps): react_jsx_runtime.JSX.Element;

declare function Select<T extends object = SelectItemObject, M extends 'single' | 'multiple' = 'single'>({ label, description, errorMessage, children, items, ...props }: SelectProps<T, M>): react_jsx_runtime.JSX.Element;
declare function SelectListBox<T extends object>(props: ListBoxProps<T>): react_jsx_runtime.JSX.Element;
declare function SelectItem(props: ListBoxItemProps): react_jsx_runtime.JSX.Element;
declare function SelectSection<T extends object>(props: SectionProps<T>): react_jsx_runtime.JSX.Element;
declare function SelectSectionHeader(props: React__default.ComponentProps<typeof SelectSectionHeader$1>): react_jsx_runtime.JSX.Element;

interface TextFieldProps extends TextFieldProps$1 {
    label?: string;
    description?: string;
    errorMessage?: string | ((validation: ValidationResult) => string);
    placeholder?: string;
}
declare function TextField({ label, description, errorMessage, ...props }: TextFieldProps): react_jsx_runtime.JSX.Element;

interface DateTimePickerProps extends Omit<DatePickerProps$1<DateValue>, 'value' | 'defaultValue' | 'onChange'> {
    label?: string;
    description?: string;
    errorMessage?: string | ((validation: ValidationResult) => string);
    resettable?: boolean;
    value?: string | null;
    defaultValue?: string | null;
    onChange?: (value: string | null) => void;
}
declare function DateTimePicker({ label, description, errorMessage, resettable, value, defaultValue, onChange, isDisabled, granularity, ...props }: DateTimePickerProps): react_jsx_runtime.JSX.Element;

interface DatePickerProps extends Omit<DateTimePickerProps, 'granularity'> {
    label?: string;
    description?: string;
    errorMessage?: string | ((validation: ValidationResult) => string);
}
declare function DatePicker({ label, description, errorMessage, ...props }: DatePickerProps): react_jsx_runtime.JSX.Element;

interface TimeFieldProps<T extends TimeValue> extends TimeFieldProps$1<T> {
    label?: string;
    description?: string;
    errorMessage?: string | ((validation: ValidationResult) => string);
}
declare function TimeField<T extends TimeValue>({ label, description, errorMessage, ...props }: TimeFieldProps<T>): react_jsx_runtime.JSX.Element;

declare function DateInput(props: Omit<DateInputProps, 'children'>): react_jsx_runtime.JSX.Element;

type Option = {
    id: Key;
    name: string;
};
interface MultiSelectProps<T extends object> {
    items: Array<T>;
    selectedItems: ListData<T>;
    className?: string;
    placeholder?: string;
    label?: string;
    description?: string;
    creatable?: boolean;
    onItemInserted?: (key: Key) => void;
    onItemCleared?: (key: Key) => void;
    renderEmptyState?: (inputValue: string) => React__default.ReactNode;
}
declare function MultiSelect({ label, placeholder, items, className, description, onItemCleared, onItemInserted, renderEmptyState, selectedItems, creatable, ...props }: MultiSelectProps<Option>): react_jsx_runtime.JSX.Element;

declare function Separator(props: SeparatorProps): react_jsx_runtime.JSX.Element;

type SpinnerSize = 'xs' | 'sm' | 'lg';
interface SpinnerProps extends React__default.HTMLAttributes<HTMLDivElement> {
    size?: SpinnerSize | number | string;
    label?: string | null;
    isDecorative?: boolean;
}
declare function Spinner({ size, label, isDecorative, className, style, 'aria-label': ariaLabelProp, ...props }: SpinnerProps): react_jsx_runtime.JSX.Element;

interface TabsProps extends TabsProps$1 {
    tabs: Array<{
        id: string;
        title: string;
        content: React__default.ReactNode;
    }>;
    orientation?: 'vertical' | 'horizontal';
}
declare function TabList<T extends object>(props: TabListProps<T>): react_jsx_runtime.JSX.Element;
declare function Tab(props: TabProps): react_jsx_runtime.JSX.Element;
declare function TabPanel(props: TabPanelProps): react_jsx_runtime.JSX.Element;
declare function Tabs(props: TabsProps): react_jsx_runtime.JSX.Element;

declare function GridList<T extends object>({ children, ...props }: GridListProps<T>): react_jsx_runtime.JSX.Element;
declare function GridListItem({ children, className, ...props }: GridListItemProps): react_jsx_runtime.JSX.Element;

declare const colors: {
    gray: string;
    green: string;
    yellow: string;
    blue: string;
};
type Color = keyof typeof colors;
interface TagGroupProps<T> extends Omit<TagGroupProps$1, 'children'>, Pick<TagListProps<T>, 'items' | 'children' | 'renderEmptyState'> {
    color?: Color;
    label?: string;
    description?: string;
    errorMessage?: string;
}
interface TagProps extends TagProps$1 {
    color?: Color;
}
declare function TagGroup<T extends object>({ label, description, errorMessage, items, children, renderEmptyState, ...props }: TagGroupProps<T>): react_jsx_runtime.JSX.Element;
declare function Tag({ children, color, ...props }: TagProps): react_jsx_runtime.JSX.Element;

type ToolbarProps = ToolbarProps$1;
declare function Toolbar(props: ToolbarProps): react_jsx_runtime.JSX.Element;

export { Accordion, AccordionItem, type AccordionItemProps, AccordionItemTrigger, type AccordionItemTriggerProps, AccordionPanel, type AccordionPanelProps, type AccordionProps, Breadcrumb, Breadcrumbs, Button, type ButtonProps, Calendar, CalendarGridHeader, CalendarHeader, type CalendarProps, Checkbox, CheckboxGroup, type CheckboxGroupProps, Container, DateInput, DatePicker, type DatePickerProps, DateTimePicker, type DateTimePickerProps, Description, Field, FieldError, FieldGroup, FieldWrapper, GridList, GridListItem, Input, Label, Link, Menu, MenuItem, MenuSection, MenuSectionHeader, MenuSeparator, MenuTrigger, MultiSelect, type MultiSelectProps, type Option, Popover, type PopoverProps, Select, SelectItem, SelectItemObject, SelectListBox, SelectProps, SelectSection, SelectSectionHeader, Separator, Spinner, type SpinnerProps, SubmenuTrigger, Tab, TabList, TabPanel, Tabs, type TabsProps, Tag, TagGroup, type TagGroupProps, type TagProps, TextField, type TextFieldProps, TimeField, type TimeFieldProps, Toolbar, type ToolbarProps, fieldBorderStyles, fieldGroupStyles, inputStyles };
