import React from "react"; declare module "react" { function forwardRef( render: (props: P, ref: React.Ref) => React.ReactElement

| null ): (props: P & React.RefAttributes) => React.ReactElement

; } // Polymorphic with ref export type PropsOf< T extends keyof JSX.IntrinsicElements | React.JSXElementConstructor > = JSX.LibraryManagedAttributes>; type ComponentProp = { /** * An override of the default HTML tag, * can also be another React Component. */ component?: E; }; /** * Allows for extending a set of props (`ExtendedProps`) by an overriding set of props * (`OverrideProps`), ensuring that any duplicates are overridden by the overriding * set of props. */ type ExtendableProps = OverrideProps & Omit; /** * Allows for inheriting the props from the specified element type so that * props like children, className & style work, as well as element-specific * attributes like aria roles. The component (`E`) must be passed in. */ type InheritableElementProps< E extends React.ElementType, Props = {} > = ExtendableProps, Props>; /** * A more sophisticated version of `InheritableElementProps` where * the passed in `component` prop will determine which props can be included */ export type PolymorphicWithRef< E extends React.ElementType, Props = {} > = InheritableElementProps>;