import { MainScreen } from '../ui/MainScreen/MainScreen';
import { Size } from '../../helpers/image';
import { Loader } from '../Loader/Loader';
import SelectDocumentType from '../ui/SelectDocumentType';
import { InitScreen } from '../ui/InitScreeen/InitScreen';
import { StepsScreen } from '../ui/StepsList/StepsScreen';
import { IDVCVersionPlank } from '../ui/IDVCVersionPlank/IDVCVersionPlank';
import { AnimationSettings, Notification, NotificationState } from '../ui/Notification/Notification';
import type { Context } from '../../types/context';
export declare class WeblibUI {
    mountElement: HTMLElement;
    mainScreen: MainScreen;
    loader: Loader;
    selectDocumentType: SelectDocumentType;
    initScreen: InitScreen;
    stepsScreen: StepsScreen;
    idvcVersionContainer: IDVCVersionPlank;
    constructor(mountElement: HTMLElement);
    remountUI(): void;
    createNotification(notificationContainer: HTMLElement, { status, message, }: NotificationState, animationSettings: AnimationSettings): Notification;
    updateResetButton({ steps, }: Context): void;
    updateControlButtons({ steps, config, licenseKeyError, isProcessingDisabledForCurrentDocumentType, }: Context): void;
    initGeneralText(context: Context): void;
    updateMessageBox({ type, licenseKeyError }: Context): void;
    resizeBorders(): void;
    setResizedCanvasSizes({ width, height }: Size): void;
    showMainScreen(): void;
    showStepsScreen(): void;
    private setFaceOffsets;
    private setCropFace;
    private initMainScreenComponents;
    private getDocumentsFromAllowedTypes;
    private initStepsList;
    updateInitScreenDocuments(allowedTypesIds: any): void;
    private initDocumentsList;
    private mainScreenEditButtonClick;
    private mainScreenControlButtonClick;
    private stepsListControlButtonClick;
    private initStepsListScreen;
    switchComponentMode(mode: 'uploader' | 'video'): void;
    private switchCapturingMode;
    private changeStep;
    private getCropSizes;
    private setResizedOffsets;
    private setResizedCrops;
    private getResizedBaseSizes;
    private setCropSizes;
    private setDefaultVideoCanvasSizes;
    private setOffsets;
}
declare let UI: WeblibUI;
declare const initUI: () => void;
export { initUI, UI };
