import type { PlotDrawFrame } from "../types"; type ModifiersKeys = { ctrlKey: boolean; altKey: boolean; shiftKey: boolean; metaKey: boolean; }; export type InteractionsSyncConfig = { key: string; xViaScaleId?: string; yViaScaleId?: string; xToNormalized?: (value: number) => number | null; xFromNormalized?: (normalized: number) => number | null; yToNormalized?: (value: number) => number | null; yFromNormalized?: (normalized: number) => number | null; }; export type PointerSyncPosition = { x: { scaleId: string; value: number; normalized: number | null; } | null; y: { scaleId: string; value: number; normalized: number | null; } | null; }; export type SyncEvent_Move = { positions: PointerSyncPosition | null; keys: ModifiersKeys; originInteractionsId: string; }; export type SyncEvent_DblClick = { positions: PointerSyncPosition; keys: ModifiersKeys; }; export type SyncEvent_Click = { positions: PointerSyncPosition; keys: ModifiersKeys; }; export type SyncEvent_ContextMenu = { positions: PointerSyncPosition; keys: ModifiersKeys; }; export type SyncEvent_MouseDown = { positions: PointerSyncPosition; keys: ModifiersKeys; }; export type SyncEvent_MouseUp = { positions: PointerSyncPosition; keys: ModifiersKeys; }; export type SyncEvent_PressAndWheel = { positions: PointerSyncPosition; keys: ModifiersKeys; deltaX: number; deltaY: number; deltaAbs: number; }; export type SyncEvent_SpanSelect = { mode: "x" | "y" | "box" | "below_threshold"; xRange: ScaledSelectionRange; yRange: ScaledSelectionRange; completed: boolean; keys: ModifiersKeys; }; export type InteractionsEventPointerPosition = { cssX: number | null; cssY: number | null; scaled: Record; normalizedX: number | null; normalizedY: number | null; toNormalized: (value: number, axis: "x" | "y") => number | null; fromNormalized: (normalized: number, axis: "x" | "y") => number | null; }; export type InteractionsEvent = { frame: PlotDrawFrame; keys: ModifiersKeys; }; export type DblClickEvent = InteractionsEvent & { pointer: InteractionsEventPointerPosition; }; export type ClickEvent = InteractionsEvent & { pointer: InteractionsEventPointerPosition; }; export type ContextMenuEvent = InteractionsEvent & { pointer: InteractionsEventPointerPosition; }; export type MoveEvent = InteractionsEvent & { pointer: InteractionsEventPointerPosition | null; source: "own" | "sync"; }; export type MouseDownEvent = InteractionsEvent & { pointer: InteractionsEventPointerPosition; }; export type MouseUpEvent = InteractionsEvent & { pointer: InteractionsEventPointerPosition; }; export type ScaledSelectionRange = { scaleId: string; from: number; to: number; }; export type SpanSelectEvent = { frame: PlotDrawFrame; mode: "x" | "y" | "box" | "below_threshold"; x: { css?: { from: number; to: number; }; scaled: ScaledSelectionRange[]; }; y: { css?: { from: number; to: number; }; scaled: ScaledSelectionRange[]; }; completed: boolean; keys: ModifiersKeys; toNormalized: (value: number, axis: "x" | "y") => number | null; fromNormalized: (normalized: number, axis: "x" | "y") => number | null; }; export type PressAndWheelEvent = InteractionsEvent & { pointer: InteractionsEventPointerPosition; deltaX: number; deltaY: number; deltaAbs: number; }; export type DocumentMouseUpEvent = InteractionsEvent; export {}; //# sourceMappingURL=types.d.ts.map