UNPKG

adwaita-web

Version:

A GTK inspired toolkit designed to build awesome web apps

90 lines (89 loc) 3.06 kB
import type Popper from "@popperjs/core"; import React from "react"; export declare type PopoverProps = { className?: string; open?: boolean; arrow?: boolean; content: React.ReactNode | (() => React.ReactNode); children: React.ReactNode; placement?: "top" | "top-start" | "top-end" | "bottom" | "bottom-start" | "bottom-end" | "right" | "right-start" | "right-end" | "left" | "left-start" | "left-end"; align?: "right" | "left"; method?: "mouseover" | "click" | "click-controlled" | "none"; width?: "trigger" | "trigger-min"; delay?: number; shouldUpdatePlacement?: boolean; shouldAttachEarly?: boolean; onOpen?: () => void; onClose?: () => void; onDidOpen?: () => void; onDidClose?: () => void; }; declare type PopoverState = { open: boolean; closing: boolean; actualPlacement: PopoverProps["placement"]; styles: React.CSSProperties; }; export declare class Popover extends React.PureComponent<PopoverProps> { static defaultProps: { arrow: boolean; placement: string; align: string; method: string; delay: number; shouldUpdatePlacement: boolean; onOpen: () => void; onClose: () => void; onDidOpen: () => void; onDidClose: () => void; }; domNode: HTMLElement; isDomNodeAttached: boolean; isEventListening: boolean; openTimeout: number | undefined; closeTimeout: number | undefined; triggerRef: React.MutableRefObject<Element | null>; popoverRef: React.MutableRefObject<HTMLElement | null>; arrowRef: React.MutableRefObject<HTMLDivElement | null>; observer: ResizeObserver; popper: Popper.Instance | undefined; state: PopoverState; constructor(props: PopoverProps); componentWillUnmount(): void; componentDidMount(): void; componentDidUpdate(prevProps: PopoverProps, prevState: PopoverState): void; attachDomNode(): void; detachDomNode(): void; attachPopper(): void; detachPopper(): void; updatePopperOptions(): void; getPopperOptions(): Partial<Popper.OptionsGeneric<Partial<Popper.Modifier<any, any>>>>; onContentResize: () => void; onRefPopover: (ref: HTMLDivElement) => void; onDocumentClick: (ev: MouseEvent) => void; onTransitionEnd: () => void; onUpdatePopper: ({ state }: Popper.ModifierArguments<any>) => void; onClick: (ev: React.MouseEvent<HTMLElement>) => void; onMouseOver: () => void; onMouseOut: () => void; isControlled: () => boolean; open: () => void; close: () => void; isOpen(): boolean; getContent(): React.ReactNode; getEventListeners(): { onMouseOver: () => void; onMouseOut: () => void; onClick?: undefined; } | { onClick: (ev: React.MouseEvent<HTMLElement, MouseEvent>) => void; onMouseOver?: undefined; onMouseOut?: undefined; } | { onMouseOver?: undefined; onMouseOut?: undefined; onClick?: undefined; }; render(): JSX.Element; } export {};