import { CardProps } from '@mui/material';
import { SCCommentType, SCFeedObjectType, SCFeedObjectTypologyType } from '@selfcommunity/core';
import { CommentsOrderBy } from '../../types/comments';
export interface CommentObjectProps {
    /**
     * Overrides or extends the styles applied to the component.
     * @default null
     */
    className?: string;
    /**
     * Id of the comment object
     * @default null
     */
    commentObjectId?: number;
    /**
     * Comment object
     * @default null
     */
    commentObject?: SCCommentType;
    /**
     * Id of feed object
     * @default null
     */
    feedObjectId?: number;
    /**
     * Feed object
     * @default null
     */
    feedObject?: SCFeedObjectType;
    /**
     * Type of feed object
     * @default SCFeedObjectTypologyType.POST
     */
    feedObjectType?: SCFeedObjectTypologyType;
    /**
     * comments per page (latest_comments)
     * @default null
     */
    commentsPageCount?: number;
    /**
     * comments orderBy
     * @default CommentsOrderBy.ADDED_AT_DESC
     */
    commentsOrderBy?: CommentsOrderBy;
    /**
     * comment to reply
     * Used to intial open reply box for that comment
     * @default null
     */
    commentReply?: SCCommentType;
    /**
     * Callback on open reply box
     * @default null
     */
    onOpenReply?: (comment: SCCommentType) => void;
    /**
     * Callback on vote the comment or a sub-comment (latest_comments)
     * @default null
     */
    onVote?: (comment: SCCommentType) => void;
    /**
     * Callback on fecth latest comments
     * @default null
     */
    onFetchLatestComment?: () => void;
    /**
     * Props to spread to single comment object skeleton
     * @default {elevation: 0}
     */
    CommentObjectSkeletonProps?: CardProps;
    /**
     * Props to spread to single comment object ReplyCommentObject
     * @default {elevation: 0}
     */
    ReplyCommentObjectProps?: CardProps;
    /**
     * Other props
     */
    [p: string]: any;
}
export default function CommentObject(props: CommentObjectProps): JSX.Element;
//# sourceMappingURL=CommentObject.d.ts.map