import React from "react"; import { PlusPopover as PlusPopoverElement } from "../dist/components/popover/index.js"; export type { PlusPopoverElement }; export interface PlusPopoverProps extends Pick< React.AllHTMLAttributes, | "children" | "dir" | "hidden" | "id" | "lang" | "slot" | "style" | "title" | "translate" | "onClick" | "onFocus" | "onBlur" > { /** Determines whether the popover can be dismissed by clicking the close button. - `true` (default) - Popover can be closed. - `false` - The close button is hidden. */ dismissable?: boolean; /** Determines whether a status icon should be displayed in the popover. - `true` (default) - An icon representing the status will be displayed. - `false` - No icon will be displayed. */ statusIcon?: boolean; /** Determines whether the arrow should be displayed. - `true` (default) - Arrow will be displayed. - `false` - Arrow will be hidden. */ showArrow?: boolean; /** The size of the popover. Available options: - `sm` (small) - `md` (medium - default) - `lg` (large) */ size?: PlusPopoverElement["size"]; /** The position of the popover relative to the target element. Available options: - `top` (default) - `top-start` - `top-end` - `bottom` - `bottom-start` - `bottom-end` - `left` - `left-start` - `left-end` - `right` - `right-start` - `right-end` */ orientation?: PlusPopoverElement["orientation"]; /** Determines how the popover is triggered. Available options: - `click` (default) - Popover toggles on click. - `hover` - Popover appears on hover. */ trigger?: PlusPopoverElement["trigger"]; /** The main text content of the popover. If a slot with `name="content"` is provided, this text will be ignored. */ text?: PlusPopoverElement["text"]; /** The header title of the popover. If a slot with `name="title"` is provided, this text will be ignored. */ headerText?: PlusPopoverElement["headerText"]; /** The status of the popover, which affects its styling. Available options: - `success` (green) - `warning` (yellow) - `danger` (red) - `info` (blue) - `primary` (default theme color) - `default` (gray - default) */ status?: PlusPopoverElement["status"]; /** A space-separated list of the classes of the element. Classes allows CSS and JavaScript to select and access specific elements via the class selectors or functions like the method `Document.getElementsByClassName()`. */ className?: string; /** Contains a space-separated list of the part names of the element that should be exposed on the host element. */ exportparts?: string; /** Used for labels to link them with their inputs (using input id). */ htmlFor?: string; /** Used to help React identify which items have changed, are added, or are removed within a list. */ key?: number | string; /** Contains a space-separated list of the part names of the element. Part names allows CSS to select and style specific elements in a shadow tree via the ::part pseudo-element. */ part?: string; /** A mutable ref object whose `.current` property is initialized to the passed argument (`initialValue`). The returned object will persist for the full lifetime of the component. */ ref?: any; /** Allows developers to make HTML elements focusable, allow or prevent them from being sequentially focusable (usually with the `Tab` key, hence the name) and determine their relative ordering for sequential focus navigation. */ tabIndex?: number; /** Emitted when the popover is opened */ onPlusPopoverOpen?: (event: CustomEvent) => void; /** Emitted when the popover is closed */ onPlusPopoverClose?: (event: CustomEvent) => void; /** Emitted when the popover is dismissed via close button */ onPlusPopoverDismiss?: (event: CustomEvent) => void; } /** * Popover component that displays content in a floating panel. * --- * * * ### **Events:** * - **plus-popover-open** - Emitted when the popover is opened * - **plus-popover-close** - Emitted when the popover is closed * - **plus-popover-dismiss** - Emitted when the popover is dismissed via close button * * ### **Slots:** * - _default_ - The target element that triggers the popover * - **icon** - Custom icon for the popover * - **title** - The popover title * - **actions** - Actions like close button * - **content** - The main content inside the popover * * ### **CSS Parts:** * - **popover** - The popover container element * - **arrow** - The popover arrow indicator * - **title** - The popover title * - **close** - The close button area * - **content** - The main content inside the popover */ export const PlusPopover: React.ForwardRefExoticComponent;