import { PropertyValueMap } from 'lit'; import { DdsElement } from '../../internal/dds-hu-element'; export type IconSize = 'xxl' | 'xl' | 'lg' | 'md' | 'sm' | 'xs'; /** * `dap-ds-icon` * @summary An icon is a graphical symbol that represents an object or action. * @element dap-ds-icon * @title - Icon * * @property {boolean} ariaHidden - Whether the icon is hidden from the accessibility tree. Default is true. * @property {string} ariaLabel - The aria label of the icon. * * @slot - The content of the icon for custom svg icons. * * @csspart base - The main icon container. * @csspart icon - The icon of the icon. * * @cssproperty --dds-icon-size-xs - The size of extra small icons (default: 12px) * @cssproperty --dds-icon-size-sm - The size of small icons (default: 16px) * @cssproperty --dds-icon-size-md - The size of medium icons (default: 20px) * @cssproperty --dds-icon-size-lg - The size of large icons (default: 24px) * @cssproperty --dds-icon-size-xl - The size of extra large icons (default: 32px) * @cssproperty --dds-icon-size-xxl - The size of extra extra large icons (default: 40px) */ export default class DapDSIcon extends DdsElement { /** The name of the icon */ name: string; /** The size of the icon * @type {'xxl' | 'xl' | 'lg' | 'md' | 'sm' | 'xs'} */ size: 'xxl' | 'xl' | 'lg' | 'md' | 'sm' | 'xs'; /** The size of the icon in pixels. This overrides the size attribute. */ staticSize?: number; /** Whether the icon is focusable. Default is false. */ focusable?: boolean; static readonly styles: import('lit').CSSResult; protected firstUpdated(_changedProperties: PropertyValueMap | Map): void; render(): import('lit-html').TemplateResult; private _getNamedIcon; private _getSlotIcon; private _getIconSizePx; }