import { VertesiaClient } from "@vertesia/client"; import { ContentObject } from "@vertesia/common"; import React from "react"; export declare enum ImageType { original = "original", instrumented = "instrumented" } interface MagicPdfContextValue { count: number; layoutProvider: PageLayoutProvider; markdownProvider: PageMarkdownProvider; imageProvider: PageImageProvider; xml: string; xmlPages: string[]; pdfUrl: string; pdfUrlLoading: boolean; } /** Provider for lazy-loading page images on demand */ export declare class PageImageProvider { private client; private objectId; totalPages: number; private cache; private pending; constructor(client: VertesiaClient, objectId: string, totalPages: number); private getCacheKey; /** Get the URL for a specific page and image type, fetching lazily if needed */ getPageImageUrl(page: number, type: ImageType): Promise; private fetchImageUrl; private getImagePath; } declare class PageLayoutProvider { private client; private objectId; totalPages: number; private cache; private pending; constructor(client: VertesiaClient, objectId: string, totalPages: number); getPageLayout(page: number): Promise; private fetchPageLayout; } declare class PageMarkdownProvider { totalPages: number; private pages; constructor(totalPages: number); initFromContent(markdownContent: string): void; loadUrls(_vertesia: VertesiaClient, _objectId: string): Promise; getPageMarkdown(page: number): Promise; } interface MagicPdfProviderProps { object: ContentObject; children: React.ReactNode; } export declare function MagicPdfProvider({ children, object }: MagicPdfProviderProps): import("react/jsx-runtime").JSX.Element; export declare function getResourceUrl(vertesia: VertesiaClient, objectId: string, name: string): Promise; export declare function useMagicPdfContext(): MagicPdfContextValue; export {}; //# sourceMappingURL=MagicPdfProvider.d.ts.map