@veltdev/sdk
Version:
Velt is an SDK to add collaborative features to your product within minutes. Example: Comments like Figma, Frame.io, Google docs or sheets, Recording like Loom, Huddles like Slack and much more.
2,226 lines (1,809 loc) • 53.4 kB
TypeScript
// @ts-nocheck
import { Observable } from "rxjs";
import { CommentAnnotation, CommentOnElementConfig, CommentSelectionChangeData, ManualCommentAnnotationConfig, UpdateContextConfig } from "../data/comment-annotation.data.model";
import { AcceptCommentAnnotationEvent, AddCommentAnnotationEvent, AddCommentEvent, AddReactionEvent, ApproveCommentAnnotationEvent, CommentAddEventData, CommentEventTypesMap, CommentUpdateEventData, CopyLinkEvent, DeleteAttachmentEvent, DeleteCommentAnnotationEvent, DeleteCommentEvent, DeleteReactionEvent, DeleteRecordingEvent, GetLinkEvent, RejectCommentAnnotationEvent, ToggleReactionEvent, UpdateAccessEvent, UpdateCommentEvent, UpdatePriorityEvent, UpdateStatusEvent, GetCommentAnnotationsResponse, GetCommentAnnotationsCountResponse, FetchCommentAnnotationsResponse } from "../data/comment-events.data.model";
import { CustomCategory, CustomPriority, CustomStatus } from "../data/custom-filter.data.model";
import { CustomAnnotationDropdownData } from "../data/custom-chip-dropdown.data.model";
import { AutocompleteData } from "../data/autocomplete.data.model";
import { CommentSidebarCustomActionEventData, CommentSidebarData, CommentSidebarDataOptions } from "../data/comment-sidebar-config.model";
export { ReactionMap } from '../data/reaction-annotation.data.model';
import { AcceptCommentAnnotationRequest, AddAttachmentRequest, AddAttachmentResponse, AddCommentAnnotationRequest, AddCommentRequest, AddReactionRequest, ApproveCommentAnnotationRequest, AssignUserRequest, AssignUserEvent, CopyLinkRequest, DeleteAttachmentRequest, DeleteCommentAnnotationRequest, CommentRequestQuery, CommentRequestQuery, DeleteCommentRequest, DeleteReactionRequest, DeleteRecordingRequest, GetAttachmentRequest, GetCommentRequest, GetLinkRequest, GetRecordingRequest, RejectCommentAnnotationRequest, ResolveCommentAnnotationRequest, SubscribeCommentAnnotationRequest, UnsubscribeCommentAnnotationRequest, ToggleReactionRequest, UpdateAccessRequest, UpdateCommentRequest, UpdatePriorityRequest, UpdateStatusRequest, FetchCommentAnnotationsRequest } from "../data/comment-actions.data.model";
import { UnreadCommentsCount, TransformContext } from "../data/comment-utils.data.model";
import { CommentSidebarSystemFiltersOperator, SidebarButtonCountType } from "../../utils/enums";
import { UploadFileData } from "../data/attachment.model";
export declare class CommentElement {
/**
* Subscribe to comments on the current document.
*
* Returns Observable<CommentPinAnnotation[] | null>.
*/
getAllCommentAnnotations: (documentId?: string, documentParams?: object) => Observable<CommentAnnotation[] | null>;
/**
* To delete selected comments
*/
deleteSelectedComment: () => Promise<any>;
/**
* To enable text comment selection
*/
enableTextComments: () => any;
/**
* To disable text comment selection
*/
disableTextComments: () => any;
/**
* To allow text selection in specific elements only
* @param elementIds Element ids to be allowed for text selection
*/
allowedElementIds: (elementIds: string[]) => any;
/**
* To allow adding comments in specific elements only
* @param classNames Element class names to be allowed for adding comments
*/
allowedElementClassNames: (classNames: string[]) => any;
/**
* To allow adding comments in specific elements only
* @param querySelectors Element query selectors to be allowed for adding comments
*/
allowedElementQuerySelectors: (querySelectors: string[]) => any;
/**
* To enable floating comment dialog
*/
enableFloatingCommentDialog: () => any;
/**
* To disable floating comment dialog
*/
disableFloatingCommentDialog: () => any;
/**
* To add comments on specific elements
*
* @param elementId ID of html element
*/
attachComment: (elementId: string) => any;
/**
* To open comment sidebar
*/
openCommentSidebar: () => any;
/**
* To close comment sidebar
*/
closeCommentSidebar: () => any;
/**
* To toggle comment sidebar
*/
toggleCommentSidebar: () => any;
/**
* To enable moderator mode
*/
enableModeratorMode: () => any;
/**
* To disable moderator mode
*/
disableModeratorMode: () => any;
/**
* To enable stream mode
*/
enableStreamMode: () => any;
/**
* To disable stream mode
*/
disableStreamMode: () => any;
/**
* To show sign in button in comments if user is signed out
*/
enableSignInButton: () => any;
/**
* To hide sign in button in comments if user is signed out
*/
disableSignInButton: () => any;
/**
* To enable upgrade button in comments when plan is expired
*/
enableUpgradeButton: () => any;
/**
* To disable upgrade button in comments when plan is expired
*/
disableUpgradeButton: () => any;
/**
* Subscribe to comment mode change.
*
* Returns Observable<boolean>.
*/
onCommentModeChange: () => Observable<boolean>;
/**
* Enable attachments feature in comments
*/
enableAttachments: () => any;
/**
* Disable attachments feature in comments
*/
disableAttachments: () => any;
/**
* Get if user is part of global contact or not.
*/
isUserGlobalContact: () => Observable<boolean>;
/**
* Enable device info in comments
*/
enableDeviceInfo: () => any;
/**
* Disable device info in comments
*/
disableDeviceInfo: () => any;
/**
* Enable comment mode to add comments.
*/
public enableCommentMode: () => any;
/**
* Disable comment mode.
*/
public disableCommentMode: () => any;
/**
* Enable persistent comment mode.
*/
public enablePersistentCommentMode: () => any;
/**
* Disable persistent comment mode.
*/
public disablePersistentCommentMode: () => any;
/**
* To show comment number
*/
public enableCommentIndex: () => any;
/**
* To hide comment number
*/
public disableCommentIndex: () => any;
/**
* To enable popover mode
*/
public enablePopoverMode: () => any;
/**
* To disable popover mode
*/
public disablePopoverMode: () => any;
/**
* To show triangle in popover mode
*/
public enablePopoverTriangleComponent: () => any;
/**
* To hide triangle in popover mode
*/
public disablePopoverTriangleComponent: () => any;
/**
* To enable dialog on hover
*/
public enableDialogOnHover: () => any;
/**
* To disable dialog on hover
*/
public disableDialogOnHover: () => any;
/**
* To enable feature to show dialog on target element click
*/
public enableDialogOnTargetElementClick: () => any;
/**
* To disable feature to show dialog on target element click
*/
public disableDialogOnTargetElementClick: () => any;
/**
* To enable feature to set priority on comments
*/
public enablePriority: () => any;
/**
* To disable feature to set priority on comments
*/
public disablePriority: () => any;
/**
* To enable feature to set status on comments
*/
public enableStatus: () => any;
/**
* To disable feature to set status on comments
*/
public disableStatus: () => any;
/**
* To enable feature to show resolve button
*/
public enableResolveButton: () => any;
/**
* To disable feature to show resolve button
*/
public disableResolveButton: () => any;
/**
* To enable feature to show ghost comments
*/
public enableGhostComments: () => any;
/**
* To disable feature to show ghost comments
*/
public disableGhostComments: () => any;
/**
* To enable feature to show ghost comments message in comment dialog and comment sidebar
*/
public enableGhostCommentsIndicator: () => any;
/**
* To disable feature to show ghost comments message in comment dialog and comment sidebar
*/
public disableGhostCommentsIndicator: () => any;
/**
* @description Sets custom status filters
* @param statuses
*/
setCustomStatus: (statuses: CustomStatus[]) => void;
/**
* @description Sets custom priority filters
* @param priorities
*/
setCustomPriority: (priorities: CustomPriority[]) => void;
/**
* @description Sets custom categories filters
* @param categories
*/
setCustomCategory: (categories: CustomCategory[]) => void;
/**
* To enable inbox mode
*/
public enableInboxMode: () => any;
/**
* To disable inbox mode
*/
public disableInboxMode: () => any;
/**
* To enable auto categorize feature
*/
public enableAutoCategorize: () => any;
/**
* To disable auto categorize feature
*/
public disableAutoCategorize: () => any;
/**
* To enable dark mode in comments
*/
public enableDarkMode: () => any;
/**
* To disable dark mode in comments
*/
public disableDarkMode: () => any;
/**
* @description Sets the comment context provider
* @param provider
*/
public setContextProvider: (provider: (documentId: string, location?: any) => any) => void;
/**
* To enable suggestion mode
*/
public enableSuggestionMode: () => any;
/**
* To disable suggestion mode
*/
public disableSuggestionMode: () => any;
/**
* To enable mobile mode
*/
public enableMobileMode: () => any;
/**
* To disable mobile mode
*/
public disableMobileMode: () => any;
/**
* To enable inline comment mode
*/
public enableInlineCommentMode: () => any;
/**
* To disable inline comment mode
*/
public disableInlineCommentMode: () => any;
/**
* To enable minimap
*/
public enableMinimap: () => any;
/**
* To disable minimap
*/
public disableMinimap: () => any;
/**
* To show comments on DOM
*/
public showCommentsOnDom: () => any;
/**
* To hide comments on DOM
*/
public hideCommentsOnDom: () => any;
/**
* To enable comment tool
*/
public enableCommentTool: () => any;
/**
* To disable comment tool
*/
public disableCommentTool: () => any;
/**
* To set total media length.
*/
public setTotalMediaLength: (totalMediaLength: number) => void;
/**
* To get documentId, location and set context data when comment is added.
*
* @legacy Use `AddCommentAnnotationEvent` instead
*/
public onCommentAdd: () => Observable<CommentAddEventData>;
/**
* To get data when comment is updated.
*
* @legacy Use action specific events instead
*/
public onCommentUpdate: () => Observable<CommentUpdateEventData>;
/**
* To add comment on selected text.
*/
public addCommentOnSelectedText: () => void;
/**
* To enable navigation when comment is clicked in sidebar.
*/
public enableSidebarUrlNavigation: () => void;
/**
* To disable navigation when comment is clicked in sidebar.
*/
public disableSidebarUrlNavigation: () => void;
/**
* To enable sidebar button on comment dialog.
*/
public enableSidebarButtonOnCommentDialog: () => void;
/**
* To disable sidebar button on comment dialog.
*/
public disableSidebarButtonOnCommentDialog: () => void;
/**
* To detect click on sidebar button on comment dialog.
*/
public onSidebarButtonOnCommentDialogClick: () => Observable<any>;
/**
* To enable reactions in comments
*/
public enableReactions: () => void;
/**
* To disable reactions in comments
*/
public disableReactions: () => void;
/**
* To set allowed recordings in comments
* @param allowedRecordings "all", "none" or "audio", "video", "screen"
*/
public setRecordings: (allowedRecordings: string | string[]) => void;
/**
* To manually add comment on element.
* @param data comment data
*/
public addCommentOnElement: (data: CommentOnElementConfig) => void;
/**
* To enable private comment mode to add private comments.
* This mode can be enabled for admin users only.
*/
public enablePrivateCommentMode: () => void;
/**
* To disable private comment mode.
*/
public disablePrivateCommentMode: () => void;
/**
* To enable scroll to comment.
*/
public enableScrollToComment: () => void;
/**
* To disable scroll to comment.
*/
public disableScrollToComment: () => void;
/**
* To enable user mentions in comments
*/
public enableUserMentions: () => void;
/**
* To disable user mentions in comments
*/
public disableUserMentions: () => void;
/**
* To apply filters on comment sidebar.
* @param filters Filters to be applied on comment sidebar
*/
public setCommentSidebarFilters: (filters: any) => void;
/**
* To set system filters operator on comment sidebar.
* @param operator System filters operator
*/
public setSystemFiltersOperator: (operator: CommentSidebarSystemFiltersOperator) => void;
/**
* To enable comment pin highlighter.
*/
public enableCommentPinHighlighter: () => void;
/**
* To disable comment pin highlighter.
*/
public disableCommentPinHighlighter: () => void;
/**
* To enable deleting comment on backspace.
*/
public enableDeleteOnBackspace: () => void;
/**
* To disable deleting comment on backspace.
*/
public disableDeleteOnBackspace: () => void;
/**
* To enable hotkey.
*/
public enableHotkey: () => void;
/**
* To disable hotkey.
*/
public disableHotkey: () => void;
/**
* To enable option to show device indicator on comment pins for the pin added from different devices.
*/
public enableDeviceIndicatorOnCommentPins: () => void;
/**
* To disable option to show device indicator on comment pins for the pin added from different devices.
*/
public disableDeviceIndicatorOnCommentPins: () => void;
/**
* To get xpath of element by comment annotation id
* @param annotationId Comment annotation id
* @returns xpath of element
*/
public getElementRefByAnnotationId: (annotationId: string) => { xpath: string } | undefined;
/**
* To scroll to comment by annotation id
* @param annotationId Comment annotation id
*/
public scrollToCommentByAnnotationId: (annotationId: string) => void;
/**
* To select comment by annotation id
* @param annotationId Comment annotation id
*/
public selectCommentByAnnotationId: (annotationId: string) => void;
/**
* To enable showing recording summary in comments
* @deprecated Use `enableRecordingTranscription` instead
*/
public enableRecordingSummary: () => void;
/**
* To disable showing recording summary in comments
* @deprecated Use `disableRecordingTranscription` instead
*/
public disableRecordingSummary: () => void;
/**
* To enable recording transcription
*/
public enableRecordingTranscription: () => void;
/**
* To disable recording transcription
*/
public disableRecordingTranscription: () => void;
/**
* To enable recording countdown
*/
public enableRecordingCountdown: () => void;
/**
* To disable recording countdown
*/
public disableRecordingCountdown: () => void;
/**
* To set unread indicator mode
* @param mode unread indicator mode
*/
public setUnreadIndicatorMode: (mode: string) => void;
/**
* To enable enter key to submit comment
*/
public enableEnterKeyToSubmit: () => void;
/**
* To disable enter key to submit comment
*/
public disableEnterKeyToSubmit: () => void;
/**
* To enable shadow DOM on comment pin
*/
public enablePinShadowDOM: () => void;
/**
* To disable shadow DOM on comment pin
*/
public disablePinShadowDOM: () => void;
/**
* To enable shadow DOM on comment dialog
*/
public enableDialogShadowDOM: () => void;
/**
* To disable shadow DOM on comment dialog
*/
public disableDialogShadowDOM: () => void;
/**
* To enable shadow DOM on comment sidebar
*/
public enableSidebarShadowDOM: () => void;
/**
* To disable shadow DOM on comment sidebar
*/
public disableSidebarShadowDOM: () => void;
/**
* To enable change detection when comment mode is on
*/
public enableChangeDetectionInCommentMode: () => void;
/**
* To disable change detection when comment mode is on
*/
public disableChangeDetectionInCommentMode: () => void;
/**
* To show resolved comments on DOM
*/
public showResolvedCommentsOnDom: () => void;
/**
* To hide resolved comments on DOM
*/
public hideResolvedCommentsOnDom: () => void;
/**
* To set custom reactions
* @param reactions Reactions to be set
*/
public setCustomReactions: (reactions: ReactionMap) => void;
/**
* To detect comment selection change
* @returns Observable<CommentSelectionChangeData | null>
*/
public onCommentSelectionChange: () => Observable<CommentSelectionChangeData | null>;
/**
* Subscribe to unread comments count by annotation id
*
* Returns Observable<UnreadCommentsCount>.
*/
public getUnreadCommentCountByAnnotationId: (commentAnnotationId: string) => Observable<UnreadCommentsCount>;
/**
* Subscribe to unread comments annotation count on current document
*
* Returns Observable<UnreadCommentsCount>.
*/
public getUnreadCommentAnnotationCountOnCurrentDocument: () => Observable<UnreadCommentsCount>;
/**
* Subscribe to unread comments count on current document
*
* Returns Observable<UnreadCommentsCount>.
*/
public getUnreadCommentCountOnCurrentDocument: () => Observable<UnreadCommentsCount>;
/**
* Subscribe to unread comments annotation count by location id
*
* Returns Observable<UnreadCommentsCount>.
*/
public getUnreadCommentAnnotationCountByLocationId: (locationId: string) => Observable<UnreadCommentsCount>;
/**
* Subscribe to unread comments count by location id
*
* Returns Observable<UnreadCommentsCount>.
*/
public getUnreadCommentCountByLocationId: (locationId: string) => Observable<UnreadCommentsCount>;
/**
* To update comment dialog position
*/
public updateCommentDialogPosition: () => void;
/**
* To enable area comment
*/
public enableAreaComment: () => void;
/**
* To disable area comment
*/
public disableAreaComment: () => void;
/**
* To set pin cursor image
* @param image image base64 string
*/
public setPinCursorImage: (image: string) => void;
/**
* To add manual comment annotation.
* @param config manual comment annotation config
*/
public addManualComment: (config: ManualCommentAnnotationConfig) => Promise<any>;
/**
* To add custom list dropdown on comment annotation.
* @param data custom list data
*/
public createCustomListDataOnAnnotation: (data: CustomAnnotationDropdownData) => void;
/**
* To add custom list dropdown on comment.
* @param data custom list data
*/
public createCustomListDataOnComment: (data: AutocompleteData) => void;
/**
* To exclude annotations by location ids from sidebar
* @param locationIds Location Ids to be excluded from sidebar
*/
public excludeLocationIdsFromSidebar: (locationIds: string[]) => void;
/**
* To enable bubble on pin
*/
public enableBubbleOnPin: () => void;
/**
* To disable bubble on pin
*/
public disableBubbleOnPin: () => void;
/**
* To enable bubble on pin hover
*/
public enableBubbleOnPinHover: () => void;
/**
* To disable bubble on pin hover
*/
public disableBubbleOnPinHover: () => void;
/**
* To enable multi thread mode
* @deprecated Use `enableMultiThread` instead
*/
public enableMultiThreadMode: () => void;
/**
* To disable multi thread mode
* @deprecated Use `disableMultiThread` instead
*/
public disableMultiThreadMode: () => void;
/**
* To enable multi thread mode
*/
public enableMultiThread: () => void;
/**
* To disable multi thread mode
*/
public disableMultiThread: () => void;
/**
* To enable group multiple match
* @deprecated Use enableGroupMatchedComments instead
*/
public enableGroupMultipleMatch: () => void;
/**
* To disable group multiple match
* @deprecated Use disableGroupMatchedComments instead
*/
public disableGroupMultipleMatch: () => void;
/**
* To enable group matched comments
*/
public enableGroupMatchedComments: () => void;
/**
* To disable group matched comments
*/
public disableGroupMatchedComments: () => void;
/**
* To update context of comment annotation
* @param annotationId Comment annotation id
* @param context Context to be updated
* @param config Update context config
* @returns Promise<any>
*/
public updateContext: (annotationId: string, context: any, config?: UpdateContextConfig) => Promise<any>;
/**
* Subscribe to selected comments
* @returns list of selected comments
*/
public getSelectedComments: () => Observable<CommentAnnotation[]>;
/**
* To enable delete reply confirmation
*/
public enableDeleteReplyConfirmation: () => void;
/**
* To disable delete reply confirmation
*/
public disableDeleteReplyConfirmation: () => void;
/**
* Subscribe to copy link
* @returns link to be copied
*/
public onCopyLink: () => Observable<string>;
/**
* To get comment annotation by id
* @param annotationId Annotation Id
* @param documentId Document Id
* @returns Observable<CommentAnnotation | null>
*/
public getCommentAnnotationById: (config: { annotationId: string, documentId?: string }) => Observable<CommentAnnotation | null>;
/**
* To enable collapsed comment
*/
public enableCollapsedComments: () => void;
/**
* To disable collapsed comment
*/
public disableCollapsedComments: () => void;
/**
* To enable query params comments
*/
public enableQueryParamsComments: () => void;
/**
* To disable query params comments
*/
public disableQueryParamsComments: () => void;
/**
* Subscribe to comment sidebar action button click
* @returns comment sidebar data
*/
public onCommentSidebarActionButtonClick: () => Observable<CommentSidebarCustomActionEventData | null>;
/**
* To set comment sidebar data
* @param data comment sidebar data
*/
public setCommentSidebarData: (data: CommentSidebarData[], options?: CommentSidebarDataOptions) => void;
/**
* Subscribe to comment sidebar init
* @returns comment sidebar data
*/
public onCommentSidebarInit: () => Observable<CommentSidebarCustomActionEventData | null>;
/**
* Subscribe to comment sidebar data
* @returns comment sidebar data
*/
public onCommentSidebarData: () => Observable<CommentSidebarCustomActionEventData | null>;
/**
* To set comment sidebar default actions config
* @param data comment sidebar default actions config
*/
public setCommentSidebarDefaultCustomActions: (data: CommentSidebarCustomActionsState) => void;
/**
* To enable comment sidebar custom filter mode
*/
public enableSidebarCustomActions: () => void;
/**
* To disable comment sidebar custom filter mode
*/
public disableSidebarCustomActions: () => void;
// /**
// * To get comment navigation button click
// * @returns comment navigation button click
// */
// public onCommentNavigationButtonClick: () => Observable<any>;
/**
* To enable resolve status access admin only
*/
public enableResolveStatusAccessAdminOnly: () => void;
/**
* To disable resolve status access admin only
*/
public disableResolveStatusAccessAdminOnly: () => void;
/**
* To enable seen by users
*/
public enableSeenByUsers: () => void;
/**
* To disable seen by users
*/
public disableSeenByUsers: () => void;
/**
* To enable short user name
*/
public enableShortUserName: () => void;
/**
* To disable short user name
*/
public disableShortUserName: () => void;
/**
* To add comment annotation
*/
public addCommentAnnotation: (request: AddCommentAnnotationRequest) => Promise<AddCommentAnnotationEvent | null>;
/**
* To approve comment annotation
*/
public approveCommentAnnotation: (request: ApproveCommentAnnotationRequest) => Promise<ApproveCommentAnnotationEvent | null>;
/**
* To accept comment annotation
*/
public acceptCommentAnnotation: (request: AcceptCommentAnnotationRequest) => Promise<AcceptCommentAnnotationEvent | null>;
/**
* To reject comment annotation
*/
public rejectCommentAnnotation: (request: RejectCommentAnnotationRequest) => Promise<RejectCommentAnnotationEvent | null>;
/**
* To subscribe comment annotation
*/
public subscribeCommentAnnotation: (request: SubscribeCommentAnnotationRequest) => Promise<SubscribeCommentAnnotationEvent | null>;
/**
* To unsubscribe comment annotation
*/
public unsubscribeCommentAnnotation: (request: UnsubscribeCommentAnnotationRequest) => Promise<UnsubscribeCommentAnnotationEvent | null>;
/**
* To delete comment annotation
*/
public deleteCommentAnnotation: (request: DeleteCommentAnnotationRequest) => Promise<DeleteCommentAnnotationEvent | null>;
/**
* To get comment annotations
*/
public getCommentAnnotations: (query?: CommentRequestQuery) => Observable<GetCommentAnnotationsResponse>;
/**
* To get comment annotations count
*/
public getCommentAnnotationsCount: (query?: CommentRequestQuery) => Observable<GetCommentAnnotationsCountResponse>;
/**
* To assign user to comment annotation
*/
public assignUser: (request: AssignUserRequest) => Promise<AssignUserEvent | null>;
/**
* To update priority
*/
public updatePriority: (request: UpdatePriorityRequest) => Promise<UpdatePriorityEvent | null>;
/**
* To update status
*/
public updateStatus: (request: UpdateStatusRequest) => Promise<UpdateStatusEvent | null>;
/**
* To update access
*/
public updateAccess: (request: UpdateAccessRequest) => Promise<UpdateAccessEvent | null>;
/**
* To resolve comment annotation
*/
public resolveCommentAnnotation: (request: ResolveCommentAnnotationRequest) => Promise<any>;
/**
* To get link
*/
public getLink: (request: GetLinkRequest) => Promise<GetLinkEvent | null>;
/**
* To copy link
*/
public copyLink: (request: CopyLinkRequest) => Promise<CopyLinkEvent | null>;
/**
* To add comment
*/
public addComment: (request: AddCommentRequest) => Promise<AddCommentEvent | null>;
/**
* To update comment
*/
public updateComment: (request: UpdateCommentRequest) => Promise<UpdateCommentEvent | null>;
/**
* To delete comment
*/
public deleteComment: (request: DeleteCommentRequest) => Promise<DeleteCommentEvent | null>;
/**
* To get comment
*/
public getComment: (request: GetCommentRequest) => Promise<Comment[]>;
/**
* To add attachment
*/
public addAttachment: (request: AddAttachmentRequest) => Promise<AddAttachmentResponse[]>;
/**
* To get attachment
*/
public getAttachment: (request: GetAttachmentRequest) => Promise<Attachment[]>;
/**
* To delete attachment
*/
public deleteAttachment: (request: DeleteAttachmentRequest) => Promise<DeleteAttachmentEvent | null>;
/**
* To get recording
*/
public getRecording: (request: GetRecordingRequest) => Promise<RecordedData[]>;
/**
* To delete recording
*/
public deleteRecording: (request: DeleteRecordingRequest) => Promise<DeleteRecordingEvent | null>;
/**
* To add reaction
*/
public addReaction: (request: AddReactionRequest) => Promise<AddReactionEvent | null>;
/**
* To delete reaction
*/
public deleteReaction: (request: DeleteReactionRequest) => Promise<DeleteReactionEvent | null>;
/**
* To toggle reaction
*/
public toggleReaction: (request: ToggleReactionRequest) => Promise<ToggleReactionEvent | null>;
/**
* Subscribe to comment actions
*/
public on: <T extends keyof CommentEventTypesMap>(action: T) => Observable<CommentEventTypesMap[T]>;
/**
* To enable read only
*/
public enableReadOnly: () => void;
/**
* To disable read only
*/
public disableReadOnly: () => void;
/**
* To enable custom autocomplete search
*/
public enableCustomAutocompleteSearch: () => void;
/**
* To disable custom autocomplete search
*/
public disableCustomAutocompleteSearch: () => void;
/**
* To set transform context
*/
public setTransformContext: (transformContext: TransformContext) => void;
/**
* To fetch comment annotations
*/
public fetchCommentAnnotations: (fetchCommentAnnotationsRequest: FetchCommentAnnotationsRequest) => Promise<FetchCommentAnnotationsResponse>;
/**
* To enable svg as img
*/
public enableSvgAsImg: () => void;
/**
* To disable svg as img
*/
public disableSvgAsImg: () => void;
/**
* To enable full expanded
*/
public enableFullExpanded: () => void;
/**
* To disable full expanded
*/
public disableFullExpanded: () => void;
/**
* To enable comment to nearest allowed element
*/
public enableCommentToNearestAllowedElement: () => void;
/**
* To disable comment to nearest allowed element
*/
public disableCommentToNearestAllowedElement: () => void;
/**
* To enable draft mode
*/
public enableDraftMode: () => void;
/**
* To disable draft mode
*/
public disableDraftMode: () => void;
/**
* To enable filter comments on dom
*/
public enableFilterCommentsOnDom: () => void;
/**
* To disable filter comments on dom
*/
public disableFilterCommentsOnDom: () => void;
/**
* To enable reply avatars
*/
public enableReplyAvatars: () => void;
/**
* To disable reply avatars
*/
public disableReplyAvatars: () => void;
/**
* To set max reply avatars
*/
public setMaxReplyAvatars: (maxReplyAvatars: number) => void;
/**
* To set sidebar button count type
*/
public setSidebarButtonCountType: (type: SidebarButtonCountType) => void;
/**
* To enable filter ghost comments in sidebar
*/
public enableFilterGhostCommentsInSidebar: () => void;
/**
* To disable filter ghost comments in sidebar
*/
public disableFilterGhostCommentsInSidebar: () => void;
/**
* To enable link callback
*/
public enableLinkCallback: () => void;
/**
* To disable link callback
*/
public disableLinkCallback: () => void;
/**
* To enable full screen in sidebar
*/
public enableFullScreenInSidebar: () => void;
/**
* To disable full screen in sidebar
*/
public disableFullScreenInSidebar: () => void;
/**
* To set composer file attachments
*/
public setComposerFileAttachments: (data: UploadFileData) => void;
/**
* To set allowed file types
*/
public setAllowedFileTypes: (allowedFileTypes: string[]) => void;
constructor();
/**
* Subscribe to comments on the current document.
*
* Returns Observable<CommentPinAnnotation[] | null>.
*/
private _getAllCommentAnnotations;
/**
* To delete selected comments
*/
private _deleteSelectedComment;
/**
* To enable text comment selection
*/
private _enableTextComments;
/**
* To disable text comment selection
*/
private _disableTextComments;
/**
* To allow text selection in specific elements only
* @param elementIds Element ids to be allowed for text selection
*/
private _allowedElementIds;
/**
* To allow adding comments in specific elements only
* @param classNames Element class names to be allowed for adding comments
*/
private _allowedElementClassNames;
/**
* To allow adding comments in specific elements only
* @param querySelectors Element query selectors to be allowed for adding comments
*/
private _allowedElementQuerySelectors;
/**
* To enable floating comment dialog
*/
private _enableFloatingCommentDialog;
/**
* To disable floating comment dialog
*/
private _disableFloatingCommentDialog;
/**
* To add comments on specific elements
*
* @param elementId ID of html element
*/
private _attachComment;
/**
* To open comment sidebar
*/
private _openCommentSidebar;
/**
* To close comment sidebar
*/
private _closeCommentSidebar;
/**
* To toggle comment sidebar
*/
private _toggleCommentSidebar;
/**
* To enable moderator mode
*/
private _enableModeratorMode;
/**
* To disable moderator mode
*/
private _disableModeratorMode;
/**
* To enable stream mode
*/
private _enableStreamMode;
/**
* To disable stream mode
*/
private _disableStreamMode;
/**
* To show sign in button in comments if user is signed out
*/
private _enableSignInButton;
/**
* To hide sign in button in comments if user is signed out
*/
private _disableSignInButton;
/**
* To enable upgrade button in comments when plan is expired
*/
private _enableUpgradeButton;
/**
* To disable upgrade button in comments when plan is expired
*/
private _disableUpgradeButton;
/**
* Subscribe to comment mode change.
*
* Returns Observable<boolean>.
*/
private _onCommentModeChange;
/**
* To enable attachments feature in comments
*/
private _enableAttachments;
/**
* To disable attachments feature in comments
*/
private _disableAttachments;
/**
* Enable device info in comments
*/
private _enableDeviceInfo;
/**
* Disable device info in comments
*/
private _disableDeviceInfo;
/**
* Enable comment mode to add comments.
*/
private _enableCommentMode;
/**
* Disable comment mode.
*/
private _disableCommentMode;
/**
* Enable persistent comment mode.
*/
private _enablePersistentCommentMode;
/**
* Disable persistent comment mode.
*/
private _disablePersistentCommentMode;
/**
* To enable comment number
*/
private _enableCommentIndex;
/**
* To disable comment number
*/
private _disableCommentIndex;
/**
* To enable popover mode
*/
private _enablePopoverMode;
/**
* To disable popover mode
*/
private _disablePopoverMode;
/**
* To show triangle in popover mode
*/
private _enablePopoverTriangleComponent;
/**
* To hide triangle in popover mode
*/
private _disablePopoverTriangleComponent;
/**
* To enable dialog on hover
*/
private _enableDialogOnHover;
/**
* To disable dialog on hover
*/
private _disableDialogOnHover;
/**
* To enable feature to show dialog on target element click
*/
private _enableDialogOnTargetElementClick;
/**
* To disable feature to show dialog on target element click
*/
private _disableDialogOnTargetElementClick;
/**
* To enable feature to set priority on comments
*/
private _enablePriority;
/**
* To disable feature to set priority on comments
*/
private _disablePriority;
/**
* To enable feature to set status on comments
*/
private _enableStatus;
/**
* To disable feature to set status on comments
*/
private _disableStatus;
/**
* To enable feature to show resolve button
*/
private _enableResolveButton;
/**
* To disable feature to show resolve button
*/
private _disableResolveButton;
/**
* To enable feature to show ghost comments
*/
private _enableGhostComments;
/**
* To disable feature to show ghost comments
*/
private _disableGhostComments;
/**
* To enable feature to show ghost comments message in comment dialog and comment sidebar
*/
private _enableGhostCommentsIndicator;
/**
* To disable feature to show ghost comments message in comment dialog and comment sidebar
*/
private _disableGhostCommentsIndicator;
/**
* @description Sets custom status filters
* @param statuses
*/
private _setCustomStatus;
/**
* @description Sets custom priority filters
* @param priorities
*/
private _setCustomPriority;
/**
* @description Sets custom categories filters
* @param categories
*/
private _setCustomCategory;
/**
* To enable inbox mode
*/
private _enableInboxMode;
/**
* To disable inbox mode
*/
private _disableInboxMode;
/**
* To enable auto categorize feature
*/
private _enableAutoCategorize;
/**
* To disable auto categorize feature
*/
private _disableAutoCategorize;
/**
* To enable dark mode in comments
*/
private _enableDarkMode;
/**
* To disable dark mode in comments
*/
private _disableDarkMode;
/**
* @description Sets the comment context provider
* @param provider
*/
private _setContextProvider;
/**
* To enable suggestion mode
*/
private _enableSuggestionMode;
/**
* To disable suggestion mode
*/
private _disableSuggestionMode;
/**
* To enable mobile mode
*/
private _enableMobileMode;
/**
* To disable mobile mode
*/
private _disableMobileMode;
/**
* To enable inline comment mode
*/
private _enableInlineCommentMode;
/**
* To disable inline comment mode
*/
private _disableInlineCommentMode;
/**
* To enable minimap
*/
private _enableMinimap;
/**
* To disable minimap
*/
private _disableMinimap;
/**
* To show comments on DOM
*/
private _showCommentsOnDom;
/**
* To hide comments on DOM
*/
private _hideCommentsOnDom;
/**
* To enable comment tool
*/
private _enableCommentTool;
/**
* To disable comment tool
*/
private _disableCommentTool;
/**
* To set total media length.
*/
private _setTotalMediaLength;
/**
* To get documentId, location and set context data when comment is added.
*/
private _onCommentAdd;
/**
* To get data when comment is updated.
*/
private _onCommentUpdate;
/**
* To add comment on selected text.
*/
private _addCommentOnSelectedText;
/**
* To enable navigation when comment is clicked in sidebar.
*/
private _enableSidebarUrlNavigation;
/**
* To disable navigation when comment is clicked in sidebar.
*/
private _disableSidebarUrlNavigation;
/**
* To enable sidebar button on comment dialog.
*/
private _enableSidebarButtonOnCommentDialog;
/**
* To disable sidebar button on comment dialog.
*/
private _disableSidebarButtonOnCommentDialog;
/**
* To detect click on sidebar button on comment dialog.
*/
private _onSidebarButtonOnCommentDialogClick;
/**
* To enable reactions in comments
*/
private _enableReactions;
/**
* To disable reactions in comments
*/
private _disableReactions;
/**
* To set allowed recordings in comments
* @param allowedRecordings "all", "none" or "audio", "video", "screen"
*/
private _setRecordings;
/**
* To manually add comment on element.
* @param data comment data
*/
private _addCommentOnElement;
/**
* To enable private comment mode to add private comments.
* This mode can be enabled for admin users only.
*/
private _enablePrivateCommentMode;
/**
* To disable private comment mode.
*/
private _disablePrivateCommentMode;
/**
* To enable scroll to comment.
*/
private _enableScrollToComment;
/**
* To disable scroll to comment.
*/
private _disableScrollToComment;
/**
* To enable user mentions in comments
*/
private _enableUserMentions;
/**
* To disable user mentions in comments
*/
private _disableUserMentions;
/**
* To apply filters on comment sidebar.
* @param filters Filters to be applied on comment sidebar
*/
private _setCommentSidebarFilters;
/**
* To set system filters operator on comment sidebar.
* @param operator System filters operator
*/
private _setSystemFiltersOperator;
/**
* To enable comment pin highlighter.
*/
private _enableCommentPinHighlighter;
/**
* To disable comment pin highlighter.
*/
private _disableCommentPinHighlighter;
/**
* To enable deleting comment on backspace.
*/
private _enableDeleteOnBackspace;
/**
* To disable deleting comment on backspace.
*/
private _disableDeleteOnBackspace;
/**
* To enable hotkey.
*/
private _enableHotkey;
/**
* To disable hotkey.
*/
private _disableHotkey;
/**
* To enable option to show device indicator on comment pins for the pin added from different devices.
*/
private _enableDeviceIndicatorOnCommentPins;
/**
* To disable option to show device indicator on comment pins for the pin added from different devices.
*/
private _disableDeviceIndicatorOnCommentPins;
/**
* To get xpath of element by comment annotation id
* @param annotationId Comment annotation id
* @returns xpath of element
*/
private _getElementRefByAnnotationId;
/**
* To scroll to comment by annotation id
* @param annotationId Comment annotation id
*/
private _scrollToCommentByAnnotationId;
/**
* To select comment by annotation id
* @param annotationId Comment annotation id
*/
private _selectCommentByAnnotationId;
/**
* To enable showing recording summary in comments
* @deprecated Use `enableRecordingTranscription` instead
*/
private _enableRecordingSummary;
/**
* To disable showing recording summary in comments
* @deprecated Use `disableRecordingTranscription` instead
*/
private _disableRecordingSummary;
/**
* To enable recording transcription
*/
private _enableRecordingTranscription;
/**
* To disable recording transcription
*/
private _disableRecordingTranscription;
/**
* To enable recording countdown
*/
private _enableRecordingCountdown;
/**
* To disable recording countdown
*/
private _disableRecordingCountdown;
/**
* To set unread indicator mode
* @param mode unread indicator mode
*/
private _setUnreadIndicatorMode;
/**
* To enable enter key to submit comment
*/
private _enableEnterKeyToSubmit;
/**
* To disable enter key to submit comment
*/
private _disableEnterKeyToSubmit;
/**
* To enable shadow DOM on comment pin
*/
private _enablePinShadowDOM;
/**
* To disable shadow DOM on comment pin
*/
private _disablePinShadowDOM;
/**
* To enable shadow DOM on comment dialog
*/
private _enableDialogShadowDOM;
/**
* To disable shadow DOM on comment dialog
*/
private _disableDialogShadowDOM;
/**
* To enable shadow DOM on comment sidebar
*/
private _enableSidebarShadowDOM;
/**
* To disable shadow DOM on comment sidebar
*/
private _disableSidebarShadowDOM;
/**
* To enable change detection when comment mode is on
*/
private _enableChangeDetectionInCommentMode;
/**
* To disable change detection when comment mode is on
*/
private _disableChangeDetectionInCommentMode;
/**
* To show resolved comments on DOM
*/
private _showResolvedCommentsOnDom;
/**
* To hide resolved comments on DOM
*/
private _hideResolvedCommentsOnDom;
/**
* To set custom reactions
* @param reactions Reactions to be set
*/
private _setCustomReactions;
/**
* To detect comment selection change
* @returns Observable<CommentSelectionChangeData | null>
*/
private _onCommentSelectionChange;
/**
* To get unread comments count by annotation id
* @returns Observable<UnreadCommentsCount>.
*/
private _getUnreadCommentCountByAnnotationId;
/**
* To get unread comments annotation count on current document
* @returns Observable<UnreadCommentsCount>.
*/
private _getUnreadCommentAnnotationCountOnCurrentDocument;
/**
* To get unread comments count on current document
* @returns Observable<UnreadCommentsCount>.
*/
private _getUnreadCommentCountOnCurrentDocument;
/**
* To get unread comments annotation count by location id
* @returns Observable<UnreadCommentsCount>.
*/
private _getUnreadCommentAnnotationCountByLocationId;
/**
* To get unread comments count by location id
* @returns Observable<UnreadCommentsCount>.
*/
private _getUnreadCommentCountByLocationId;
/**
* To update comment dialog position
*/
private _updateCommentDialogPosition;
/**
* To enable area comment
*/
private _enableAreaComment;
/**
* To disable area comment
*/
private _disableAreaComment;
/**
* To set pin cursor image
* @param image image base64 string
*/
private _setPinCursorImage;
/**
* To add manual comment annotation.
* @param config manual comment annotation config
*/
private _addManualComment;
/**
* To add custom list dropdown on comment annotation.
* @param data custom list data
*/
private _createCustomListDataOnAnnotation;
/**
* To add custom list dropdown on comment.
* @param data custom list data
*/
private _createCustomListDataOnComment;
/**
* To exclude annotations by location ids from sidebar
* @param locationIds Location Ids to be excluded from sidebar
*/
private _excludeLocationIdsFromSidebar;
/**
* To enable bubble on pin
*/
private _enableBubbleOnPin;
/**
* To disable bubble on pin
*/
private _disableBubbleOnPin;
/**
* To enable bubble on pin hover
*/
private _enableBubbleOnPinHover;
/**
* To disable bubble on pin hover
*/
private _disableBubbleOnPinHover;
/**
* To enable multi thread mode
* @deprecated Use `enableMultiThread` instead
*/
private _enableMultiThreadMode;
/**
* To disable multi thread mode
* @deprecated Use `disableMultiThread` instead
*/
private _disableMultiThreadMode;
/**
* To enable multi thread mode
*/
private _enableMultiThread;
/**
* To disable multi thread mode
*/
private _disableMultiThread;
/**
* To enable group multiple match
* @deprecated Use enableGroupMatchedComments instead
*/
private _enableGroupMultipleMatch;
/**
* To disable group multiple match
* @deprecated Use disableGroupMatchedComments instead
*/
private _disableGroupMultipleMatch;
/**
* To enable group matched comments
*/
private _enableGroupMatchedComments;
/**
* To disable group matched comments
*/
private _disableGroupMatchedComments;
/**
* To update context of comment annotation
* @param annotationId Comment annotation id
* @param context Context to be updated
* @param config Update context config
* @returns Promise<any>
*/
private _updateContext;
/**
* Subscribe to selected comments
* @returns list of selected comments
*/
private _getSelectedComments;
/**
* To enable delete reply confirmation
*/
private _enableDeleteReplyConfirmation;
/**
* To disable delete reply confirmation
*/
private _disableDeleteReplyConfirmation;
/**
* Subscribe to copy link
* @returns link to be copied
*/
private _onCopyLink;
/**
* To get comment annotation by id
* @param config Comment annotation config
* @returns Observable<CommentAnnotation | null>
*/
private _getCommentAnnotationById;
/**
* To enable collapsed comment
*/
private _enableCollapsedComments;
/**
* To disable collapsed comment
*/
private _disableCollapsedComments;
/**
* To enable query params comments
*/
private _enableQueryParamsComments;
/**
* To disable query params comments
*/
private _disableQueryParamsComments;
/**
* To enable comment sidebar action button click
*/
private _onCommentSidebarActionButtonClick;
/**
* To set comment sidebar data
* @param data comment sidebar data
* @param options options
*/
private _setCommentSidebarData;
/**
* To subscribe to comment sidebar init
* @returns comment sidebar data
*/
private _onCommentSidebarInit;
/**
* To subscribe to comment sidebar data
* @returns comment sidebar data
*/
private _onCommentSidebarData;
/**
* To set comment sidebar default actions config
* @param data comment sidebar default actions config
*/
private _setCommentSidebarDefaultCustomActions;
/**
* To enable comment sidebar custom filter mode
*/
private _enableSidebarCustomActions;
/**
* To disable comment sidebar custom filter mode
*/
private _disableSidebarCustomActions;
// /**
// * To get comment navigation button click
// * @returns comment navigation button click
// */
// private _onCommentNavigationButtonClick;
/**
* To enable resolve status access admin only
*/
private _enableResolveStatusAccessAdminOnly;
/**
* To disable resolve status access admin only
*/
private _disableResolveStatusAccessAdminOnly;
/**
* To enable seen by users
*/
private _enableSeenByUsers;
/**
* To disable seen by users
*/
private _disableSeenByUsers;
/**
* To enable short user name
*/
private _enableShortUserName;
/**
* To disable short user name
*/
private _disableShortUserName;
// actions
/**
* To add comment annotation
*/
private _addCommentAnnotation;
/**
* To approve comment annotation
*/
private _approveCommentAnnotation;
/**
* To accept comment annotation
*/
private _acceptCommentAnnotation;
/**
* To reject comment annotation
*/
private _rejectCommentAnnotation;
/**
* To subscribe to comment annotation
*/
private _subscribeCommentAnnotation;
/**
* To unsubscribe to comment annotation
*/
private _unsubscribeCommentAnnotation;
/**
* To delete comment annotation
*/
private _deleteCommentAnnotation;
/**
* To get comment annotations
*/
private _getCommentAnnotations;
/**
* To get comment annotations count
*/
private _getCommentAnnotationsCount;
/**
* To assign user to comment annotation
*/
private _assignUser;
/**
* To update priority
*/
private _updatePriority;
/**
* To update status
*/
private _updateStatus;
/**