import { DropdownProps } from "../common/DropdownListMenu";
import { type IconProps } from "../common/Icon";
import { LinkWithAction, SecretIdentityType, TagsListType, TagsType, UserIdentityType } from "../types";
import React from "react";
export declare const HeaderContent: React.ForwardRefExoticComponent<PostProps & React.RefAttributes<HTMLImageElement>>;
declare const Post: React.ForwardRefExoticComponent<PostProps & React.RefAttributes<PostHandler>>;
export default Post;
export interface PostHandler {
    highlight: (color: string) => void;
    avatarRef?: React.RefObject<HTMLImageElement>;
}
export interface PostData {
    id?: string;
    text: string;
    createdTime: string;
    createdTimeLink: LinkWithAction;
    createdMessageIcon?: IconProps["icon"];
    secretIdentity: SecretIdentityType;
    userIdentity?: UserIdentityType;
    tags?: TagsListType;
    newPost?: boolean;
    op?: boolean;
    totalContributions?: number;
    directContributions?: number;
    newContributions?: number;
    totalComments?: number;
    newComments?: number;
    board?: {
        slug: string;
        accentColor: string;
    };
}
export interface PostProps extends PostData {
    allowsComment?: boolean;
    allowsContribution?: boolean;
    onNewContribution: () => void;
    onNewComment: () => void;
    collapsed?: boolean;
    menuOptions?: DropdownProps["options"];
    menuOptionsHeader?: React.ReactNode;
    onEmbedLoaded?: () => void;
    getOptionsForTag?: (tag: TagsType) => DropdownProps["options"];
    forceHideIdentity?: boolean;
    backgroundColor?: string;
    notesLink: LinkWithAction;
    muted?: boolean;
}
