import { PdfToken } from '../tokens/token.js'; import { PdfNull } from './pdf-null.js'; import { PdfObject } from './pdf-object.js'; import { PdfObjectReference } from './pdf-object-reference.js'; import { Ref } from '../ref.js'; export type PdfIndirectObjectOptions = { objectNumber?: number; generationNumber?: number; content?: T; offset?: number | Ref; encryptable?: boolean; compressed?: boolean; } | T | PdfIndirectObject | undefined; export declare class PdfIndirectObject extends PdfObject { static readonly MAX_ORDER_INDEX = 2147483647; objectNumber: number; generationNumber: number; content: T; offset: Ref; encryptable?: boolean; compressed?: boolean; orderIndex?: number; constructor(options?: PdfIndirectObjectOptions); get reference(): PdfObjectReference; isEncryptable(): boolean; static createPlaceholder(objectNumber?: number, generationNumber?: number, content?: T): PdfIndirectObject; inPdf(): boolean; matchesReference(ref?: PdfObjectReference): boolean; protected tokenize(): PdfToken[]; copyFrom(other: PdfIndirectObject): void; cloneImpl(): this; toJSON(): { type: string; objectNumber: number; generationNumber: number; content: object; }; order(): number; setModified(modified?: boolean): void; isModified(): boolean; setImmutable(immutable?: boolean): void; becomes(cls: new (options: PdfIndirectObject) => T): T; resolve(cls?: new (options: PdfIndirectObject) => T): T; get key(): string; }