/** * Copyright 2023-present DreamNum Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import type { IUser, UniverInstanceType } from '@univerjs/core'; import type { IThreadComment } from '@univerjs/thread-comment'; import { Dropdown } from '@univerjs/design'; import { ThreadCommentEditor } from './ThreadCommentEditor'; export declare enum ThreadCommentTreeLocation { CELL = "CELL", PANEL = "PANEL" } export interface IThreadCommentTreeProps { full?: boolean; id?: string; unitId: string; subUnitId: string; type: UniverInstanceType; refStr?: string; displayRef?: string; showEdit?: boolean; onClick?: () => void; showHighlight?: boolean; onClose?: () => void; getSubUnitName: (subUnitId: string) => string; location: ThreadCommentTreeLocation; autoFocus?: boolean; onMouseEnter?: () => void; onMouseLeave?: () => void; onAddComment?: (comment: IThreadComment) => boolean | void | Promise; onDeleteComment?: (comment: IThreadComment) => boolean; onAfterDeleteComment?: (comment: IThreadComment) => void | Promise; onResolve?: (resolved: boolean) => void; style?: React.CSSProperties; DropdownComponent?: typeof Dropdown; EditorComponent?: typeof ThreadCommentEditor; } export interface IThreadCommentItemProps { item: IThreadComment; unitId: string; subUnitId: string; onEditingChange?: (editing: boolean) => void; editing?: boolean; onClick?: () => void; resolved?: boolean; onReply: (user: IUser | undefined) => void; isRoot?: boolean; onClose?: () => void; onDeleteComment?: (comment: IThreadComment) => boolean; onAfterDeleteComment?: (comment: IThreadComment) => void | Promise; type: UniverInstanceType; threadCommentEditorId: string; DropdownComponent: typeof Dropdown; EditorComponent: typeof ThreadCommentEditor; } export declare const ThreadCommentTree: (props: IThreadCommentTreeProps) => import("react").JSX.Element;