/// import { TokenCountGlobalState } from './features/countTokens.types'; import { CharacterSetGlobalState } from './features/handleCharacterSet.types'; import { ControlAndDestinationGlobalState, ControlAndDestinationGroupState } from './features/handleControlsAndDestinations.types'; import { FontGlobalState, FontGroupState, FontTableEntry } from './features/handleFonts.types'; import { GlobalStateWithGroupState, GroupGlobalState, GroupState } from './features/handleGroupState.types'; import { OutputGlobalState } from './features/handleOutput.types'; import { UnicodeSkipGlobalState, UnicodeSkipGroupState } from './features/handleUnicodeSkip.types'; export declare type StringDecoder = (buf: Buffer, enc: string) => string; export declare type StringEncoder = (str: string, enc: string) => Buffer; export declare type LowLevelDecoder = (buf: Buffer, codepage: number, fontInfo: Readonly | undefined, decoder: StringDecoder) => string | undefined; export interface ProcessTokensOptions { decode: StringDecoder; encode: StringEncoder; outputMode: 'string' | 'buffer-utf8' | 'buffer-default-cpg'; replaceSymbolFontChars: boolean | { [font: string]: boolean; }; warn: (msg: string) => void; allowCp0?: boolean; } export interface ProcessTokensGroupState extends GroupState, UnicodeSkipGroupState, ControlAndDestinationGroupState, FontGroupState { } export interface ProcessTokensGlobalState extends TokenCountGlobalState, GroupGlobalState, UnicodeSkipGlobalState, OutputGlobalState, ControlAndDestinationGlobalState, CharacterSetGlobalState, FontGlobalState, GlobalStateWithGroupState { _state: ProcessTokensGroupState; _rootState: ProcessTokensGroupState; }