import type { FullDocumentScanner } from "./FullDocumentScanner.js";
import type { SingleSideScanner } from "./SingleSideScanner.js";
export declare enum PhysicalDocumentScannerType {
    FullDocument = "fullDocument",
    SingleSide = "singleSide"
}
export type PhysicalDocumentScannerJSON = {
    type: PhysicalDocumentScannerType;
    isFull: boolean;
} & Record<string, unknown>;
export declare abstract class PhysicalDocumentScanner {
    abstract readonly type: PhysicalDocumentScannerType;
    isSingleSideScanner(): this is SingleSideScanner;
    isFullDocumentScanner(): this is FullDocumentScanner;
    abstract toJSONObject(): PhysicalDocumentScannerJSON;
}
