import { CellAddress, BaseState } from '../types';
import { TypeUuid } from './Uuid';
/**
 * Internal State used for Comments Module
 */
export interface CommentState extends BaseState {
    /**
     * Collection of AdapTable Comments
     */
    CommentThreads?: CommentThread[];
}
/**
 * Comment that can be applied to a Cell in AdapTable
 */
export interface AdaptableComment {
    /**
     * Unique identifier for the Comment
     */
    Uuid?: TypeUuid;
    /**
     * When Comment was made
     */
    Timestamp: number;
    /**
     * Content of the Comment
     */
    Value: string;
    /**
     * Author of the Comment
     */
    Author?: {
        UserName: string;
    };
    /**
     * Id of this AdapTable instance
     */
    AdaptableId?: string;
}
/**
 * Thread of Comments for an Adaptable Cell
 */
export interface CommentThread extends CellAddress {
    /**
     * Unique identifier for Comment
     */
    Uuid?: TypeUuid;
    /**
     * Collection of Comments for this Cell
     */
    Comments: AdaptableComment[];
}
