import type { ReactNode } from 'react';
import type { IReactOptimizedDndContextState, IReactOptimizedDndComponentState } from './types';
declare const ReactOptimizedDndContext: import("react").Context<IReactOptimizedDndContextState | null>;
export declare function useReactOptimizedDndContext(): IReactOptimizedDndContextState;
declare function ReactOptimizedDndProvider({ children, onDragStart, onDragEnd, onDragOver, }: {
    children: ReactNode;
    onDragStart?: (state: IReactOptimizedDndComponentState) => void;
    onDragEnd?: (state: IReactOptimizedDndComponentState) => void;
    onDragOver?: (state: IReactOptimizedDndComponentState) => void;
}): import("react/jsx-runtime").JSX.Element;
export { ReactOptimizedDndContext, ReactOptimizedDndProvider };
