import { ProgressDialogSink } from "../../Dialogs/Types";
import { SaveSettings, StampCategory, ViewerFeatureName } from "../../Models/ViewerTypes";
import { ViewerOptions } from "../../ViewerOptions";
import { ISupportApiBase, SupportApiType } from "../ISupportApiBase";
import { OpenDocumentInfo, DocumentModification } from "../types";
import { IWasmModule } from "./IWasmModule";
export declare abstract class WasmSupportApiBase implements ISupportApiBase {
    clientId: string;
    docInfo: OpenDocumentInfo;
    documentId: string;
    isDocumentShared: boolean;
    private _isConnected;
    isOpened: boolean;
    viewerOptions: ViewerOptions;
    wasmModule: IWasmModule;
    viewer: any;
    private _connectPromiseCapability?;
    constructor(args?: any);
    get isConnected(): boolean;
    set isConnected(isConnected: boolean);
    get supportApiType(): SupportApiType | undefined;
    applyOptions(options: any): void;
    setViewer(viewer: any): void;
    canEditAnnotation(annotation?: any | null | undefined): boolean;
    checkDocumentLoader(): Promise<boolean>;
    closeDocumentLoader(): Promise<boolean>;
    close(): Promise<string>;
    connect(lazy?: boolean | undefined): Promise<boolean>;
    dispose(): void;
    getDisabledFeatures(): ViewerFeatureName[] | null;
    getDownloadUrl(filename: string, format: "PDF" | "PNG" | undefined, correlationId: string): string;
    getDownloadUnmodifiedUrl(filename: string): string;
    uploadFiles(fileIds: string[], sink?: ProgressDialogSink): Promise<boolean>;
    getLastError(): Promise<string>;
    getStampCategories(): Promise<StampCategory[]>;
    getStampImageUrl(categoryId: string, imageName: string, enableCache: boolean): string;
    modify(documentModification: DocumentModification, correlationId: string): Promise<string>;
    openBinary(data: Uint8Array): Promise<void>;
    serverVersion(): Promise<string>;
    setOptions(saveSettings: SaveSettings | undefined, correlationId: string): Promise<string>;
    verifySignature(fieldName: string): Promise<boolean>;
    protected abstract loadWasmModule(): Promise<IWasmModule>;
    initWasmModule(): Promise<IWasmModule>;
    private _connectInternal;
    private _getResourcesUrl;
    private _findBaseUrl;
}
