import { IconProps } from '../Icon'; import { AiMarkCollapsePadding, AiMarkWithTooltipOrPopoverConfig } from '../../types/ai-marks'; /** * Props for the AiMark component * @property {"default" | "gradient"} [type] - The visual style of the AI mark * @property {AiMarkWithTooltipOrPopoverConfig} [popoverOrTooltipConfig] - Configuration for popover or tooltip display with content and props * @property {boolean} [forceAnimate] - Forces the pulsing animation to play, intended for use within interactive parent components (e.g. on hover or focus of the parent) * @property {AiMarkCollapsePadding} [collapsePadding] - Collapses the component's layout footprint to match a plain icon on the chosen axes. * @extends Omit */ export type AiMarkProps = Omit & { /** * The visual style of the AI mark. * @default default */ type?: "default" | "gradient"; /** * Configuration for popover or tooltip display. * Includes content, trigger label, and optional props for customization. * Popover config takes precedence over tooltip config. */ popoverOrTooltipConfig?: AiMarkWithTooltipOrPopoverConfig; /** * When true, forces the pulsing morph animation to play regardless of * hover/focus state. Useful when AiMark is embedded inside an interactive * parent component (e.g. a Chip or Button) and the parent controls when * the animation should be active via its own hover or focus state. * @default false */ forceAnimate?: boolean; /** * Collapses padding on the chosen axes so the component's layout footprint * matches a plain inline icon on those axes. * * For interactive variants (tooltip/popover), the ghost button's hit area is * unchanged — only the container's layout box shrinks. * * For non-interactive variants, padding equal to the ghost button's padding is * added to the non-collapsed axes, and omitted on the collapsed axes. * * - `"inline"` — collapse the inline axis (left/right) * - `"block"` — collapse the block axis (top/bottom) * - `"all"` — collapse both axes */ collapsePadding?: AiMarkCollapsePadding; }; /** * Component for displaying the ServiceTitan AI mark with optional tooltip or popover. * * Features: * - Two visual styles: default and gradient variants * - Optional tooltip on hover for contextual information * - Optional popover on click for more detailed content * - Forced animation mode for use within interactive parent components * - Uses ghost button appearance for subtle interaction * - Inherits all icon properties for size and styling customization * - Accessible with proper ARIA attributes from Button component * - Prevents event propagation when used with popover * - Configurable via popoverOrTooltipConfig for advanced customization * - Optional `collapsePadding` to reduce layout footprint to match a plain icon * - Animates on hover and focus when used with tooltip or popover * - Automatically respects the user's reduced motion preference * * @example * * * @example * AI feature details, * triggerLabel: "Learn about AI features" * }} * /> * * @example * */ export declare const AiMark: (props: AiMarkProps) => import("react/jsx-runtime").JSX.Element;