import { t as SparkScanScanningBehavior } from "./SparkScanScanningBehavior-DQLdEXPW.js";
import { a as sparkScanViewToolbarTag } from "./tags-DWZEPE_e.js";
import { c as scanningBehaviorButtonVisibleAttribute, d as targetModeEnabledAttribute, i as labelCaptureButtonVisibleAttribute, l as selectionModeAutoAttribute, n as cameraSwitchButtonVisibleAttribute, s as scanningBehaviorAttribute, t as barcodeFindButtonVisibleAttribute, u as targetModeButtonVisibleAttribute } from "./attributes-DLzV3au6.js";
import { c as toolbarVisibilityChangeEvent, s as toolbarButtonTapEvent } from "./events-Ca6wkIHV.js";
import { ScanditHTMLElement } from "@scandit/web-datacapture-core/build/js/private/utils/index.js";

//#region src/main/spark/ui/SparkScanViewToolbar.d.ts
type SparkScanViewToolbarButtonType = "scanningBehaviorButton" | "targetModeButton" | "barcodeFindButton" | "labelCaptureButton" | "cameraSwitchButton";
declare class SparkScanViewToolbar extends ScanditHTMLElement {
  private _styleElement?;
  private get styleElement();
  private static readonly observedAttributes;
  private targetModeButton?;
  private targetModeButtonIcon?;
  private scanningBehaviorButton?;
  private scanningBehaviorButtonIcon?;
  private cameraSwitchButton?;
  private cameraSwitchButtonIcon?;
  private barcodeFindButton?;
  private labelCaptureButton?;
  private targetModeButtonTapListener;
  private scanningBehaviorButtonTapListener;
  private barcodeFindButtonTapListener;
  private labelCaptureButtonTapListener;
  private cameraSwitchButtonTapListener;
  private computedStyle;
  get [targetModeButtonVisibleAttribute](): boolean;
  set [targetModeButtonVisibleAttribute](targetModeButtonVisible: boolean);
  get [selectionModeAutoAttribute](): boolean;
  set [selectionModeAutoAttribute](selectionModeAuto: boolean);
  get [scanningBehaviorButtonVisibleAttribute](): boolean;
  set [scanningBehaviorButtonVisibleAttribute](scanningBehaviorButtonVisible: boolean);
  get [barcodeFindButtonVisibleAttribute](): boolean;
  set [barcodeFindButtonVisibleAttribute](barcodeFindButtonVisible: boolean);
  get [labelCaptureButtonVisibleAttribute](): boolean;
  set [labelCaptureButtonVisibleAttribute](labelCaptureButtonVisible: boolean);
  get [cameraSwitchButtonVisibleAttribute](): boolean;
  set [cameraSwitchButtonVisibleAttribute](cameraSwitchButtonVisible: boolean);
  get [targetModeEnabledAttribute](): boolean;
  set [targetModeEnabledAttribute](targetModeEnabled: boolean);
  get [scanningBehaviorAttribute](): SparkScanScanningBehavior;
  set [scanningBehaviorAttribute](scanningBehavior: SparkScanScanningBehavior);
  private get effectiveTargetModeButtonVisible();
  get visibleButtonCount(): number;
  get visibleModeButtonCount(): number;
  get allVisibleButtonsCount(): number;
  static create(): SparkScanViewToolbar;
  enableCameraSwitchButton(enabled: boolean): void;
  private render;
  private connectedCallback;
  private disconnectedCallback;
  private attributeChangedCallback;
  private onTargetModeButtonTap;
  private onScanningBehaviorButtonTap;
  private onBarcodeFindButtonTap;
  private onLabelCaptureButtonTap;
  private onCameraSwitchButtonTap;
}
declare global {
  interface HTMLElementTagNameMap {
    [sparkScanViewToolbarTag]: SparkScanViewToolbar;
  }
  interface HTMLElementEventMap {
    [toolbarButtonTapEvent]: CustomEvent<{
      tapped: SparkScanViewToolbarButtonType;
      enabled: boolean;
    }>;
    [toolbarVisibilityChangeEvent]: CustomEvent<undefined>;
  }
}
//#endregion
export { SparkScanViewToolbar as t };