import { ReactNode } from 'react';
import { Controller, Request, TableAction } from '../types';
export type Props = {
    className?: string;
    /**
     * Optional context of prompt.
     */
    context?: string;
    /**
     * List of requests.
     */
    conversation: Request[];
    /**
     * Optional placeholder for empty chat.
     */
    empty?: () => ReactNode;
    /**
     * Optional maximal length allowed for prompt.
     */
    maxPromptLength?: number;
    /**
     * Optional context reset handler.
     */
    onClearContext?: () => void;
    /**
     * Allows to resend existing prompt.
     *
     * @param id ID of request.
     * @param prompt New prompt.
     */
    onResend: (id: number, prompt: string) => void;
    /**
     * Allows to send a new prompt.
     *
     * @param prompt New prompt.
     */
    onSend: (prompt: string) => void;
    /**
     * Optional message for pending requests.
     */
    pendingPlaceholder?: string;
    /**
     * Optional placeholder for prompt input.
     */
    placeholder?: string;
    /**
     * Optional prompt suggestions.
     */
    suggestions?: string[];
    /**
     * Optional table actions.
     */
    tableActions?: TableAction[];
};
export declare const UiAiChat: import("react").ForwardRefExoticComponent<Props & import("react").RefAttributes<Controller>>;
