/** * Copyright (c) Cisco Systems, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * */ import "../icon/Icon"; import "../loading/Loading"; import "../presence/Presence"; import { PresenceState } from "../presence/Presence.utils"; import { LitElement, nothing, PropertyValues } from "lit"; import { AvatarChannelType, AvatarSize, AvatarState, AvatarStyle, AvatarType } from "./Avatar.constants"; export declare namespace Avatar { type ChannelType = (typeof AvatarChannelType)[number]; type Type = (typeof AvatarType)[number] | PresenceState | ChannelType; type Size = (typeof AvatarSize)[number]; type State = (typeof AvatarState)[number]; type Style = (typeof AvatarStyle)[number]; type Role = "img" | "button"; class ELEMENT extends LitElement { private _tabIndex; get tabIndex(): number; set tabIndex(newValue: number); alt: string; src: string; label: string; title: string; color: string; decrypting: boolean; role: Avatar.Role; iconName: string; failurePresence: boolean; type: Type; presenceType?: PresenceState; presenceAriaLabel: string; newMomentum: boolean; typing: boolean; size: Size; hasNotification: boolean; clickable: boolean; clickFunction?: () => void; /** * The style of the avatar based on where it is used. * Currently only affects channel avatars. * @type {Avatar.Style} * @default "default" * @property {Avatar.Style} avatarStyle - Options: "default" | "table" */ avatarStyle: Style; /** * The state determines the background color of channel avatars, * in combination with the avatar style. * Currently only affects channel avatars. * @type {Avatar.State} * @default "rest" * @property {Avatar.State} state - Options: "rest" | "active" */ state: State; private imageLoaded; private imageErrored; private presenceColor; private presenceIcon; static get styles(): import("lit").CSSResult[]; private isPresenceType; private get presenceLabel(); private get computedAriaLabel(); firstUpdated(): void; protected willUpdate(changedProperties: PropertyValues): void; protected updated(changedProperties: PropertyValues): void; private get avatarClassMap(); private get avatarLetterClassMap(); private get avatarStyleMap(); private get pretifyTitle(); private get chatIconName(); private readonly iconNameMap; private getIconName; private get chatIconSize(); private get presenceSize(); private get iconSize(); get renderIsTyping(): import("lit-html").TemplateResult<1> | typeof nothing; private get avatarLetter(); private get avatarIcon(); private get avatarImage(); private loadImage; private handleImageLoad; private handleImageError; handleKeyDown(event: KeyboardEvent): void; handleClick(event: MouseEvent): void; private getBrandOrDesignIconSet; get avatarContent(): import("lit-html").TemplateResult<1> | typeof nothing; renderPresence(): import("lit-html").TemplateResult<1> | typeof nothing; private renderAvatarContent; render(): import("lit-html").TemplateResult<1>; } } declare global { interface HTMLElementTagNameMap { "md-avatar": Avatar.ELEMENT; } }