import React from "react"; import { LayoutRectangle, StyleProp, ViewStyle } from "react-native"; import { GestureStateChangeEvent, GestureUpdateEvent, PanGestureHandlerEventPayload } from "react-native-gesture-handler"; import { type WithSpringConfig } from "react-native-reanimated"; import { type DndContextValue, type ItemOptions } from "./DndContext"; import type { UniqueIdentifier } from "./types"; export type DndProviderProps = { springConfig?: WithSpringConfig; activationDelay?: number; minDistance?: number; disabled?: boolean; onDragEnd?: (ev: { active: ItemOptions; over: ItemOptions | null; }) => void; onBegin?: (event: GestureStateChangeEvent, meta: { activeId: UniqueIdentifier; activeLayout: LayoutRectangle; }) => void; onUpdate?: (event: GestureUpdateEvent, meta: { activeId: UniqueIdentifier; activeLayout: LayoutRectangle; droppableActiveId: UniqueIdentifier | null; }) => void; onFinalize?: (event: GestureStateChangeEvent, meta: { activeId: UniqueIdentifier; activeLayout: LayoutRectangle; }) => void; onActivation?: (next: UniqueIdentifier | null, prev: UniqueIdentifier | null) => void; shouldDropWorklet?: (activeLayout: LayoutRectangle, itemLayout: LayoutRectangle) => boolean; style?: StyleProp; debug?: boolean; }; export type DndProviderHandle = Pick; export declare const DndProvider: React.ForwardRefExoticComponent>;