import type { CSSResultGroup } from 'lit'; import DSAIcon from '../icon/icon'; import { ShoelaceElement } from '../../internal/shoelace-element.js'; /** * @summary Avatars are used to represent a person or object. * @documentation https://dsa.service-public-autonomie.fr/latest/librairie-webcomponents/avatar/avatar-avatar/web-NGcHm2mk * * @dependency dsa-icon * * @slot icon - The default icon to use when no image or initials are present. Works best with ``. * * @csspart base - The component's base wrapper. * @csspart icon - The container that wraps the avatar's icon. * @csspart initials - The container that wraps the avatar's initials. * @csspart image - The avatar image. Only shown when the `image` attribute is set. * * @cssproperty --size - The size of the avatar. */ export default class DSAAvatar extends ShoelaceElement { static styles: CSSResultGroup; static dependencies: { 'dsa-icon': typeof DSAIcon; }; private hasError; /** The image source to use for the avatar. */ image: string; /** A label to use to describe the avatar to assistive devices. */ label: string; /** Initials to use as a fallback when no image is available (1-2 characters max recommended). */ initials: string; /** Indicates how the browser should load the image. */ loading: 'eager' | 'lazy'; /** The avatar's size. */ size: 'small' | 'medium' | 'large' | 'x-large'; handleImageChange(): void; render(): import("lit").TemplateResult<1>; } declare global { interface HTMLElementTagNameMap { 'dsa-avatar': DSAAvatar; } }