import type { TimelineClock } from '../../core/timeline'; import type { DtypeRef } from './dtype-helpers'; /** * One IMU sample. Shared schema for `ImuChartView` and `ImuGizmoView`. * * `data` is a flat 6-tuple in the order: * [accel_x, accel_y, accel_z, gyro_x, gyro_y, gyro_z] */ export interface ImuSample { ts: number; data: [number, number, number, number, number, number]; } export interface ImuChartViewProps { src: string; clock?: TimelineClock | null; /** Optional dtype id or spec. Informational — passed by `` during dispatch. */ dtype?: DtypeRef; className?: string; /** Rolling window width in seconds. Defaults to 5. */ window?: number; /** Max |accel| for auto-scaled y-axis. Defaults to 12 m/s². */ accelRange?: number; /** Max |gyro| for auto-scaled y-axis. Defaults to 1.5 rad/s. */ gyroRange?: number; } /** * ImuChartView — rolling time-series chart for 6-axis IMU data. * * Two stacked subplots (accel + gyro), each showing 3 colored channels * across a rolling time window ending at the current clock. Canvas 2D, * redraws on every `clock.on('tick')` for smooth scrubbing. * * ## Data format * JSONL lines of shape `{ ts: number, data: [ax, ay, az, gx, gy, gz] }` * (stride=6). Recommended source rate: 50–200 Hz. * * ## Hooks used * `useMergedTrack` to keep the current + neighboring chunks merged, then * imperative Canvas drawing driven by `clock.on('tick')` — no per-frame * React re-renders. */ export declare function ImuChartView({ src, clock, className, window, accelRange, gyroRange, }: ImuChartViewProps): import("react/jsx-runtime").JSX.Element; //# sourceMappingURL=ImuChartView.d.ts.map