import { IEnvelope, VerdocsEndpoint } from '@verdocs/js-sdk';
import { EventEmitter } from '../../../stencil-public-runtime';
import { SDKError } from '../../../utils/errors';
/**
 * Render the documents attached to an envelope in read-only (view) mode. All documents are
 * displayed in order.
 *
 * ```ts
 * <verdocs-view
 *   envelopeId={ENVELOPE_ID}
 *   onSdkError={({ detail }) => { console.log('SDK error', detail) }
 *   />
 * ```
 */
export declare class VerdocsView {
    private envelopeListenerId;
    component: HTMLElement;
    /**
     * The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used.
     */
    endpoint: VerdocsEndpoint | null;
    /**
     * The envelope ID to render. Set ONE OF templateId or envelopeId. If both are set, envelopeId will be ignored.
     */
    envelopeId: string;
    /**
     * If set, (recommended), the host application should create a <DIV> element with a unique ID. When this
     * component renders, the header will be removed from its default location and placed in the target element.
     * This allows the parent application to more easily control its placement and scroll effects (e.g. "fixed").
     *
     * The movement of the header to the target container is not dynamic - it is performed only on the initial
     * render. Host applications should not conditionally render this container. If the header's visibility must
     * be externally controlled, use CSS display options to hide/show it instead.
     */
    headerTargetId: string | null;
    /**
     * Event fired if an error occurs. The event details will contain information about the error. Most errors will
     * terminate the process, and the calling application should correct the condition and re-render the component.
     */
    sdkError: EventEmitter<SDKError>;
    /**
     * Event fired when the envelope is updated in any way. May be used for tasks such as cache invalidation or reporting to other systems.
     */
    envelopeUpdated: EventEmitter<{
        endpoint: VerdocsEndpoint;
        envelope: IEnvelope;
        event: string;
    }>;
    /**
     * Event fired when the user clicks Send Another to proceed. It is up to the host application
     * to redirect the user to the appropriate next workflow step.
     */
    another: EventEmitter;
    /**
     * Event fired when the user clicks Send Another to proceed. It is up to the host application
     * to redirect the user to the appropriate next workflow step.
     */
    view: EventEmitter;
    /**
     * Event fired when the user clicks Done to proceed. It is up to the host application
     * to redirect the user to the appropriate next workflow step.
     */
    next: EventEmitter;
    canceling: boolean;
    showCancelDone: boolean;
    showLoadError: boolean;
    loading: boolean;
    envelope: IEnvelope | null;
    componentWillLoad(): Promise<void>;
    componentDidRender(): void;
    disconnectedCallback(): void;
    listenToEnvelope(): Promise<void>;
    unlistenToEnvelope(): void;
    handlePageRendered(_e: any): void;
    handleOptionSelected(e: any): Promise<void>;
    render(): any;
}
