import type ElementRegistry from 'diagram-js/lib/core/ElementRegistry';
import type Overlays from 'diagram-js/lib/features/overlays/Overlays';
import type { ElementLike } from 'diagram-js/lib/model/Types';
import { ForwardedRef } from 'react';
import React from 'react';
export type BPMNViewerProps = {
    xml: string;
    className?: string;
    preselectedElementIds?: string[];
    onSelectionChanged?: (elements: Array<ElementLike>) => void;
    onImportDone?: () => void;
};
export type BPMNViewerFunctions = {
    getOverlays(): Overlays | undefined;
    getElementRegistry(): ElementRegistry | undefined;
    addMarker(elementId: string, className: string): void;
    removeMarker(elementId: string, className: string): void;
    hasMarker(elementId: string, className: string): boolean | undefined;
};
export declare const BPMNViewer: React.ForwardRefExoticComponent<BPMNViewerProps & React.RefAttributes<BPMNViewerFunctions>>;
export type BPMNViewerNextJSProps = BPMNViewerProps & {
    viewerRef?: ForwardedRef<BPMNViewerFunctions>;
};
export declare const BPMNViewerNextJS: React.ComponentType<BPMNViewerNextJSProps>;
