import * as React from "react"; import { FCReturn, ForwardRefProps, JSXIntrinsicElementProps, ReactAttr, ReactComponentConstructor, } from "../../../typings/shared"; /* * Popover */ interface PopoverBaseIsolatedProps { // props not given to the component specified by "as" caret?: boolean | undefined; align?: | "top" | "top-left" | "top-right" | "bottom" | "bottom-left" | "bottom-right" | "left" | "left-bottom" | "left-top" | "right" | "right-bottom" | "right-top" | undefined; dropShadow?: boolean | undefined; highContrast?: boolean | undefined; light?: boolean | undefined; open: boolean; } type SafePopoverProps

= Omit; interface PopoverBaseProps extends PopoverBaseIsolatedProps { children?: React.ReactNode | undefined; className?: string | undefined; } export type PopoverDefaultProps = & PopoverBaseProps & ReactAttr & { as?: undefined; }; export type PopoverIntrinsicProps = & PopoverBaseProps & SafePopoverProps> & { as: K; }; export type PopoverCustomComponentProps< C extends ReactComponentConstructor, > = C extends ReactComponentConstructor ? & PopoverBaseProps & SafePopoverProps

& { as: C; } : never; declare function Popover(props: ForwardRefProps): FCReturn; declare function Popover( props: ForwardRefProps>, ): FCReturn; declare function Popover, R = unknown>( props: ForwardRefProps>, ): FCReturn; /* * PopoverContent */ export interface PopoverContentProps extends ReactAttr {} declare function PopoverContent(props: ForwardRefProps): FCReturn; export { Popover, PopoverContent };