import { HTMLAttributes } from "react"; export type TemporalDate = Temporal.Instant | Temporal.ZonedDateTime | Temporal.PlainDateTime | Temporal.PlainDate; export type CartesianDataset = Array<{ id?: string; name: string; description?: string; group?: string; stroke?: string; fill?: string; data: Array<{ x: number | TemporalDate | string; y: number | TemporalDate | string; z?: number | string | TemporalDate; }>; }>; export type SegmentDataset = Array<{ id?: string; name: string; description?: string; group?: string; stroke?: string; fill?: string; value: string | number | TemporalDate; }>; export type InternalSegmentDataset = Array<{ id: string; name: string; description?: string; group?: string; stroke: string; fill: string; value: string | number | TemporalDate; }>; export type InternalCartesianDataset = Array<{ id: string; name: string; description?: string; group?: string; stroke: string; fill: string; data: Array<{ x: number | TemporalDate | string; y: number | TemporalDate | string; z?: number | string | TemporalDate; }>; }>; export type InternalGraphContext = { id: string; attributes: HTMLAttributes; gap: { top: number; right: number; bottom: number; left: number; }; viewbox: { x: number; y: number; }; data: InternalSegmentDataset | InternalCartesianDataset; layout: { rows: string; columns: string; }; zoom: { x: [number, number]; y: [number, number]; }; domain: { x: Array<{ coordinate: number; tick: string | number | TemporalDate; }>; y: Array<{ coordinate: number; tick: string | number | TemporalDate; }>; }; colors: string[]; interactions: { hovered: string[]; pinned: string[]; }; datasets: Record>; }; export type GraphContext = { id: string; attributes: HTMLAttributes; gap: { top: number; right: number; bottom: number; left: number; }; viewbox: { x: number; y: number; }; data: CartesianDataset | SegmentDataset; layout: { rows: string; columns: string; }; zoom: { x: [number, number]; y: [number, number]; }; domain: { x: Array<{ coordinate: number; tick: string | number | TemporalDate; }>; y: Array<{ coordinate: number; tick: string | number | TemporalDate; }>; }; colors: string[]; interactions: { hovered: string[]; pinned: string[]; }; datasets: Record>; }; export declare const useGraphColumn: () => { column: number; left: number; right: number; }; export declare const GraphContextProvider: ({ value, children }: { value: InternalGraphContext; children: import("react").ReactNode; }) => import("react").JSX.Element; export declare const useGraph: () => InternalGraphContext; export declare const useIsZooming: () => boolean; export declare const useDataset: (dataset?: string) => InternalGraphContext; export declare const useDatasets: (datasets?: string[]) => { datasetName: string; data: InternalSegmentDataset | InternalCartesianDataset; domain: { x: Array<{ coordinate: number; tick: string | number | TemporalDate; }>; y: Array<{ coordinate: number; tick: string | number | TemporalDate; }>; }; colors: string[]; id: string; attributes: HTMLAttributes; gap: { top: number; right: number; bottom: number; left: number; }; viewbox: { x: number; y: number; }; layout: { rows: string; columns: string; }; zoom: { x: [number, number]; y: [number, number]; }; interactions: { hovered: string[]; pinned: string[]; }; datasets: Record>; }[]; export type Simplify = { [K in keyof T]: T[K]; };