import { type JSXSlot } from "@cn-ui/reactive";
import "../animation/fade.css";
import { type VirtualListProps } from "../virtualList";
export interface ChatBoxMessage {
    id: string;
    avatar?: string;
    message: JSXSlot;
    position?: "right" | "left";
    create_at?: string;
}
export interface ChatBoxProps<T extends ChatBoxMessage> extends Pick<VirtualListProps<T>, "each" | "estimateSize"> {
    onSendMessage?: (text: string) => Promise<void>;
}
export declare const ChatBox: <T extends ChatBoxMessage>(props: import("@cn-ui/reactive").OriginComponentOutputType<ChatBoxProps<T>, HTMLDivElement, T[]>) => import("solid-js").JSX.Element;
