import type { GlyphId } from "../../types.ts"; import type { Reader } from "../binary/reader.ts"; import { type DeltaSetIndexMap, type ItemVariationStore } from "./hvar.ts"; /** * Vertical Metrics Variations table (VVAR) * Provides variations for vertical advance heights and side bearings */ export interface VvarTable { majorVersion: number; minorVersion: number; itemVariationStore: ItemVariationStore; advanceHeightMapping: DeltaSetIndexMap | null; tsbMapping: DeltaSetIndexMap | null; bsbMapping: DeltaSetIndexMap | null; vOrgMapping: DeltaSetIndexMap | null; } /** * Parse VVAR table */ export declare function parseVvar(reader: Reader): VvarTable; /** * Get advance height delta for a glyph at given variation coordinates */ export declare function getAdvanceHeightDelta(vvar: VvarTable, glyphId: GlyphId, coords: number[]): number; /** * Get top side bearing delta for a glyph at given variation coordinates */ export declare function getTsbDelta(vvar: VvarTable, glyphId: GlyphId, coords: number[]): number; /** * Get bottom side bearing delta for a glyph at given variation coordinates */ export declare function getBsbDelta(vvar: VvarTable, glyphId: GlyphId, coords: number[]): number; /** * Get vertical origin delta for a glyph at given variation coordinates */ export declare function getVorgDelta(vvar: VvarTable, glyphId: GlyphId, coords: number[]): number;