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<IconProps, "svg">
 */
export type AiMarkProps = Omit<IconProps, "svg"> & {
    /**
     * 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
 * <AiMark
 *   type="default"
 *   popoverOrTooltipConfig={{
 *     type: "tooltip",
 *     content: "Powered by AI",
 *     triggerLabel: "AI feature information"
 *   }}
 * />
 *
 * @example
 * <AiMark
 *   type="gradient"
 *   popoverOrTooltipConfig={{
 *     type: "popover",
 *     content: <Text>AI feature details</Text>,
 *     triggerLabel: "Learn about AI features"
 *   }}
 * />
 *
 * @example
 * <AiMark type="default" forceAnimate={isHovered} />
 */
export declare const AiMark: (props: AiMarkProps) => import("react/jsx-runtime").JSX.Element;
