import { t as BarcodeFindViewSettings } from "../BarcodeFindViewSettings-BBORmBR5.js";
import { t as BarcodeFindItem } from "../BarcodeFindItem-DY4hEDJC.js";
import { t as BarcodeFindSession } from "../BarcodeFindSession-U-vVWF91.js";
import { r as PrivateBarcodeFindListener, t as BarcodeFind } from "../BarcodeFind-BxTFN3aw.js";
import { t as BarcodeFindViewUiListener } from "../BarcodeFindViewUiListener-IoaQ_suq.js";
import { t as BarcodeFindView } from "../BarcodeFindView-asGkr2P-.js";
import { CameraSettings, DataCaptureContext, FrameData } from "@scandit/web-datacapture-core";

//#region src/main/find/BarcodeFindPresenter.d.ts
declare enum ViewState {
  Started = "started",
  Paused = "paused",
  Stopped = "stopped"
}
declare class BarcodeFindPresenter implements PrivateBarcodeFindListener {
  viewState: ViewState;
  barcodeFindView: BarcodeFindView;
  context: DataCaptureContext;
  viewSettings: BarcodeFindViewSettings;
  cameraSettings: CameraSettings;
  barcodeFind: BarcodeFind;
  isTorchAvailable: boolean;
  barcodeFindViewUiListener: BarcodeFindViewUiListener | null;
  private torchState;
  private sessionState;
  private customerItemsListState;
  constructor(barcodeFindView: BarcodeFindView, context: DataCaptureContext, barcodeFind: BarcodeFind, viewSettings: BarcodeFindViewSettings, cameraSettings: CameraSettings);
  prepare(): Promise<void>;
  dispose(): Promise<void>;
  didPauseSearch(foundItems: BarcodeFindItem[]): Promise<void>;
  didStartSearch(): Promise<void>;
  didStopSearch(foundItems: BarcodeFindItem[]): Promise<void>;
  onSetItemList(items: BarcodeFindItem[]): Promise<void>;
  onDidUpdateSession(_: BarcodeFind, session: BarcodeFindSession, _frameData: FrameData): void;
  onShutterButtonClicked(): Promise<void>;
  onTorchButtonClicked(): Promise<void>;
  onDotClick(trackedBarcodeIdentifier: string): void;
  onFinishButtonClicked(): void;
  onFindListUpdatedFeedback(): void;
  onFeedback(): void;
  private pauseSearching;
  private startSearching;
  private stopSearching;
}
//#endregion
export { BarcodeFindPresenter, ViewState };