@fayegram-ai/faye-ui/overlays
Public exports and dependency-resolved component properties, with usage and rendering guidance.
Import
import { AlertDialog, Backdrop, ContextMenu } from '@fayegram-ai/faye-ui/overlays';Usage and behavior guide · API JSON
This entry has no declared client boundary; individual exported behavior still follows its rendering contract.
Public exports
| Name | Kind | Resolved declaration type |
|---|---|---|
AlertDialog | value | { readonly Root: typeof Base.Root; readonly createHandle: typeof Base.createHandle; readonly Trigger: { (input: import("@base-ui/react").AlertDialogTriggerProps<unknown> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"alert-dialog", "size"> | undefined; readonly tone?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"alert-dialog", "tone"> | undefined; } | undefined; }): import("react").ReactElement; displayName: string; }; readonly Backdrop: { (input: Omit<import("@base-ui/react").AlertDialogBackdropProps, "ref"> & import("react").RefAttributes<HTMLDivElement> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"alert-dialog", "size"> | undefined; readonly to… (full type in API JSON) |
Backdrop | value | ({ className, ...props }: HTMLAttributes<HTMLDivElement>) => import("react").JSX.Element |
ContextMenu | value | Omit<{ readonly Root: typeof MenuRoot; readonly SubmenuRoot: typeof Base.SubmenuRoot; readonly RadioGroup: NamedExoticComponent<Omit<MenuRadioGroupProps, "ref"> & RefAttributes<HTMLDivElement>>; readonly Trigger: { (input: MenuTriggerProps<unknown> & RefAttributes<HTMLElement> & { variants?: { readonly size?: import("packages/faye-ui/dist/contracts/visual-variants").VisualVariant<"menu", "size"> | undefined; readonly tone?: import("packages/faye-ui/dist/contracts/visual-variants").VisualVariant<"menu", "tone"> | undefined; } | undefined; }): ReactElement<unknown, string | JSXElementConstructor<any>>; displayName: string; }; readonly Positioner: { (input: Omit<MenuPositionerProps, "ref"> & RefAttributes<HTMLDivElement> & { variants?: { readonly size?: import("packages/faye-ui/dist/contracts… (full type in API JSON) |
Dialog | value | { readonly Root: <Payload>(props: Base.Root.Props<Payload>) => React.JSX.Element; readonly createHandle: typeof Base.createHandle; readonly Trigger: { (input: import("@base-ui/react").DialogTriggerProps<unknown> & import("react").RefAttributes<HTMLElement> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"dialog", "size"> | undefined; readonly tone?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"dialog", "tone"> | undefined; } | undefined; }): import("react").ReactElement; displayName: string; }; readonly Backdrop: { (input: Omit<import("@base-ui/react").AlertDialogBackdropProps, "ref"> & import("react").RefAttributes<HTMLDivElement> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visua… (full type in API JSON) |
DrawerPopupProps | type | DrawerPopupProps |
Drawer | value | Omit<{ readonly Root: <Payload>(props: DialogRoot.Props<Payload>) => React.JSX.Element; readonly createHandle: typeof createDialogHandle; readonly Trigger: { (input: DialogTriggerProps<unknown> & RefAttributes<HTMLElement> & { variants?: { readonly size?: import("packages/faye-ui/dist/contracts/visual-variants").VisualVariant<"dialog", "size"> | undefined; readonly tone?: import("packages/faye-ui/dist/contracts/visual-variants").VisualVariant<"dialog", "tone"> | undefined; } | undefined; }): ReactElement<unknown, string | JSXElementConstructor<any>>; displayName: string; }; readonly Backdrop: { (input: Omit<DialogBackdropProps, "ref"> & RefAttributes<HTMLDivElement> & { variants?: { readonly size?: import("packages/faye-ui/dist/contracts/visual-variants").VisualVariant<"dialog", "size"> | … (full type in API JSON) |
Menu | value | { readonly Root: typeof Base.Root; readonly SubmenuRoot: typeof Base.SubmenuRoot; readonly RadioGroup: import("react").NamedExoticComponent<Omit<import("@base-ui/react").ContextMenuRadioGroupProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>; readonly Trigger: { (input: import("@base-ui/react").MenuTriggerProps<unknown> & import("react").RefAttributes<HTMLElement> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"menu", "size"> | undefined; readonly tone?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"menu", "tone"> | undefined; } | undefined; }): import("react").ReactElement; displayName: string; }; readonly Positioner: { (input: Omit<import("@base-ui/react").MenuPositionerProps, "ref"> & import("… (full type in API JSON) |
Modal | value | (input: ModalProps) => import("react").JSX.Element |
ModalProps | type | ModalProps |
Popover | value | { readonly Root: typeof Base.Root; readonly Trigger: { (input: import("@base-ui/react/internals/types").NativeButtonProps & Omit<import("@base-ui/react/internals/types").WithBaseUIEvent<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>>, "className" | "color" | "defaultValue" | "defaultChecked" | "style"> & { className?: string | ((state: import("@base-ui/react").PopoverTriggerState) => string | undefined) | undefined; render?: import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | import("@base-ui/react").ComponentRenderFn<import("@base-ui/react").HTMLProps, import("@base-ui/react").PopoverTriggerState> | undefined; style?: import("react").CSSProperties | ((state: import("@base-ui/react").Pop… (full type in API JSON) |
Portal | value | ({ children, container, disabled }: PortalProps) => import("react").JSX.Element | null |
PortalProps | type | PortalProps |
PreviewCard | value | { readonly Root: <Payload>(props: Base.Root.Props<Payload>) => React.JSX.Element; readonly Trigger: { (input: Base.Trigger.Props<unknown> & import("react").RefAttributes<HTMLElement> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"preview-card", "size"> | undefined; readonly tone?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"preview-card", "tone"> | undefined; } | undefined; }): import("react").ReactElement; displayName: string; }; readonly Positioner: { (input: Omit<import("@base-ui/react").PreviewCardPositionerProps, "ref"> & import("react").RefAttributes<HTMLDivElement> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"preview-card", "size"> | undef… (full type in API JSON) |
TouchTooltip | value | ({ children, content, open, defaultOpen, onOpenChange, disabled, longPressDelay, touchCloseDelay, moveTolerance, triggerProps, positionerProps, popupProps }: TouchTooltipProps) => import("react").JSX.Element |
Tooltip | value | { readonly Provider: import("react").FC<import("@base-ui/react").TooltipProviderProps>; readonly Root: <Payload>(props: Base.Root.Props<Payload>) => React.JSX.Element; readonly Trigger: { (input: Base.Trigger.Props<unknown> & import("react").RefAttributes<HTMLElement> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"tooltip", "size"> | undefined; readonly tone?: import("@fayegram-ai/faye-ui/contracts/visual-variants").VisualVariant<"tooltip", "tone"> | undefined; } | undefined; }): ReactElement; displayName: string; }; readonly Positioner: { (input: Omit<import("@base-ui/react").TooltipPositionerProps, "ref"> & import("react").RefAttributes<HTMLDivElement> & { variants?: { readonly size?: import("@fayegram-ai/faye-ui/contracts/visual-… (full type in API JSON) |
TouchTooltipProps | type | TouchTooltipProps |
Popper | value | ({ open, anchor, placement, strategy, distance, collisionPadding, portalled, container, onPositionError, style, className, children, ...props }: PopperProps) => import("react").JSX.Element | null |
PopperProps | type | PopperProps |
SwipeDrawer | value | { readonly Root: typeof Base.Root; readonly Provider: typeof Base.Provider; readonly VirtualKeyboardProvider: typeof Base.VirtualKeyboardProvider; readonly createHandle: typeof Base.createHandle; readonly Portal: typeof Portal; readonly Trigger: { (input: import("@base-ui/react").DrawerTriggerProps<unknown> & import("react").RefAttributes<HTMLElement> & { variants?: {} | undefined; }): import("react").ReactElement; displayName: string; }; readonly SwipeArea: { (input: Omit<import("@base-ui/react").DrawerSwipeAreaProps, "ref"> & import("react").RefAttributes<HTMLDivElement> & { variants?: {} | undefined; }): import("react").ReactElement; displayName: string; }; readonly Backdrop: { (input: Omit<import("@base-ui/react").DrawerBackdropProps, "ref"> & import("react").RefAttributes<HTMLDivEleme… (full type in API JSON) |
InteractionHint | value | ({ children, content, disabled, id, side, align }: InteractionHintProps) => import("react").JSX.Element |
InteractionHintProps | type | InteractionHintProps |
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/overlays/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.