import React, { CSSProperties, ForwardedRef } from 'react';
type PillBaseVariant = 'warning' | 'error' | 'success';
export type PillVariant = PillBaseVariant | 'published' | 'scheduled' | 'approved' | 'approveEmail' | 'cancelEmail' | 'reportingData' | 'draft' | 'pinned' | 'active' | 'inactive' | 'new' | 'renewal' | 'enabled' | 'disabled' | 'auth' | 'notAuth' | 'archived' | 'open' | 'artifact' | 'need' | 'custom' | 'hoverable' | 'expansion' | 'atRisk' | 'pastDue' | 'paused' | 'unpublished' | 'inProgress' | 'completed';
export type PillProps = {
    bgColor?: string;
    border?: CSSProperties['border'];
    className?: string;
    color?: string;
    hasMargin?: boolean;
    icon?: JSX.Element;
    /**
     * hide icon if defualt has one
     */
    isHideIcon?: boolean;
    /**
     * show remove icon when true
     */
    isRemovable?: boolean;
    /**
     * show remove icon when hover on
     */
    isRemovableOnHover?: boolean;
    onClick?: (event?: React.MouseEvent<HTMLSpanElement, MouseEvent>) => void;
    /**
     * callback when click at remove icon
     */
    onRemove?: (event?: React.MouseEvent<HTMLSpanElement, MouseEvent>) => void;
    text?: string;
    textClassName?: string;
    /**
     * The type of Pill.
     */
    variant?: PillVariant;
};
export declare const PillInner: ({ isHideIcon, variant, textClassName, className, bgColor, color, icon, text, onClick, hasMargin, border, isRemovable, isRemovableOnHover, onRemove, }: PillProps, ref?: ForwardedRef<HTMLDivElement>) => JSX.Element;
export declare const Pill: ({ isHideIcon, variant, textClassName, className, bgColor, color, icon, text, onClick, hasMargin, border, isRemovable, isRemovableOnHover, onRemove, }: PillProps, ref?: ForwardedRef<HTMLDivElement>) => JSX.Element;
export {};
