import type { ClipboardEvent } from 'react';
import type { FileAttachment } from '../../hooks/useFileUpload';
interface ChatInputProps {
    onSend: (message: string) => void;
    onCommand?: (commandId: string) => void;
    disabled?: boolean;
    onConfigClick?: () => void;
    onPlanModeToggle?: (isPlanMode: boolean) => void;
    isPlanMode?: boolean;
    reasoningEnabled?: boolean;
    sessionId?: string;
    images?: FileAttachment[];
    documents?: FileAttachment[];
    onFileRemove?: (id: string) => void;
    isDragging?: boolean;
    onPaste?: (e: ClipboardEvent) => void;
    visionEnabled?: boolean;
    attachmentEnabled?: boolean;
    modelName?: string;
    providerName?: string;
    authType?: 'api' | 'oauth' | 'wallet';
    isFreeModel?: boolean;
    researchContexts?: Array<{
        id: string;
        label: string;
    }>;
    onResearchContextRemove?: (id: string) => void;
    onModelInfoClick?: () => void;
    agent?: string;
    agents?: string[];
    onAgentChange?: (agent: string) => void;
}
export declare const ChatInput: import("react").NamedExoticComponent<ChatInputProps & import("react").RefAttributes<{
    focus: () => void;
    setValue: (value: string) => void;
}>>;
export {};
//# sourceMappingURL=ChatInput.d.ts.map