import { MouseEvent, MutableRefObject, TouchEvent } from 'react'; import { Delaunay } from 'd3-delaunay'; import { Margin } from '@anarock/nivo-core'; import { TooltipAnchor, TooltipPosition } from '@anarock/nivo-tooltip'; import { VoronoiCommonProps, VoronoiDatum, VoronoiCustomLayerProps, NodeMouseHandler, NodePositionAccessor, NodeTouchHandler } from './types'; export declare const useVoronoiMesh: ({ points, getNodePosition, width, height, margin, debug, }: { points: readonly Node_1[]; getNodePosition?: NodePositionAccessor | undefined; margin?: Margin | undefined; width: number; height: number; debug?: boolean | undefined; }) => { points: readonly [number, number][]; delaunay: Delaunay; voronoi: import("d3-delaunay").Voronoi | undefined; }; export declare const useVoronoi: ({ data, width, height, xDomain, yDomain, }: { data: VoronoiDatum[]; width: number; height: number; xDomain: VoronoiCommonProps['xDomain']; yDomain: VoronoiCommonProps['yDomain']; }) => { points: { x: number; y: number; data: VoronoiDatum; }[]; delaunay: Delaunay; voronoi: import("d3-delaunay").Voronoi; }; /** * Memoize the context to pass to custom layers. */ export declare const useVoronoiLayerContext: ({ points, delaunay, voronoi, }: VoronoiCustomLayerProps) => VoronoiCustomLayerProps; export declare const useMeshEvents: ({ elementRef, nodes, getNodePosition, delaunay, setCurrent: setCurrentNode, margin, detectionRadius, isInteractive, onMouseEnter, onMouseMove, onMouseLeave, onClick, onTouchStart, onTouchMove, onTouchEnd, enableTouchCrosshair, tooltip, tooltipPosition, tooltipAnchor, }: { elementRef: MutableRefObject; nodes: readonly Node_1[]; getNodePosition?: NodePositionAccessor | undefined; delaunay: Delaunay; setCurrent?: ((node: Node_1 | null) => void) | undefined; margin?: Margin | undefined; detectionRadius?: number | undefined; isInteractive?: boolean | undefined; onMouseEnter?: NodeMouseHandler | undefined; onMouseMove?: NodeMouseHandler | undefined; onMouseLeave?: NodeMouseHandler | undefined; onClick?: NodeMouseHandler | undefined; onTouchStart?: NodeTouchHandler | undefined; onTouchMove?: NodeTouchHandler | undefined; onTouchEnd?: NodeTouchHandler | undefined; enableTouchCrosshair?: boolean | undefined; tooltip?: ((node: Node_1) => JSX.Element) | undefined; tooltipPosition?: TooltipPosition | undefined; tooltipAnchor?: TooltipAnchor | undefined; }) => { current: [number, Node_1] | null; handleMouseEnter: ((event: MouseEvent) => void) | undefined; handleMouseMove: ((event: MouseEvent) => void) | undefined; handleMouseLeave: ((event: MouseEvent) => void) | undefined; handleClick: ((event: MouseEvent) => void) | undefined; handleTouchStart: ((event: TouchEvent) => void) | undefined; handleTouchMove: ((event: TouchEvent) => void) | undefined; handleTouchEnd: ((event: TouchEvent) => void) | undefined; }; /** * Compute a voronoi mesh and corresponding events. */ export declare const useMesh: ({ elementRef, nodes, getNodePosition, width, height, margin, isInteractive, detectionRadius, setCurrent, onMouseEnter, onMouseMove, onMouseLeave, onClick, tooltip, tooltipPosition, tooltipAnchor, debug, }: { elementRef: MutableRefObject; nodes: readonly Node_1[]; getNodePosition?: NodePositionAccessor | undefined; width: number; height: number; margin?: Margin | undefined; isInteractive?: boolean | undefined; detectionRadius?: number | undefined; setCurrent?: ((node: Node_1 | null) => void) | undefined; onMouseEnter?: NodeMouseHandler | undefined; onMouseMove?: NodeMouseHandler | undefined; onMouseLeave?: NodeMouseHandler | undefined; onClick?: NodeMouseHandler | undefined; tooltip?: ((node: Node_1) => JSX.Element) | undefined; tooltipPosition?: TooltipPosition | undefined; tooltipAnchor?: TooltipAnchor | undefined; debug?: boolean | undefined; }) => { delaunay: Delaunay; voronoi: import("d3-delaunay").Voronoi | undefined; current: [number, Node_1] | null; handleMouseEnter: ((event: MouseEvent) => void) | undefined; handleMouseMove: ((event: MouseEvent) => void) | undefined; handleMouseLeave: ((event: MouseEvent) => void) | undefined; handleClick: ((event: MouseEvent) => void) | undefined; }; //# sourceMappingURL=hooks.d.ts.map