import { PropertyValues } from 'lit'; import { SpectrumElement } from '../../shared/base'; import { BadgeVariant, FixedValues } from './Badge.types'; declare const BadgeBase_base: typeof SpectrumElement & { new (...args: any[]): import('../../shared/observe-slot-presence').SlotPresenceObservingInterface; prototype: import('../../shared/observe-slot-presence').SlotPresenceObservingInterface; } & { new (...args: any[]): import('../../shared/observe-slot-text').SlotTextObservingInterface; prototype: import('../../shared/observe-slot-text').SlotTextObservingInterface; } & { new (...args: any[]): import('../../shared/base').SizedElementInterface; prototype: import('../../shared/base').SizedElementInterface; } & import('../../shared/base/sizedMixin').SizedElementConstructor; /** * A badge component that displays short, descriptive information about an element. * Badges are typically used to indicate status, categories, or provide supplementary information. * * @attribute {ElementSize} size - The size of the badge. * * @slot - Text label of the badge. * @slot icon - Optional icon that appears to the left of the label */ export declare abstract class BadgeBase extends BadgeBase_base { /** * @internal * * A readonly array of the valid color variants for the badge. * * This is an actual internal property, intended not for customer use * but for use in internal validation logic, stories, tests, etc. * * Because S1 and S2 support different color variants, the value of this * property must be set in each subclass. */ static readonly VARIANTS_COLOR: readonly string[]; /** * @internal * * A readonly array of all valid variants for the badge. * * This is an actual internal property, intended not for customer use * but for use in internal validation logic, stories, tests, etc. * * Because S1 and S2 support different variants, the value of this * property must be set in each subclass. */ static readonly VARIANTS: readonly string[]; /** * @internal * * The variant of the badge. * * This is a public property, but its valid values vary between S1 and S2, * so the property (and its docs) need to be redefined in each subclass. * * The type declared here is a union of the valid values for S1 and S2, * and should be narrowed in each subclass. */ variant: BadgeVariant; /** * @internal */ static readonly FIXED_VALUES: readonly string[]; /** * @internal */ static readonly VARIANTS_SEMANTIC: readonly string[]; /** * The fixed position of the badge. * * @todo The purpose of the bespoke getter and setter is unclear, as it * looks like they may be behaving just like a standard Lit reactive * property. Explore replacing after the Barebones milestone. */ get fixed(): FixedValues | undefined; set fixed(fixed: FixedValues | undefined); private _fixed?; /** * @internal Used for rendering gap when the badge has an icon. */ protected get hasIcon(): boolean; protected update(changedProperties: PropertyValues): void; } export {};