@react-querybuilder/dnd
Version:
Drag-and-drop-enabled version of react-querybuilder
22 lines (21 loc) • 988 B
TypeScript
import * as React from "react";
import type { useDrag as useDragOriginal, useDrop as useDropOriginal } from "react-dnd";
import type { RuleGroupProps, UseRuleGroupDnD } from "react-querybuilder";
import type { QueryBuilderDndContextProps } from "./types";
/**
* Rule group component for drag-and-drop. Renders the provided rule group component
* ({@link react-querybuilder!index.RuleGroup RuleGroup} by default), but forwards the drag-and-drop
* context so that child rules and groups will render within the appropriate drag-and-drop wrappers.
*
* @group Components
*/
export declare const RuleGroupDnD: (props: RuleGroupProps) => React.JSX.Element;
type UseRuleGroupDndParams = RuleGroupProps & Pick<QueryBuilderDndContextProps, "canDrop" | "copyModeModifierKey" | "groupModeModifierKey"> & {
useDrag: typeof useDragOriginal;
useDrop: typeof useDropOriginal;
};
/**
* @group Hooks
*/
export declare const useRuleGroupDnD: (params: UseRuleGroupDndParams) => UseRuleGroupDnD;
export {};