import { CSSProperties, ElementType, HTMLAttributes, ReactNode } from 'react'; type StyledBadgeSize = 'medium' | 'small'; /** * @figmaNode wXrXt5uKNNzV2DnQCgyYZH#15181-43817 * Figma "Badge". Number badge = solid gama-500 pill, white Helper-Semibold 14px (h20/px6/r20); * `dot` variant = 8px dot (Unread/Filters). `color` selects the badge palette (primary→teal number * badge, error→soft error-100/error-600); other colors are app extensions with no Figma type. */ interface BadgeProps extends Omit, 'color'> { /** @figmaProp Badge content (the number/label) */ badgeContent?: ReactNode; /** @figmaProp Type/colour = primary→number badge (gama-500) | error→error-100/600 | others = app */ color?: string; max?: number; showZero?: boolean; /** @figmaProp Type = dot→"Unread/Filters" (8px) | standard→number badge */ variant?: 'standard' | 'dot'; invisible?: boolean; anchorOrigin?: { vertical: 'top' | 'bottom'; horizontal: 'left' | 'right'; }; overlap?: 'rectangular' | 'circular'; component?: ElementType; classes?: Record; slots?: Record; slotProps?: { badge?: { className?: string; style?: CSSProperties; }; }; sx?: unknown; } type StyledBadgeProps = BadgeProps & { dataTest: string; size?: StyledBadgeSize; }; /** * Native, MUI-free reimplementation of the previous `Badge` passthrough. Reproduces MUI v9 badge * metrics/positioning via Tailwind, this library's custom `primary` green, and the `small` size. * The established styling API `sx={{ '& .MuiBadge-badge': {...} }}` is preserved by extracting that * slot and applying `resolveSx` to the badge span (DEC-007 slot-sx). Signature unchanged (DEC-003). */ export declare const StyledBadge: ({ color, dataTest, size, badgeContent, max, showZero, variant, invisible, anchorOrigin, children, className, sx, overlap: _overlap, classes: _classes, slots: _slots, slotProps, component: _component, ...props }: StyledBadgeProps) => JSX.Element; export {};