import type { ContinuousSample } from './samples'; import type { TrackSamples } from './types'; /** * Convert a decoded segment into columnar track data. * * Returns `null` when the decoded input has no usable samples. `useMergedTrack` * treats `null` as an empty segment (skipped during merging). * * Users with non-JSONL chunk formats (Parquet, Arrow, msgpack, custom binary) * write their own `Normalizer` and pass it to `useMergedTrack` via * `options.normalize`. The hook's merging + gap-safety logic works with any * normalizer output shape. */ export type Normalizer = (decoded: T) => Map | null; /** * Default normalizer: each JSONL line is a `ContinuousSample` (`{ts, data}`). * * - Stride is inferred from the first sample's `data` field. * - Scalar `data` (number) produces stride=1 with `values[i] = data`. * - Array `data` (number[]) produces stride=data.length with samples interleaved. * - Returns a single track named `"data"`. * * Top-level `const` for reference stability — safe to pass as a default. */ export declare const samplesNormalizer: Normalizer; //# sourceMappingURL=normalize.d.ts.map