import { ChangeDetectorRef, OnDestroy } from '@angular/core';
import { PageViewModeType, ScrollModeType } from '../../options/pdf-viewer';
import { PDFNotificationService } from '../../pdf-notification-service';
import { ResponsiveVisibility } from '../../responsive-visibility';
import * as i0 from "@angular/core";
export declare class PdfSinglePageModeComponent implements OnDestroy {
    private readonly cdr;
    show: import("@angular/core").InputSignal<ResponsiveVisibility>;
    disable: import("@angular/core").InputSignal<boolean>;
    scrollMode: import("@angular/core").InputSignal<ScrollModeType>;
    pageViewMode: import("@angular/core").ModelSignal<PageViewModeType>;
    onClick?: (() => void) | undefined;
    private PDFViewerApplication;
    private eventBusAbortController;
    constructor(notificationService: PDFNotificationService, cdr: ChangeDetectorRef);
    /**
     * Runs `callback` and re-renders this component.
     *
     * The callback is scheduled from a pdf.js event bus listener, which runs
     * outside Angular's zone, so neither zone.js nor a signal write schedules a
     * change detection run for us - the button kept showing the previous state
     * until an unrelated click happened to trigger one. The view can already be
     * destroyed by the time a queued callback runs, and `detectChanges()` throws
     * on a destroyed view, so that case is skipped.
     */
    private asyncWithCD;
    onPdfJsInit(): void;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<PdfSinglePageModeComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<PdfSinglePageModeComponent, "pdf-single-page-mode", never, { "show": { "alias": "show"; "required": false; "isSignal": true; }; "disable": { "alias": "disable"; "required": false; "isSignal": true; }; "scrollMode": { "alias": "scrollMode"; "required": true; "isSignal": true; }; "pageViewMode": { "alias": "pageViewMode"; "required": true; "isSignal": true; }; }, { "pageViewMode": "pageViewModeChange"; }, never, never, false, never>;
}
