import { IWebComponentInstance } from "../../.."; import { CommentLikeStore, ICommentLikeService } from "../../../stores"; import { OmniaContext } from "../../.."; import { type Comment, type CommentLikeTemplateSettings, type ThemeDefinition, ResolvedUserIdentity } from "../../../models"; import { ICommentTemplate } from "../extensibilities/ICommentTemplate"; import { Theming, ThemeStore, VueComponentBase, BlockInstance } from "../.."; import { IdentitiesLocalization } from "../../identities/loc/localize"; export interface CommentLikeTemplateDynamicInput { service: ICommentLikeService; likeListingTemplate?: string; dateFormat?: string | "social"; } export declare class CommentLikeTemplate extends VueComponentBase<{}, {}, {}> implements IWebComponentInstance, ICommentTemplate { comment: Comment; dynamicInput: CommentLikeTemplateDynamicInput; templateSettings: CommentLikeTemplateSettings; currentUser: ResolvedUserIdentity; canShowEditDialogOnLoad?: boolean; canLike?: boolean; openReply: (commentToReplyOn: Comment) => Comment; cancelReply: (comment: Comment) => void; refresh: (addedComment: boolean) => void; additionalRoles?: Array; cardStyle?: ThemeDefinition; hideEdit?: boolean; readOnly?: boolean; markedBestReply?: () => void; commented?: () => void; commentedReply?: () => void; reactedSocial?: () => void; private omniaUxLocalization; private commentLoc; identityLoc: IdentitiesLocalization.locInterface; store: CommentLikeStore; omniaCtx: OmniaContext; themeStore: ThemeStore; protected blockInstance: BlockInstance; private commentDialogStore; dialogTheme: Theming; private dateFormat; private isEdit; private isAddingOrUpdatingComment; private isDeleting; private draftContent; private draftMentionUsers; private language; private resetContent; private isRTEPlaceholderClicked; private isLoadingRTE; private observer; private isValidComment; private deleteDialogModel; private useAccessibilityFeatures; private validateEnabledOnContentChanged; private get isAdd(); private get isReply(); private get isMobile(); onTopicIdChange(newValue: Comment, oldValue: Comment): void; created(): void; mounted(): void; beforeDestroy(): void; private openMobileDialog; private initializeObserverLazyLoadEditor; private loadRichTextEditor; private getReplyToComment; private getSocialReactions; private onClickReply; private onClickEdit; private onClickMarkBestReply; private onClickRemoveReplyToComment; private onClickDelete; private getContentInsideTag; private trimCommentContent; private onDialogCancel; private onDialogSave; private onSave; private saveCommentInternal; private validateComment; onContentUpdate(content: string): void; validateOnContentChanged(content: string): void; onMentionUpdate(mentionUsers: Array): void; onCommentTextFieldClicked(e: Event): void; private renderUserLink; private renderTitleInfo; private renderEditContentBody; private renderEditButton; private renderDeleteButton; private renderDeleteDialog; private renderEditOptionsBase; private renderMarkBestReplyButton; private renderEditOptions; private renderDisplay; private renderDeletedMessage; render(): VueTsxSupport.JSX.Element; }