Skip to content
fayeuiStatic / 0.1.0
LLMs
API / Static edition

@fayegram-ai/faye-ui/controls

Public exports and dependency-resolved component properties, with usage and rendering guidance.

Import

import { Button, IconButton, ButtonGroup } from '@fayegram-ai/faye-ui/controls';

Usage and behavior guide · API JSON

This entry has no declared client boundary; individual exported behavior still follows its rendering contract.

Public exports

NameKindResolved declaration type
Buttonvalue(input: ButtonProps) => import("react").JSX.Element
IconButtonvalue({ className, pendingPosition, ...props }: IconButtonProps) => import("react").JSX.Element
ButtonGroupvalue(input: ButtonGroupProps) => import("react").JSX.Element
ButtonVariantOverridestypeButtonVariantOverrides
ButtonToneOverridestypeButtonToneOverrides
ButtonSizeOverridestypeButtonSizeOverrides
ButtonTonetypeButtonTone
ButtonSizetypeButtonSize
ButtonVarianttypeButtonVariant
ButtonPropstypeButtonProps
IconButtonPropstypeIconButtonProps
ButtonGroupPropstypeButtonGroupProps
Checkboxvalue{ readonly Root: { (input: Omit<import("@base-ui/react").CheckboxRootProps, "ref"> & import("react").RefAttributes<HTMLElement> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"checkbox", "size"> | undefined; readonly tone?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"checkbox", "tone"> | undefined; } | undefined; }): import("react").ReactElement; displayName: string; }; readonly Indicator: { (input: Omit<import("@base-ui/react").CheckboxIndicatorProps, "ref"> & import("react").RefAttributes<HTMLSpanElement> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"checkbox", "size"> | undefined; readonly tone?: import("@fayegram-ai/faye-ui/contracts/visual-var… (full type in API JSON)
CheckboxGroupvalue{ (input: Omit<import("@base-ui/react").CheckboxGroupProps, "ref"> & import("react").RefAttributes<HTMLDivElement> & { variants?: Readonly<Record<string, string>> | undefined; }): import("react").ReactElement; displayName: string; }
Comboboxvalue{ readonly Root: typeof Base.Root; readonly List: import("react").ForwardRefExoticComponent<Omit<import("@base-ui/react").AutocompleteListProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>; readonly Collection: typeof Base.Collection; readonly Value: typeof Base.Value; readonly useFilter: typeof Base.useFilter; readonly Label: { (input: Omit<import("@base-ui/react").ComboboxLabelProps, "ref"> & import("react").RefAttributes<HTMLDivElement> & { variants?: { readonly variant?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"combobox", "variant"> | undefined; readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"combobox", "size"> | undefined; readonly tone?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVa… (full type in API JSON)
Fieldvalue{ readonly Control: import("react").ForwardRefExoticComponent<Omit<import("@base-ui/react").FieldControlProps, "ref"> & import("react").RefAttributes<HTMLElement>>; readonly Validity: import("react").FC<import("@base-ui/react").FieldValidityProps>; readonly Root: { (input: Omit<import("@base-ui/react").FieldRootProps, "ref"> & import("react").RefAttributes<HTMLDivElement> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"field", "size"> | undefined; readonly tone?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"field", "tone"> | undefined; } | undefined; }): import("react").ReactElement; displayName: string; }; readonly Label: { (input: Omit<import("@base-ui/react").FieldLabelProps, "ref"> & import("react").Ref… (full type in API JSON)
FieldLayoutvalue({ label, controlId, description, error, required, invalid, describedBy, children, ...props }: FieldLayoutProps) => import("react").JSX.Element
ControlLabelvalue({ label, description, controlId, describedBy, disabled, children, className, ...props }: ControlLabelProps) => import("react").JSX.Element
FieldControlAttributestypeFieldControlAttributes
FieldLayoutPropstypeFieldLayoutProps
ControlLabelAttributestypeControlLabelAttributes
ControlLabelPropstypeControlLabelProps
Fieldsetvalue{ readonly Root: { (input: Omit<import("@base-ui/react").FieldsetRootProps, "ref"> & import("react").RefAttributes<HTMLElement> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"fieldset", "size"> | undefined; readonly tone?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"fieldset", "tone"> | undefined; } | undefined; }): import("react").ReactElement; displayName: string; }; readonly Legend: { (input: Omit<import("@base-ui/react").FieldsetLegendProps, "ref"> & import("react").RefAttributes<HTMLDivElement> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"fieldset", "size"> | undefined; readonly tone?: import("@fayegram-ai/faye-ui/contracts/visual-variants")… (full type in API JSON)
Formvalue{ (input: Base.Props<Record<string, any>> & { ref?: React.Ref<HTMLFormElement> | undefined; } & { variants?: Readonly<Record<string, string>> | undefined; }): import("react").ReactElement; displayName: string; }
Inputvalue(input: InputProps) => import("react").JSX.Element
Textareavalue(input: TextareaProps) => import("react").JSX.Element
InputPropstypeInputProps
TextareaPropstypeTextareaProps
Linkvalue({ subtle, className, target, rel, ...props }: LinkProps) => import("react").JSX.Element
LinkPropstypeLinkProps
NumberFieldvalue{ readonly Root: typeof Root; readonly Group: { (input: Omit<import("@base-ui/react").NumberFieldGroupProps, "ref"> & import("react").RefAttributes<HTMLDivElement> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"number-field", "size"> | undefined; readonly tone?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"number-field", "tone"> | undefined; } | undefined; }): import("react").ReactElement; displayName: string; }; readonly Input: { (input: Omit<import("@base-ui/react").NumberFieldInputProps, "ref"> & import("react").RefAttributes<HTMLInputElement> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"number-field", "size"> | undefined; readonly tone?: impor… (full type in API JSON)
Radiovalue{ readonly Root: { (input: Base.Root.Props<unknown> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"radio", "size"> | undefined; readonly tone?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"radio", "tone"> | undefined; } | undefined; }): import("react").ReactElement; displayName: string; }; readonly Indicator: { (input: Omit<import("@base-ui/react").RadioIndicatorProps, "ref"> & import("react").RefAttributes<HTMLSpanElement> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"radio", "size"> | undefined; readonly tone?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"radio", "tone"> | undefined; } | undefined; }): import("react").R… (full type in API JSON)
RadioGroupvalue{ (input: Base.Props<unknown> & { variants?: Readonly<Record<string, string>> | undefined; }): import("react").ReactElement; displayName: string; }
SelectFieldvalue({ items, value, defaultValue, onValueChange, name, form, required, disabled, invalid, placeholder, nativeOnMobile, native, size, variant, tone, ref, ...props }: SelectFieldProps) => import("react").JSX.Element
Selectvalue{ readonly Root: typeof Base.Root; readonly List: { (input: Omit<import("@base-ui/react").SelectListProps, "ref"> & import("react").RefAttributes<HTMLDivElement> & { variants?: { readonly variant?: VisualVariant<"select", "variant"> | undefined; readonly size?: VisualVariant<"select", "size"> | undefined; readonly tone?: VisualVariant<"select", "tone"> | undefined; } | undefined; }): import("react").ReactElement; displayName: string; }; readonly Trigger: { (input: Omit<import("@base-ui/react").SelectTriggerProps, "ref"> & import("react").RefAttributes<HTMLButtonElement> & { variants?: { readonly variant?: VisualVariant<"select", "variant"> | undefined; readonly size?: VisualVariant<"select", "size"> | undefined; readonly tone?: VisualVariant<"select", "tone"> | undefined; } | undefined; })… (full type in API JSON)
SelectFieldItemtypeSelectFieldItem
SelectFieldPropstypeSelectFieldProps
SliderRootPropstypeSliderRootProps<Value>
SliderMarktypeSliderMark
DiscreteSliderPropstypeDiscreteSliderProps<Value>
Slidervalue{ readonly Root: typeof Root; readonly DiscreteRoot: typeof DiscreteRoot; readonly Marks: { (input: HTMLAttributes<HTMLDivElement> & { marks: readonly SliderMark[]; } & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"slider", "size"> | undefined; readonly tone?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"slider", "tone"> | undefined; } | undefined; }): import("react").ReactElement; displayName: string; }; readonly Control: { (input: Omit<import("@base-ui/react").SliderControlProps, "ref"> & import("react").RefAttributes<HTMLDivElement> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"slider", "size"> | undefined; readonly tone?: import("@fayegram-ai/fa… (full type in API JSON)
Switchvalue{ readonly Root: { (input: Omit<import("@base-ui/react").SwitchRootProps, "ref"> & import("react").RefAttributes<HTMLElement> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"switch", "size"> | undefined; readonly tone?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"switch", "tone"> | undefined; } | undefined; }): import("react").ReactElement; displayName: string; }; readonly Thumb: { (input: Omit<import("@base-ui/react").SwitchThumbProps, "ref"> & import("react").RefAttributes<HTMLSpanElement> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"switch", "size"> | undefined; readonly tone?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVari… (full type in API JSON)
TextFieldvalue({ label, description, error, id, containerClassName, startAdornment, endAdornment, ...props }: TextFieldProps) => import("react").JSX.Element
TextFieldPropstypeTextFieldProps
TextareaFieldvalue({ label, description, error, containerClassName, autosize, minRows, maxRows, id, ...props }: TextareaFieldProps) => import("react").JSX.Element
TextareaFieldPropstypeTextareaFieldProps
Togglevalue{ (input: Base.Props<string> & import("react").RefAttributes<HTMLButtonElement> & { variants?: Readonly<Record<string, string>> | undefined; }): import("react").ReactElement; displayName: string; }
ToggleGroupvalue{ (input: Base.Props<string> & import("react").RefAttributes<HTMLDivElement> & { variants?: Readonly<Record<string, string>> | undefined; }): import("react").ReactElement; displayName: string; }
NativeSelectvalue({ profile, size, variant, htmlSize, invalid, className, ...props }: NativeSelectProps) => import("react").JSX.Element
NativeSelectPropstypeNativeSelectProps
Chipvalue(input: ChipProps) => import("react").JSX.Element
ChipPropstypeChipProps
Ratingvalue(input: RatingProps) => import("react").JSX.Element
RatingPropstypeRatingProps
AutosizeTextareavalue({ minRows, maxRows, ref, value, defaultValue, onChange, style, ...props }: AutosizeTextareaProps) => import("react").JSX.Element
AutosizeTextareaPropstypeAutosizeTextareaProps
Autocompletevalue{ readonly Root: typeof Base.Root; readonly List: import("react").ForwardRefExoticComponent<Omit<import("@base-ui/react").AutocompleteListProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>; readonly Collection: typeof Base.Collection; readonly Value: typeof Base.Value; readonly useFilter: typeof import("@base-ui/react/internals/filter").getFilter; readonly useFilteredItems: typeof Base.useFilteredItems; readonly Portal: typeof Portal; readonly Input: { (input: Omit<import("@base-ui/react").AutocompleteInputProps, "ref"> & import("react").RefAttributes<HTMLInputElement> & { variants?: { readonly variant?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"autocomplete", "variant"> | undefined; readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-var… (full type in API JSON)
OTPFieldvalue{ readonly Root: { (input: Omit<import("@base-ui/react").OTPFieldRootProps, "ref"> & import("react").RefAttributes<HTMLDivElement> & { variants?: {} | undefined; }): import("react").ReactElement; displayName: string; }; readonly Input: { (input: Omit<import("@base-ui/react").OTPFieldInputProps, "ref"> & import("react").RefAttributes<HTMLInputElement> & { variants?: {} | undefined; }): import("react").ReactElement; displayName: string; }; readonly Separator: { (input: Omit<import("@base-ui/react").SeparatorProps, "ref"> & import("react").RefAttributes<HTMLDivElement> & { variants?: {} | undefined; }): import("react").ReactElement; displayName: string; }; }
InputGroupvalue({ profile, className, frame, variant, invalid, disabled, readOnly, ...props }: InputGroupProps) => import("react").JSX.Element
InputAdornmentvalue({ profile, position, className, ...props }: HTMLAttributes<HTMLSpanElement> & { position?: "start" | "end"; profile?: ComponentProfile; }) => import("react").JSX.Element
InputGroupPropstypeInputGroupProps

Defaults and customization

Defaults and native behavior are documented in the linked family guide. This reference does not infer a default from an optional property.

Use semantic tokens, public part hooks and customization sheets. Keep visual configuration separate from application state.

State, events and accessibility

For interactive controls, pair a controlled value/open prop with its corresponding change callback; default props initialize uncontrolled state. Keep application validation and submission policy explicit. Name controls with visible labels, name icon-only actions on the button, and preserve focus and dismissal behavior when replacing parts. Use native form names and submit/reset types where supported. See the usage guide for component-specific behavior and live examples.

Declaration authority

Generated from packages/faye-ui/dist/controls/index.d.ts after the semantic package build. Common native/React attributes are intentionally omitted from property tables. Generic overloads, discriminated unions and complete inherited attributes remain authoritative in installed TypeScript declarations. React DOM attributes and Base UI component contracts describe the inherited foundations.