import React, { ComponentPropsWithRef, ReactNode, Ref } from "react"; import { OverlayRect } from "./OverlayRect"; import { TemporalDate } from "../../hooks/use-graph/use-graph"; import { OverlayTriangle } from "./OverlayTriangle"; import { OverlayCross } from "./OverlayCross"; import { OverlayDiamond } from "./OverlayDiamond"; import { OverlayCircle } from "./OverlayCircle"; type HTMLElements = keyof React.JSX.IntrinsicElements; type Props = React.HTMLAttributes & { ref?: Ref; tag: HTMLElements; x?: { coordinate: number; } | { tick: number | TemporalDate | string; }; y?: { coordinate: number; } | { tick: number | TemporalDate | string; }; }; export declare const Overlay: ({ children, tag: Tag, ref, x, y, ...rest }: Props) => React.JSX.Element; type OverlayProxy = { [K in HTMLElements]: (props: Omit, "x" | "y"> & { x: Props["x"]; y: Props["y"]; }) => ReactNode; } & { rect: typeof OverlayRect; triangle: typeof OverlayTriangle; diamond: typeof OverlayDiamond; cross: typeof OverlayCross; circle: typeof OverlayCircle; }; export declare const overlay: OverlayProxy; export {};