/** * ASPRS LAS point classification helpers (#1783). * * The LAS specification (ASPRS LAS 1.1 through 1.4 R15) defines * classes 0..22, reserves 23..63 for future ASPRS use, and leaves * 64..255 to the producer. Decoders emit the raw per-point byte in * `DecodedPointChunk.classifications`; these helpers aggregate that * into a per-class histogram and map codes to their standard names so * UIs never have to show a bare integer. */ import type { DecodedPointChunk } from './types.js'; /** Total number of representable LAS classification codes (one byte). */ export declare const LAS_CLASS_COUNT = 256; /** * Human-readable name for a LAS classification code. * 0..22 use the ASPRS standard names, 23..63 are "Reserved" and * 64..255 "User defined" per the spec. Out-of-range codes (the byte * field can't actually produce them) return "Unknown". */ export declare function lasClassificationName(classId: number): string; /** Allocate an all-zero per-class histogram (one slot per LAS code). */ export declare function createClassificationCounts(): Uint32Array; /** * Fold one decoded chunk into a per-class histogram. * Returns true when the chunk carried a classifications buffer (so * callers can distinguish "no classes anywhere" from "all zeros"). */ export declare function accumulateClassificationCounts(counts: Uint32Array, chunk: Pick): boolean; export interface ClassificationCountEntry { classId: number; count: number; } /** Non-zero histogram slots as `{ classId, count }`, ascending by code. */ export declare function classificationCountEntries(counts: Uint32Array): ClassificationCountEntry[]; //# sourceMappingURL=classification.d.ts.map