import { PageViewMode, Payload, ReadyState } from "@vivliostyle/core";
import React from "react";
export type MessageType = "debug" | "info" | "warn";
export type NavigationPayload = Omit<Payload, "internal" | "href" | "content">;
export type HyperlinkPayload = Pick<Payload, "internal" | "href">;
interface VolatileState {
    docTitle: string;
    epage: number;
    epageCount: number;
    metadata: unknown;
}
type ChildrenFunction = ({ container, reload, }: {
    container: JSX.Element;
    reload: () => void;
}) => React.ReactNode;
interface RendererProps {
    source: string;
    page?: number;
    zoom?: number;
    bookMode?: boolean;
    renderAllPages?: boolean;
    autoResize?: boolean;
    pageViewMode?: PageViewMode;
    defaultPaperSize?: {
        width: number;
        height: number;
    };
    pageBorderWidth?: number;
    fitToScreen?: boolean;
    fontSize?: number;
    background?: string;
    userStyleSheet?: string;
    authorStyleSheet?: string;
    style?: React.CSSProperties;
    onMessage?: (message: string, type: MessageType) => void;
    onError?: (error: string) => void;
    onReadyStateChange?: (state: ReadyState) => void;
    onLoad?: (state: VolatileState) => void;
    onNavigation?: (state: VolatileState) => void;
    onHyperlink?: (payload: HyperlinkPayload) => void;
    children?: React.ReactNode | ChildrenFunction;
}
export declare const Renderer: ({ source, page, zoom, bookMode, fontSize, background, renderAllPages, autoResize, pageViewMode, defaultPaperSize, pageBorderWidth, fitToScreen, userStyleSheet, authorStyleSheet, style, onMessage, onError, onReadyStateChange, onLoad, onNavigation, onHyperlink, children, }: RendererProps) => ReturnType<ChildrenFunction> | JSX.Element;
export {};
