import { MessageBubbleAlignment, Placement } from "@cometchat/uikit-resources"; import { LitElement, PropertyValueMap } from "lit"; import { ReactionInfoConfiguration } from "../../Configuration/ReactionInfoConfiguration"; import { ReactionListConfiguration } from "../../Configuration/ReactionListConfiguration"; import { ReactionsStyle } from "./ReactionsStyle"; export declare class CometChatReactions extends LitElement { private bubbleRef; messageObject: CometChat.BaseMessage; reactionsStyle: ReactionsStyle; alignment: MessageBubbleAlignment; reactionListConfiguration?: ReactionListConfiguration; reactionInfoConfiguration?: ReactionInfoConfiguration; hoverDebounceTime: number; reactionClick?: (reaction: CometChat.ReactionCount, message: CometChat.BaseMessage) => void; static styles: import("lit").CSSResult; private messageReactions; private maxVisibleEmojis; private maxLimit; private resizeObserver; private popoverVisibiltiy; private popoverTimeout; private previousWidth; private resizeTimeout; private moreListALignment; /** * Checks the reactions for the message object and updates the messageReactions property. */ checkReaction(): void; /** * Renders the HTML template for the CometChatReactions component. * @returns {TemplateResult} The rendered HTML template. */ render(): import("lit-html").TemplateResult<1>; /** * Called when the custom element is connected to the DOM. * Overrides the connectedCallback method of the base class. */ connectedCallback(): void; /** * Called when the component's properties have been updated. * @param _changedProperties - The map of changed properties. */ protected updated(_changedProperties: PropertyValueMap | Map): void; /** * This method is called when the custom element is disconnected from the document's DOM. * It performs necessary cleanup tasks, such as disconnecting the resize observer if it exists. */ disconnectedCallback(): void; /** * Attaches a resize observer to the parent element to monitor changes in width. * When the width changes, it updates the maximum number of visible emojis. */ private attachObserver; /** * Updates the maximum number of visible emojis based on the available width. * * @param availableWidth The available width to calculate the maximum number of visible emojis. Default value is 0. */ private updateMaxVisibleEmojis; /** * Displays the reactions for the message. * * @returns An array of React elements representing the reactions. */ private showReactions; /** * Renders the reaction popup UI. * * @param reaction The reaction count object. * @returns The HTML template for the reaction popup UI. */ private reactionPopupUi; /** * Renders the UI for a single reaction button. * * @param reaction - The reaction count object. * @returns The HTML template for the reaction button UI. */ private reactionChildUi; /** * Displays a UI for showing more reactions. * * @param number The number of reactions to display. * @returns The HTML template for the UI. */ private showMoreUi; /** * Calculates the count of additional reactions beyond the maximum visible emojis. * @returns The count of additional reactions. */ private moreCount; /** * Calculates the maximum number of visible emojis based on the available width. * * @param availableWidth - The available width for displaying emojis. * @returns The maximum number of visible emojis. */ private getMaxVisibleEmojis; getPlacementAlignment(callBack: Function): void; isMobile(): boolean; checkBubblePosition(): Placement.top | Placement.bottom; } declare global { namespace JSX { interface IntrinsicElements { "cometchat-reactions": any; } } interface HTMLElementTagNameMap { "cometchat-reactions": any; } } //# sourceMappingURL=CometChatReactions.d.ts.map