import { IArchbaseDataSourceBase } from '@archbase/data';
type DocumentType = 'pdf' | 'image' | 'text' | 'office' | 'unknown';
export interface ArchbaseDocViewerProps<T> {
    /** DataSource to read the URL or base64 value from */
    dataSource?: IArchbaseDataSourceBase<T>;
    /** Field name within the DataSource */
    dataField?: string;
    /** Standalone URL string */
    uri?: string;
    /** Standalone base64 string (include the data URI prefix or provide mimeType) */
    base64?: string;
    /** Explicit MIME type – auto-detected from the URL extension when omitted */
    mimeType?: string;
    /** Height of the viewer @default '600px' */
    height?: string | number;
    /** Width of the viewer @default '100%' */
    width?: string | number;
    /** Show the toolbar with download / open-in-new-tab buttons @default true */
    showToolbar?: boolean;
    /** Label for Input.Wrapper */
    label?: string;
    /** Description for Input.Wrapper */
    description?: string;
    /** Error message for Input.Wrapper */
    error?: string;
    /** Callback fired when the document finishes loading */
    onDocumentLoad?: () => void;
    /** Callback fired when the document fails to load */
    onDocumentError?: (error: Error) => void;
    /** Custom style applied to the outer container */
    style?: React.CSSProperties;
    /** Custom class name */
    className?: string;
}
declare function ArchbaseDocViewer<T>({ dataSource, dataField, uri, base64, mimeType: mimeTypeProp, height, width, showToolbar, label, description, error: errorProp, onDocumentLoad, onDocumentError, style, className, }: ArchbaseDocViewerProps<T>): import("react/jsx-runtime").JSX.Element;
declare namespace ArchbaseDocViewer {
    var displayName: string;
}
export { ArchbaseDocViewer };
export type { DocumentType };
