import type * as t from "./vendor/pdfium"; import type { PDFiumImageObjectRaw, PDFiumImageObjectRender, PDFiumImageObjectRenderParams, PDFiumObjectType } from "./objects.types"; export declare abstract class PDFiumObjectBase { abstract readonly type: PDFiumObjectType; protected readonly module: t.PDFium; protected readonly documentIdx: number; protected readonly pageIdx: number; protected readonly objectIdx: number; constructor(options: { module: t.PDFium; objectIdx: number; documentIdx: number; pageIdx: number; }); static create(options: { module: t.PDFium; objectIdx: number; documentIdx: number; pageIdx: number; }): PDFiumObject; } export declare class PDFiumTextObject extends PDFiumObjectBase { type: "text"; } export declare class PDFiumPathObject extends PDFiumObjectBase { type: "path"; } export declare class PDFiumImageObject extends PDFiumObjectBase { type: "image"; private static formatToBPP; /** * Return the raw uncompressed image data. */ getImageDataRaw(): Promise; /** * Render the image object to a buffer with the specified render function. */ render(options?: PDFiumImageObjectRenderParams): Promise; } export declare class PDFiumShadingObject extends PDFiumObjectBase { type: "shading"; } export declare class PDFiumFormObject extends PDFiumObjectBase { type: "form"; } export type PDFiumObject = PDFiumTextObject | PDFiumPathObject | PDFiumImageObject | PDFiumShadingObject | PDFiumFormObject;