import type { IndexedMeshoptFetch, IndexedMeshoptTrackDecoderDiagnostics, IndexedMeshoptTrackDescriptor, MeshoptVertexDecoderLike } from '../MotionTracks/IndexedMeshoptTrack.cjs'; /** Sink for one exact object-major quantized affine frame. */ export type OAVMeshoptProcess = (quantized: Uint16Array, id: number) => void; export interface OAVMeshoptDecoderOptions { objectCount: number; meshoptDecoder: MeshoptVertexDecoderLike; resolveFile?: (file: string) => string; fetchImpl?: IndexedMeshoptFetch; process?: OAVMeshoptProcess; } export interface OAVMeshoptDiagnostics { backend: 'indexed-meshopt'; requestedFrames: number; publishedFrames: number; quantizedBytesWritten: number; suspended: boolean; decoder: Readonly | null; disposed: boolean; } /** * Adapt the twelve component-major UTSBM affine lanes into exact object-major Uint16 frames. * * The adapter retains no decoded frame beyond the transport's bounded block residency. Its * owner supplies the two presentation slots used for interpolation and owns the stable * diagnostic texture buffer. */ export declare class OAVMeshoptDecoder { #private; readonly descriptor: IndexedMeshoptTrackDescriptor; readonly objectCount: number; readonly loading: Promise; constructor(descriptor: IndexedMeshoptTrackDescriptor, { objectCount, meshoptDecoder, resolveFile, fetchImpl, process, }: OAVMeshoptDecoderOptions); request(frames: Iterable): Promise; setFrame(frame: number): Promise; suspend(): void; resume(): void; getDiagnostics(): Readonly; dispose(): void; }