import { VerdocsEndpoint } from '@verdocs/js-sdk';
import { EventEmitter } from '../../../stencil-public-runtime';
import { IDocumentPageInfo, IPageLayer } from '../../../utils/Types';
/**
 * Represents one document page. This is primarily a layout container used to coordinate positions of
 * page-related layers such as the page itself, signature fields, etc. It is not intended to be used
 * on its own as an individual component.
 */
export declare class VerdocsEnvelopeDocumentPage {
    container: HTMLElement;
    private resizeObserver;
    /**
     * The endpoint to load from.
     */
    endpoint: VerdocsEndpoint;
    /**
     * The ID of the envelope the document is for.
     */
    envelopeId: string;
    /**
     * The ID of the document to display.
     */
    documentId: string;
    /**
     * The page number being rendered. (Reminder: page numbers are 1-based.)
     */
    pageNumber: number;
    /**
     * The "virtual" width of the page canvas. Defaults to 612 which at 72dpi is 8.5" wide. This is used to compute
     * the aspect ratio of the final rendered element when scaling up/down.
     */
    virtualWidth: number;
    /**
     * The "virtual" height of the page canvas.  Defaults to 792 which at 72dpi is 11" tall. This is used to compute
     * the aspect ratio of the final rendered element when scaling up/down.
     */
    virtualHeight: number;
    /**
     * The layers that will be rendered. The DOM structure will be a DIV container with one child DIV for each layer.
     * The parent DIV will have a unique ID, and each child DIV will have that ID with the layer name appended, e.g.
     * if `pages` was ['page', 'fields'] the structure will be:
     *
     * ```
     *     <div id="verdocs-envelope-document-page-ker2fr1p9">
     *       <div id="verdocs-envelope-document-page-ker2fr1p9-page"></div>
     *       <div id="verdocs-envelope-document-page-ker2fr1p9-fields"></div>
     *     </div>
     * ```
     */
    layers: IPageLayer[];
    type: 'original' | 'filled' | 'certificate';
    /**
     * Fired when a page has been rendered. This is also fired when the page is resized.
     */
    pageRendered: EventEmitter<IDocumentPageInfo>;
    containerId: string;
    renderedWidth: number;
    renderedHeight: number;
    naturalWidth: number;
    naturalHeight: number;
    aspectRatio: number;
    skipFirstNotification: boolean;
    pageDisplayUri: string;
    componentWillLoad(): Promise<void>;
    componentDidLoad(): void;
    disconnectedCallback(): void;
    notifyRenderedSize(): void;
    render(): any;
}
