import type { CSSProperties, ElementType, PropsWithChildren } from 'react'; export declare const useDragAndDropUploadContext: () => { subscribeToDrop: ((fn: (files: File[]) => void) => () => void) | null; }; /** * @private This hook should be used only once directly in the `MessageComposerProvider` to * register `uploadNewFiles` functions of the rendered message composers. Each `MessageComposer` * will then be notified when the drop event occurs from within the `WithDragAndDropUpload` * component. */ export declare const useRegisterDropHandlers: () => void; /** * Wrapper to replace now deprecated `Channel.dragAndDropWindow` option. * * @example * ```tsx * * * * * * * * * * ``` */ export declare const WithDragAndDropUpload: ({ children, className, component: Component, style, }: PropsWithChildren<{ acceptedFiles?: string[]; /** * @description An element to render as a wrapper onto which drag & drop functionality will be applied. * @default 'div' */ component?: ElementType; className?: string; style?: CSSProperties; }>) => import("react/jsx-runtime").JSX.Element; export type FileDragAndDropContentProps = { isDragRejected: boolean; }; export declare const FileDragAndDropContent: ({ isDragRejected, }: FileDragAndDropContentProps) => import("react/jsx-runtime").JSX.Element; //# sourceMappingURL=WithDragAndDropUpload.d.ts.map