import { DataReader } from '../data-reader.ts'; import { type DataWriter } from '../data-writer.ts'; import { TableBuilder } from '../table-builder.ts'; /** * The `post` table contains information needed to use a TrueType font on a PostScript printer. * It provides PostScript glyph names, primarily for PostScript printers and older workflows. */ export declare abstract class PostTable { /** The version of the `post` table. */ abstract readonly version: 'v1.0' | 'v2.0' | 'v2.5' | 'v3.0'; /** Italic angle in counter-clockwise degrees from the vertical. */ readonly italicAngle: number; /** Suggested y-coordinate of the top of the underline. */ readonly underlinePosition: number; /** Suggested values for the underline thickness. */ readonly underlineThickness: number; /** 0 if the font is proportionally spaced, non-zero if the font is monospaced. */ readonly isFixedPitch: number; /** Minimum memory usage for OpenType fonts. */ readonly minMemType42: number; /** Maximum memory usage for OpenType fonts. */ readonly maxMemType42: number; /** Minimum memory usage for Type 1 fonts. */ readonly minMemType1: number; /** Maximum memory usage for Type 1 fonts. */ readonly maxMemType1: number; /** * Reads a `post` table from the given DataView. */ static read(data: DataView): PostTable; protected constructor(reader: DataReader); /** * Get the glyph name for the given glyph index or `undefined` if the glyph name is not available. */ abstract getGlyphName(index: number): string | undefined; } /** * TableBuilder for `post` table version 3.0 (no glyph names). */ export declare class PostTableBuilder extends TableBuilder { private table; constructor(table: PostTable); writeTable(writer: DataWriter): void; }