import { BadgeVariants } from "../../internal-flex-commons/src"; import { CSSProps } from "../CSSProps"; export { BadgeVariants }; /** * @typedef {} Badge.BadgeChildrenProps * @property {boolean} [invisible=false] - Set to true to prevent the badge from being rendered * @property {number} [max=9] - Maximum badge value. If the content is greater than this property, a "+" will be displayed. * @property {boolean} [showZero=false] - Set to true to hide the badge when its content is 0 * @property {BadgeVariants} [variant=BadgeVariants.standard] - Variants of the component. * @property {number} children - The numeric value to be displayed in the notification */ export interface BadgeChildrenProps { invisible: boolean; max: number; showZero: boolean; variant: BadgeVariants; children: number; } export declare enum BadgeChildrenKeys { defaultCircle = "defaultCircle" } /** * @typedef {object} Badge.BadgePosition * @property {string} [top] - Represents the top position * @property {string} [right] - Represents the right position */ interface BadgePosition { top?: string; right?: string; } /** * @typedef {BadgeChildrenProps} Badge.BadgeProps * @property {boolean} [programmable=true] - Set to false to ignore `Badge.Content` customisations * @property {Partial} [themeOverride] - Theme override * @property {BadgePosition} [position] - Position of the badge * @extends {BadgeChildrenProps} */ export interface BadgeProps extends BadgeChildrenProps { programmable: boolean; themeOverride: Partial; position?: BadgePosition; } /** * @typedef Theme.BadgeThemeProps * @property {CSSProps} OuterCircle - external part of the circle that takes care of position and spacing around main inner circle * @property {CSSProps} InnerCircle - main part of the circle - takes care of badge size, font and colors */ export interface BadgeThemeProps { OuterCircle: CSSProps; InnerCircle: CSSProps; }