import type { uint16 } from "../../types.ts"; import type { Reader } from "../binary/reader.ts"; /** * Axis Variations table (avar) * Maps user-facing axis values to normalized coordinates */ export interface AvarTable { majorVersion: uint16; minorVersion: uint16; axisSegmentMaps: AxisSegmentMap[]; } /** * Segment map for an axis */ export interface AxisSegmentMap { axisValueMaps: AxisValueMap[]; } /** * Single value mapping */ export interface AxisValueMap { fromCoordinate: number; toCoordinate: number; } /** * Parse avar table */ export declare function parseAvar(reader: Reader, axisCount: number): AvarTable; /** * Apply avar mapping to a normalized coordinate */ export declare function applyAvarMapping(segmentMap: AxisSegmentMap, coord: number): number; /** * Apply avar mappings to all axis coordinates */ export declare function applyAvar(avar: AvarTable, coords: number[]): number[];