UNPKG

@loke/ui

Version:
136 lines (135 loc) 8.67 kB
import { DismissableLayer } from "@loke/ui/dismissable-layer"; import { FocusScope } from "@loke/ui/focus-scope"; import * as PopperPrimitive from "@loke/ui/popper"; import { Portal as PortalPrimitive } from "@loke/ui/portal"; import { Primitive } from "@loke/ui/primitive"; import { type ComponentPropsWithoutRef, type FC, type ReactNode } from "react"; type Direction = "ltr" | "rtl"; declare const createSelectScope: import("@loke/ui/context").CreateScope; interface SelectSharedProps { autoComplete?: string; children?: ReactNode; defaultOpen?: boolean; dir?: Direction; disabled?: boolean; form?: string; name?: string; onOpenChange?(open: boolean): void; open?: boolean; required?: boolean; } type SelectProps = SelectSharedProps & { value?: string; defaultValue?: string; onValueChange?(value: string): void; }; declare const Select: FC<SelectProps>; type PrimitiveButtonProps = ComponentPropsWithoutRef<typeof Primitive.button>; interface SelectTriggerProps extends PrimitiveButtonProps { } declare const SelectTrigger: import("react").ForwardRefExoticComponent<SelectTriggerProps & import("react").RefAttributes<HTMLButtonElement>>; type PrimitiveSpanProps = ComponentPropsWithoutRef<typeof Primitive.span>; interface SelectValueProps extends Omit<PrimitiveSpanProps, "placeholder"> { placeholder?: ReactNode; } declare const SelectValue: import("react").ForwardRefExoticComponent<SelectValueProps & import("react").RefAttributes<HTMLSpanElement>>; interface SelectIconProps extends PrimitiveSpanProps { } declare const SelectIcon: import("react").ForwardRefExoticComponent<SelectIconProps & import("react").RefAttributes<HTMLSpanElement>>; type PortalProps = ComponentPropsWithoutRef<typeof PortalPrimitive>; interface SelectPortalProps { children?: ReactNode; /** * Specify a container element to portal the content into. */ container?: PortalProps["container"]; } declare const SelectPortal: FC<SelectPortalProps>; interface SelectContentProps extends SelectContentImplProps { } declare const SelectContent: import("react").ForwardRefExoticComponent<SelectContentProps & import("react").RefAttributes<HTMLDivElement>>; type DismissableLayerProps = ComponentPropsWithoutRef<typeof DismissableLayer>; type FocusScopeProps = ComponentPropsWithoutRef<typeof FocusScope>; type SelectPopperPrivateProps = { onPlaced?: PopperContentProps["onPlaced"]; }; interface SelectContentImplProps extends Omit<SelectPopperPositionProps, keyof SelectPopperPrivateProps>, Omit<SelectItemAlignedPositionProps, keyof SelectPopperPrivateProps> { /** * Event handler called when auto-focusing on close. * Can be prevented. */ onCloseAutoFocus?: FocusScopeProps["onUnmountAutoFocus"]; /** * Event handler called when the escape key is down. * Can be prevented. */ onEscapeKeyDown?: DismissableLayerProps["onEscapeKeyDown"]; /** * Event handler called when the a `pointerdown` event happens outside of the `DismissableLayer`. * Can be prevented. */ onPointerDownOutside?: DismissableLayerProps["onPointerDownOutside"]; position?: "item-aligned" | "popper"; } interface SelectItemAlignedPositionProps extends PrimitiveDivProps, SelectPopperPrivateProps { } type PopperContentProps = ComponentPropsWithoutRef<typeof PopperPrimitive.Content>; interface SelectPopperPositionProps extends PopperContentProps, SelectPopperPrivateProps { } type PrimitiveDivProps = ComponentPropsWithoutRef<typeof Primitive.div>; interface SelectViewportProps extends PrimitiveDivProps { nonce?: string; } declare const SelectViewport: import("react").ForwardRefExoticComponent<SelectViewportProps & import("react").RefAttributes<HTMLDivElement>>; interface SelectGroupProps extends PrimitiveDivProps { } declare const SelectGroup: import("react").ForwardRefExoticComponent<SelectGroupProps & import("react").RefAttributes<HTMLDivElement>>; interface SelectLabelProps extends PrimitiveDivProps { } declare const SelectLabel: import("react").ForwardRefExoticComponent<SelectLabelProps & import("react").RefAttributes<HTMLDivElement>>; interface SelectItemProps extends PrimitiveDivProps { disabled?: boolean; textValue?: string; value: string; } declare const SelectItem: import("react").ForwardRefExoticComponent<SelectItemProps & import("react").RefAttributes<HTMLDivElement>>; interface SelectItemTextProps extends PrimitiveSpanProps { } declare const SelectItemText: import("react").ForwardRefExoticComponent<SelectItemTextProps & import("react").RefAttributes<HTMLSpanElement>>; interface SelectItemIndicatorProps extends PrimitiveSpanProps { } declare const SelectItemIndicator: import("react").ForwardRefExoticComponent<SelectItemIndicatorProps & import("react").RefAttributes<HTMLSpanElement>>; interface SelectScrollUpButtonProps extends Omit<SelectScrollButtonImplProps, "onAutoScroll"> { } declare const SelectScrollUpButton: import("react").ForwardRefExoticComponent<SelectScrollUpButtonProps & import("react").RefAttributes<HTMLDivElement>>; interface SelectScrollDownButtonProps extends Omit<SelectScrollButtonImplProps, "onAutoScroll"> { } declare const SelectScrollDownButton: import("react").ForwardRefExoticComponent<SelectScrollDownButtonProps & import("react").RefAttributes<HTMLDivElement>>; interface SelectScrollButtonImplProps extends PrimitiveDivProps { onAutoScroll(): void; } interface SelectSeparatorProps extends PrimitiveDivProps { } declare const SelectSeparator: import("react").ForwardRefExoticComponent<SelectSeparatorProps & import("react").RefAttributes<HTMLDivElement>>; type PopperArrowProps = ComponentPropsWithoutRef<typeof PopperPrimitive.Arrow>; interface SelectArrowProps extends PopperArrowProps { } declare const SelectArrow: import("react").ForwardRefExoticComponent<SelectArrowProps & import("react").RefAttributes<SVGSVGElement>>; declare const Root: FC<SelectProps>; declare const Trigger: import("react").ForwardRefExoticComponent<SelectTriggerProps & import("react").RefAttributes<HTMLButtonElement>>; declare const Value: import("react").ForwardRefExoticComponent<SelectValueProps & import("react").RefAttributes<HTMLSpanElement>>; declare const Icon: import("react").ForwardRefExoticComponent<SelectIconProps & import("react").RefAttributes<HTMLSpanElement>>; declare const Portal: FC<SelectPortalProps>; declare const Content: import("react").ForwardRefExoticComponent<SelectContentProps & import("react").RefAttributes<HTMLDivElement>>; declare const Viewport: import("react").ForwardRefExoticComponent<SelectViewportProps & import("react").RefAttributes<HTMLDivElement>>; declare const Group: import("react").ForwardRefExoticComponent<SelectGroupProps & import("react").RefAttributes<HTMLDivElement>>; declare const Label: import("react").ForwardRefExoticComponent<SelectLabelProps & import("react").RefAttributes<HTMLDivElement>>; declare const Item: import("react").ForwardRefExoticComponent<SelectItemProps & import("react").RefAttributes<HTMLDivElement>>; declare const ItemText: import("react").ForwardRefExoticComponent<SelectItemTextProps & import("react").RefAttributes<HTMLSpanElement>>; declare const ItemIndicator: import("react").ForwardRefExoticComponent<SelectItemIndicatorProps & import("react").RefAttributes<HTMLSpanElement>>; declare const ScrollUpButton: import("react").ForwardRefExoticComponent<SelectScrollUpButtonProps & import("react").RefAttributes<HTMLDivElement>>; declare const ScrollDownButton: import("react").ForwardRefExoticComponent<SelectScrollDownButtonProps & import("react").RefAttributes<HTMLDivElement>>; declare const Separator: import("react").ForwardRefExoticComponent<SelectSeparatorProps & import("react").RefAttributes<HTMLDivElement>>; declare const Arrow: import("react").ForwardRefExoticComponent<SelectArrowProps & import("react").RefAttributes<SVGSVGElement>>; export { createSelectScope, Select, SelectTrigger, SelectValue, SelectIcon, SelectPortal, SelectContent, SelectViewport, SelectGroup, SelectLabel, SelectItem, SelectItemText, SelectItemIndicator, SelectScrollUpButton, SelectScrollDownButton, SelectSeparator, SelectArrow, Root, Trigger, Value, Icon, Portal, Content, Viewport, Group, Label, Item, ItemText, ItemIndicator, ScrollUpButton, ScrollDownButton, Separator, Arrow, }; export type { SelectProps, SelectTriggerProps, SelectValueProps, SelectIconProps, SelectPortalProps, SelectContentProps, SelectViewportProps, SelectGroupProps, SelectLabelProps, SelectItemProps, SelectItemTextProps, SelectItemIndicatorProps, SelectScrollUpButtonProps, SelectScrollDownButtonProps, SelectSeparatorProps, SelectArrowProps, };