import { _PdfAnnotationType, _PdfContentStream, _PdfDictionary, PdfAnnotation, PdfDocument, PdfPage, Rectangle } from '@syncfusion/ej2-pdf';
import { PdfRedactionRegion } from './pdf-redaction-region';
export declare class _PdfRedactionProcessor {
    _updateContentStream(page: PdfPage, stream: _PdfContentStream, options: PdfRedactionRegion[], document: PdfDocument): void;
    _processFormFields(page: PdfPage, options: PdfRedactionRegion[], document: PdfDocument): void;
    _isFound(values: Rectangle, redactionBounds: Rectangle): boolean;
    _intersectsWith(rect1: {
        x: number;
        y: number;
        width: number;
        height: number;
    }, rect2: {
        x: number;
        y: number;
        width: number;
        height: number;
    }): boolean;
    _isEmptyRectangle(width: number, height: number): boolean;
    _toRectangle(x: number, y: number, width: number, height: number): {
        x: number;
        y: number;
        width: number;
        height: number;
    };
    _isKidInSamePage(kid: _PdfDictionary, page: PdfPage): boolean;
    _checkAnnotationType(annotation: PdfAnnotation): _PdfAnnotationType;
    _processAnnotation(page: PdfPage, options: PdfRedactionRegion[]): void;
    _getBoundsFromPoints(points: number[], loadedPage: PdfPage): {
        bounds: {
            x: number;
            y: number;
            width: number;
            height: number;
        };
        isValidAnnotation: boolean;
    };
    _isLineIntersectRectangle(redactBounds: {
        x: number;
        y: number;
        width: number;
        height: number;
    }, p1X: number, p1Y: number, p2X: number, p2Y: number): boolean;
    _isBoundsEqual(bounds1: {
        x: number;
        y: number;
        width: number;
        height: number;
    }, bounds2: {
        x: number;
        y: number;
        width: number;
        height: number;
    }): boolean;
    _getAnnotationType(dictionary: _PdfDictionary): _PdfAnnotationType;
    _findAnnotation(array: any[]): boolean;
}
