import { TypedArray } from 'pdfjs-dist/types/src/display/api';
export interface IViewerOptions {
    theme?: 'dark' | 'light';
    lang?: string;
    citationBib?: string | null;
    shareFunction?: ((pages: string | null, expaireDate: string) => Promise<string>) | null;
    homeFunction?: (() => void) | null;
    editPackage?: {
        saveLayerFunc: (svg: string, groupId: string, page: number) => Promise<{
            id: string;
            svg: string;
        } | null>;
        saveGroupFunc: (name: string) => Promise<void>;
        updateLayerFunc: (id: string, svg: string, groupId: string, page: number) => Promise<void>;
        updateGroupFunc: (id: string, name: string) => Promise<void>;
        deleteLayerFunc: (id: string) => Promise<void>;
        deleteGroupFunc: (id: string) => Promise<void>;
        getLayerFunc: (page: number, groupId: string) => Promise<{
            id: string;
            svg: string;
        } | null> | null;
        getGroupsFunc: () => Promise<{
            id: string;
            name: string;
        }[]>;
    } | null;
}
interface IConfigParams {
    download?: boolean;
    share?: boolean;
    print?: boolean;
    edit?: boolean;
}
interface IViewerParams {
    data: TypedArray | null;
    options: IViewerOptions | null;
    config: IConfigParams | null;
}
/**
 * The Viewer component. It takes a typedArray arr of the PDF file and renders it.
 *
 * @param viewerParams IViewerParams, data -> typedArray | null, options -> IViewerOptions | null
 * @returns - The Viewer component
 */
export declare const Viewer: (viewerParams: IViewerParams) => import("react/jsx-runtime").JSX.Element;
interface IRenderViewerProps {
    rootId: string;
    data: TypedArray;
    options?: IViewerOptions | null;
    config?: IConfigParams | null;
}
export declare const renderViewer: ({ rootId, data, options, config, }: IRenderViewerProps) => void;
export {};
