import type { PdfiumModule } from './vendor/pdfium'; import type { PdfiumRuntimeMethods } from './vendor/runtime-methods'; import { functions } from './vendor/functions'; export type { PdfiumModule } from './vendor/pdfium'; export type { PdfiumRuntimeMethods } from './vendor/runtime-methods'; export declare const DEFAULT_PDFIUM_WASM_URL: string; /** * Name of JavaScript type */ export type Type = null | 'number' | 'string' | 'boolean' | null; /** * Type of wrapped function */ export type CWrappedFunc = (...args: NamesToType) => NameToType; /** * Convert name to type */ export type NameToType = R extends 'number' ? number : R extends 'string' ? string : R extends 'boolean' ? boolean : R extends null ? null : never; /** * Convert array of names to JavaScript types */ export type NamesToType = T extends [] ? [] : T extends readonly [infer U extends Type] ? [NameToType] : T extends readonly [infer U extends Type, ...infer Rest extends readonly Type[]] ? [NameToType, ...NamesToType] : []; export type Functions = typeof functions; export type Wrapped> = { [P in keyof T]: CWrappedFunc; }; export type Methods = Wrapped; export type WrappedPdfiumModule = { pdfium: PdfiumModule & PdfiumRuntimeMethods; } & Methods; export declare function createWrappedModule(pdfium: PdfiumModule & PdfiumRuntimeMethods): Promise;