import { Sort as SortPrimitive } from '@wix/headless-components/react'; import React from 'react'; import type { CommentsServiceAPI, CommentWithResolvedFields, QueryCommentsSort } from '../../services/comments-service.js'; export interface CommentsProps { children: (props: CommentsRenderProps) => React.ReactNode; } export interface CommentsRenderProps { comments: ReturnType; isEmpty: CommentsServiceAPI['isEmpty']; hasNextPage: CommentsServiceAPI['hasNextPage']; isLoading: CommentsServiceAPI['isLoading']; initialLoad: CommentsServiceAPI['initialLoad']; loadMore: CommentsServiceAPI['loadMore']; } export declare const Comments: { (props: CommentsProps): React.ReactNode; displayName: string; }; export interface SortProps { children: (props: { currentSort: QueryCommentsSort[]; sortOptions: SortPrimitive.SortOption[]; setSort: (sort: QueryCommentsSort[]) => void; }) => React.ReactNode; } export declare const Sort: { (props: SortProps): React.ReactNode; displayName: string; }; export interface CreateCommentProps { parentCommentId?: string | null; topCommentId?: string | null; children: (props: CreateCommentRenderProps) => React.ReactNode; } export interface CreateCommentRenderProps { createComment: (content: string) => Promise; clearError: () => void; isLoading: boolean; error: string | null; } export declare const CreateComment: { (props: CreateCommentProps): React.ReactNode; displayName: string; }; export interface CommentProps { commentId: string; children: (props: CommentRenderProps) => React.ReactNode; } export interface CommentRenderProps { comment: ReturnType; replies: ReturnType; deleteComment: () => ReturnType; hasNextPage: ReturnType; isLoading: boolean; loadNextPage: () => ReturnType; parentComment: CommentWithResolvedFields | undefined; } export declare const Comment: { (props: CommentProps): React.ReactNode; displayName: string; }; export declare const TopLevelCommentContext: React.Context; type TopLevelCommentRootProps = { comment: CommentWithResolvedFields; children: React.ReactNode; }; export declare const TopLevelCommentRoot: { (props: TopLevelCommentRootProps): import("react/jsx-runtime").JSX.Element; displayName: string; }; export {};