import { BarcodeFind } from './BarcodeFind.js';
import './BarcodeFindItem.js';
import './BarcodeFindSettings.js';
import './BarcodeFindTransformer.js';
import { Anchor, Optional, Camera, DataCaptureView, DataCaptureContext, CameraSettings } from '@scandit/web-datacapture-core';
import { ScanditHTMLElement } from '@scandit/web-datacapture-core/build/js/private/utils/ScanditHTMLElement.js';
import { BarcodeFindViewSettings } from './BarcodeFindViewSettings.js';
import { BarcodeFindViewUiListener } from './BarcodeFindViewUiListener.js';
import '@scandit/web-datacapture-core/build/js/private/Serializable';
import './BarcodeFindFeedback.js';
import './BarcodeFindSession.js';
import '../TrackedBarcode.js';
import '../Barcode.js';
import '../EncodingRange.js';
import '../StructuredAppendData.js';
import '../SymbologySettings.js';

declare class BarcodeFindView extends ScanditHTMLElement {
    static tag: "scandit-barcode-find-view";
    shouldShowUserGuidance: boolean;
    shouldShowHints: boolean;
    shouldShowCarousel: boolean;
    shouldShowPauseButton: boolean;
    shouldShowFinishButton: boolean;
    shouldShowProgressBar: boolean;
    shouldShowTorchControl: boolean;
    torchControlPosition: Anchor;
    textForItemListUpdatedWhenPausedHint: string | null;
    textForItemListUpdatedHint: string | null;
    textForTapShutterToResumeSearchHint: string | null;
    textForTapShutterToPauseScreenHint: string | null;
    textForMoveCloserToBarcodesHint: string | null;
    textForPointAtBarcodesToSearchHint: string | null;
    textForAllItemsFoundSuccessfullyHint: string | null;
    textForCollapseCardsButton: string | null;
    barcodeFindViewUiListener: BarcodeFindViewUiListener | null;
    private dataCaptureView;
    private layout;
    private presenter;
    private shutterButton;
    private finishButton;
    private progressBar;
    private cardList;
    private onShutterButtonClickedHandler;
    private onFinishButtonClickedHandler;
    private onTorchButtonClickedHandler;
    private torchIconButton;
    private onDotClickHandler;
    private barcodeFindBasicOverlay;
    private barcodeFindViewSettings;
    get camera(): Optional<Camera>;
    static createWithSettings(elementOrDataCaptureView: HTMLElement | DataCaptureView, context: DataCaptureContext, barcodeFind: BarcodeFind, viewSettings: BarcodeFindViewSettings, cameraSettings?: CameraSettings): Promise<BarcodeFindView>;
    static create(elementOrDataCaptureView: HTMLElement | DataCaptureView, context: DataCaptureContext, barcodeFind: BarcodeFind): Promise<BarcodeFindView>;
    private static register;
    startSearching(): Promise<void>;
    stopSearching(): Promise<void>;
    pauseSearching(): Promise<void>;
    setListener(listener: BarcodeFindViewUiListener | null): void;
    setShouldShowUserGuidanceView(shouldShowUserGuidance: boolean): Promise<void>;
    setShouldShowHints(shouldShowHints: boolean): Promise<void>;
    setShouldShowCarousel(shouldShowCarousel: boolean): void;
    setShouldShowPauseButton(shouldShowPauseButton: boolean): void;
    setShouldShowFinishButton(shouldShowFinishButton: boolean): void;
    setShouldShowProgressBar(shouldShowProgressBar: boolean): void;
    setShouldShowTorchControl(shouldShowTorchControl: boolean): void;
    setTorchControlPosition(torchControlPosition: Anchor): void;
    setTextForCollapseCardsButton(textForCollapseCardsButton: string): void;
    setTextForAllItemsFoundSuccessfullyHint(textForAllItemsFoundSuccessfullyHint: string): Promise<void>;
    setTextForPointAtBarcodesToSearchHint(textForPointAtBarcodesToSearchHint: string): Promise<void>;
    setTextForMoveCloserToBarcodesHint(textForMoveCloserToBarcodesHint: string): Promise<void>;
    setTextForTapShutterToPauseScreenHint(textForTapShutterToPauseScreenHint: string): Promise<void>;
    setTextForTapShutterToResumeSearchHint(textForTapShutterToResumeSearchHint: string): Promise<void>;
    setTextForItemListUpdatedWhenPausedHint(textForItemListUpdatedWhenPausedHint: string): Promise<void>;
    setTextForItemListUpdatedHint(textForItemListUpdatedHint: string): Promise<void>;
    private connectedCallback;
    private disconnectedCallback;
    private onShutterButtonClicked;
    private onTorchButtonClicked;
    private updateProgressBar;
    private setShutterButtonPulse;
    private switchToPaused;
    private moveCardOnTheFront;
    private switchToStarted;
    private toggleTorchIcon;
    private onFinishButtonClicked;
    private clearDots;
    private toggleDotPulse;
    private pointTransformation;
    private onDotClick;
    private renderDots;
}
declare global {
    interface HTMLElementTagNameMap {
        [BarcodeFindView.tag]: BarcodeFindView;
    }
}

export { BarcodeFindView };
