UNPKG

@ryvora/react-primitive

Version:

🧱 Foundational React primitives with asChild support. Build flexible, composable UIs!

20 lines (17 loc) • 1.08 kB
import * as React from 'react'; declare const NODES: readonly ["a", "button", "div", "form", "h2", "h3", "img", "input", "label", "li", "nav", "ol", "p", "select", "span", "svg", "ul"]; type Primitives = { [E in (typeof NODES)[number]]: PrimitiveForwardRefComponent<E>; }; type PrimitivePropsWithRef<E extends React.ElementType> = React.ComponentPropsWithRef<E> & { asChild?: boolean; }; interface PrimitiveForwardRefComponent<E extends React.ElementType> extends React.ForwardRefExoticComponent<PrimitivePropsWithRef<E>> { } /** ----------------------------------------- Primitive ----------------------------------------- */ declare const Primitive: Primitives; /** ----------------------------------------- Utils ----------------------------------------- */ declare function dispatchDiscreteCustomEvent<E extends CustomEvent>(target: E['target'], event: E): void; /** ---------------------------------------------------------------------------------- */ declare const Root: Primitives; export { Primitive, type PrimitivePropsWithRef, Root, dispatchDiscreteCustomEvent };