import type { FormAttachment } from '../../../hooks/use-attachments.js';
export interface ChatComposerProps {
    attachments: FormAttachment[];
    isDragOver: boolean;
    uploadError: string | null;
    onDragEnter: (e: React.DragEvent) => void;
    onDragLeave: (e: React.DragEvent) => void;
    onDragOver: (e: React.DragEvent) => void;
    onDrop: (e: React.DragEvent) => void;
    onPaste: (e: React.ClipboardEvent) => void;
    onRemoveAttachment: (id: string) => void;
    onNotesChange: (id: string, notes: string) => void;
    onPickFiles: () => void;
    /** Agent/model picker rendered in the controls row. */
    agentPicker?: React.ReactNode;
    /** When true, the composer is visually disabled and input is blocked. */
    disabled?: boolean;
}
export declare function ChatComposer({ attachments, isDragOver, uploadError, onDragEnter, onDragLeave, onDragOver, onDrop, onPaste, onRemoveAttachment, onNotesChange, onPickFiles, agentPicker, disabled, }: ChatComposerProps): import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=ChatComposer.d.ts.map