
import { WidgetTransferInfo } from "./board-context.js";
import { ReactNode } from "react";
import * as react_jsx_runtime0 from "react/jsx-runtime";

//#region src/components/layout/Board/BoardProvider.d.ts
interface CubeBoardProviderProps {
  children?: ReactNode;
  /**
   * Fired when a widget is dropped from one board into another. Use it to move
   * the widget's `Board.Widget` declaration into the destination container when
   * the source container can unmount (e.g. an inactive `Tab`).
   */
  onWidgetTransfer?: (info: WidgetTransferInfo) => void;
}
/**
 * Shares a single drag context across multiple `Board`s so widgets can be
 * dragged from one board to another (including out of a nested board into its
 * parent). Also hosts the fixed drag overlay used to render the dragged widget
 * above everything, so ancestor `overflow: hidden` never clips it.
 *
 * A standalone `Board` provides its own registry automatically; wrap several
 * boards in a `BoardProvider` only when you need cross-board dragging.
 */
declare function BoardProvider(props: CubeBoardProviderProps): react_jsx_runtime0.JSX.Element;
//#endregion
export { BoardProvider, CubeBoardProviderProps };
//# sourceMappingURL=BoardProvider.d.ts.map