import { HTMLProps } from "react";
import { Attachment, type ChatSession } from "~/types";
import { type DragAndDropApi } from "./prompt-input/components/prompt-drag-zone";
import type { SupportedLanguage } from "~/i18n/resources";
interface DragContextValue extends Omit<DragAndDropApi, "handlers"> {
    handlers: DragAndDropApi["handlers"];
    openFilePicker: () => void;
    setDropEnabled: (enabled: boolean) => void;
}
export declare function usePromptKitDragAndDrop(): DragContextValue | null;
export interface PromptKitProps extends HTMLProps<HTMLDivElement> {
    acceptedFileTypes?: string[];
    enableDragAndDrop?: boolean;
    enableModalSelection?: boolean;
    initialChat?: ChatSession;
    language?: SupportedLanguage;
    maxFileSize?: number;
    maxFiles?: number;
    maxWidth?: number;
    onAttachmentsChange?: (attachments: Attachment[]) => void;
    onFileUploadError?: (error: string) => void;
}
export declare const PromptKit: (props: PromptKitProps) => import("react/jsx-runtime").JSX.Element;
export {};
