import { MouseEvent } from 'react';
import { IComment } from '../../extensions/comment';
import { CommentCardProps } from './types';

export declare const useCommentCard: ({ username, comment, replies, onResolve, onRequestDelete, onUnresolve, onFocusRequest, isResolved, isDropdown, isCommentDrawerContext, activeCommentId, id, isFocused, }: CommentCardProps) => {
    commentsContainerRef: import('react').RefObject<HTMLDivElement>;
    displayedComment: string | undefined;
    displayedReplies: IComment[];
    dropdownRef: import('react').RefObject<HTMLDivElement>;
    ensStatus: import('./types').EnsStatus;
    focusCardIfNeeded: () => void;
    handleCommentExpandClick: (event: MouseEvent<HTMLButtonElement>) => void;
    handleReplyToggleClick: (event: MouseEvent<HTMLElement>) => void;
    handleRequestEditClick: () => void;
    handleRequestDeleteClick: () => void;
    handleResolveClick: (event: MouseEvent<HTMLButtonElement>) => void;
    handleUnresolveClick: () => void;
    isBelow1280px: boolean;
    isCardActive: boolean;
    isCommentExpanded: boolean;
    isCommentMobileFocused: boolean;
    isCommentTruncated: boolean;
    replyToggleLabel: string;
    shouldShowReplyThread: boolean;
    shouldShowReplyToggle: boolean;
    shouldShowResolvedMobileReplyCount: boolean;
    showAllReplies: boolean;
    visibleReplies: IComment[];
};
