import type { CSSResultGroup } from 'lit'; import SynergyElement from '../../internal/synergy-element.js'; import type SynTag from '../tag/tag.component.js'; /** * @summary A tag group is used to display multiple tags that belong together, often representing selected filters, categories, or user‑generated labels. * It arranges tags in flexible rows and supports different sizes and layouts. * Tags can be removable, icon‑based, or purely textual. * * @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-tag-group--docs * @status stable * * @slot - The tag group's main content. Must be `` elements. * @slot label - The tag group's label. Alternatively, you can use the `label` attribute. * * @csspart base - The component's base wrapper. * @csspart tag-label - The tag group's label. */ export default class SynTagGroup extends SynergyElement { static styles: CSSResultGroup; tagsInDefaultSlot: SynTag[]; private readonly hasSlotController; /** The tag group's label. If you need to display HTML, use the `label` slot instead. */ label: string; /** * Controls the label position. Use 'top' to place the label above the tags, or 'start' to place it to the begin of the tag group. */ labelPosition: 'top' | 'start'; /** The size that should be applied to all slotted `` elements */ size: 'small' | 'medium' | 'large'; private adjustTagSize; handleSizeChange(): void; handleSlotChange(): void; render(): import("lit").TemplateResult<1>; }