/** How a named CMap breaks a string into codes, and what those codes mean. */ export interface PredefinedCMap { /** The `TextDecoder` label the code bytes are in. */ readonly charset: string; /** Whether a byte begins a TWO-byte code; anything else stands alone. */ readonly leadsPair: (byte: number) => boolean; /** §9.7.5.2 — a `…-V` CMap sets its text down the page. */ readonly vertical: boolean; } /** * What a predefined CMap name comes to. * * @param name The `/Encoding` name, as the font states it. * @returns Its encoding and code structure, or `undefined` for `Identity` and * for any name whose encoding this cannot decode. */ export declare function predefinedCMap(name: string): PredefinedCMap | undefined; /** Split a shown string the way this CMap's codespace says (§9.7.6.2). */ export declare function splitPredefined(cmap: PredefinedCMap, bytes: Uint8Array): Array; /** The character one code stands for: its own bytes, read in the CMap's encoding. */ export declare function decodePredefined(cmap: PredefinedCMap, code: number): string;