export type ComposerSubmission = {
    text: string;
    files: File[];
};
export type ComposerFileError = {
    file: File;
    message: string;
};
export type ComposerShortcutApi = {
    value: string;
    setValue: (value: string) => void;
    clear: () => void;
};
export type ComposerShortcutHandler = (event: React.KeyboardEvent<HTMLTextAreaElement>, composer: ComposerShortcutApi) => void;
type Props = {
    onSubmit: (submission: ComposerSubmission) => void;
    isRunning?: boolean;
    onCancel?: () => void;
    isSendDisabled?: boolean;
    sendLabel?: string;
    cancelLabel?: string;
    placeholder?: string;
    autoFocus?: boolean;
    onChange?: (value: string) => void;
    value?: string;
    enableHistory?: boolean;
    historyKey?: string;
    canUploadFiles?: boolean;
    accept?: string;
    validateFile?: (file: File) => string | null;
    onFilesRejected?: (errors: ComposerFileError[]) => void;
    fileDropScope?: "document" | "composer";
    fileDropMessage?: React.ReactNode;
    onShortcutKeys?: Record<string, ComposerShortcutHandler>;
    leadingActions?: React.ReactNode;
    footer?: React.ReactNode;
    className?: string;
    "data-testid"?: string;
};
export declare const VuiComposer: ({ onSubmit, isRunning, onCancel, isSendDisabled, sendLabel, cancelLabel, placeholder, autoFocus, onChange, value, enableHistory, historyKey, canUploadFiles, accept, validateFile, onFilesRejected, fileDropScope, fileDropMessage, onShortcutKeys, leadingActions, footer, className, "data-testid": dataTestId }: Props) => import("react/jsx-runtime").JSX.Element;
export {};
