export interface QuadCurve { p1: [number, number]; p2: [number, number]; p3: [number, number]; } export type SlugVec2 = [number, number]; export interface SlugShape { curves: QuadCurve[]; bounds: [number, number, number, number]; } export interface SlugPackedTexture { data: Float32Array | Uint32Array; width: number; height: number; } export interface SlugGPUData { curveTexture: SlugPackedTexture & { data: Float32Array; }; bandTexture: SlugPackedTexture & { data: Uint32Array; }; vertices: Float32Array; indices: Uint16Array; shapeCount: number; } export interface SlugPackOptions { bandCount?: number; evenOdd?: boolean; }