import { type ReactElement } from 'react'; import type { AriaLabelingProps } from '../../core/types/a11y-props.js'; import type { BehaviorTrackingProps } from '../../core/types/behavior-tracking-props.js'; import type { DataTestId } from '../../core/types/data-props.js'; import type { MaskingProps } from '../../core/types/masking-props.js'; import type { StylingProps } from '../../core/types/styling-props.js'; import type { WithChildren } from '../../core/types/with-children.js'; /** * Accepted placement properties for FeatureHighlight * @public */ export type FeatureHighlightPlacement = 'left-top' | 'left-middle' | 'left-bottom' | 'right-top' | 'right-middle' | 'right-bottom' | 'top-left' | 'top-middle' | 'top-right' | 'bottom-left' | 'bottom-middle' | 'bottom-right'; /** * Interface for the FeatureHighlight component. * @public */ export interface FeatureHighlightProps extends WithChildren, AriaLabelingProps, DataTestId, MaskingProps, StylingProps, BehaviorTrackingProps { /** * Whether the FeatureHighlight is currently shown or not. Has to be controlled by the consumer. */ open: boolean; /** * The element the popover is referring to (i.e. where the pointer is pointing to). */ anchor: HTMLElement | null; /** * Placement of the FeatureHighlight. * @defaultValue 'right-bottom' */ placement?: FeatureHighlightPlacement; /** * Callback fired when closing the FeatureHighlight. */ onClose: () => void; } /** * The `FeatureHighlight` supports the onboarding of new users, as well as the introduction of new features to existing users. * It is positioned next to the specified reference element and has four optional slots: `Title`, `Visual`, `Content` and `Actions`. * * @public */ export declare const FeatureHighlight: ((props: FeatureHighlightProps & import("react").RefAttributes) => import("react").ReactElement | null) & { Title: { (props: import("../index.js").TitleProps): import("react/jsx-runtime").JSX.Element; displayName: string; }; Visual: { (props: import("../index.js").VisualProps): import("react/jsx-runtime").JSX.Element; displayName: string; }; Content: { (props: import("../index.js").ContentProps): import("react/jsx-runtime").JSX.Element; displayName: string; }; Actions: { ({ children }: import("react").PropsWithChildren): import("react/jsx-runtime").JSX.Element; displayName: string; }; };