import { t as SparkScanMiniPreviewSize } from "./SparkScanMiniPreviewSize-De0jKtsO.js";
import { t as SparkScanPreviewBehavior } from "./SparkScanPreviewBehavior-DUe7DkaL.js";
import { t as SparkScanScanningBehavior } from "./SparkScanScanningBehavior-DQLdEXPW.js";
import { i as SparkScanScanningModeJSON, t as SparkScanScanningMode } from "./SparkScanScanningMode-uQ4skb_0.js";
import { n as SparkScanToastSettingsJSON, t as SparkScanToastSettings } from "./SparkScanToastSettings-B134rU9_.js";
import { Brush, BrushJSON, CameraPosition, TorchState } from "@scandit/web-datacapture-core";
import { Serializable } from "@scandit/web-datacapture-core/build/js/private/Serializable";

//#region src/main/spark/ui/SparkScanViewSettings.d.ts
interface SparkScanViewSettingsJSON {
  defaultScanningMode: SparkScanScanningModeJSON;
  defaultTorchState: TorchState;
  defaultMiniPreviewSize: SparkScanMiniPreviewSize;
  defaultCameraPosition: CameraPosition;
  hapticEnabled: boolean;
  holdToScanEnabled: boolean;
  inactiveStateTimeout: number;
  previewBehavior: SparkScanPreviewBehavior;
  scanningBehavior: SparkScanScanningBehavior;
  soundEnabled: boolean;
  toastSettings: SparkScanToastSettingsJSON;
  triggerButtonCollapseTimeout: number;
  visualFeedbackEnabled: boolean;
  zoomFactorIn: number;
  zoomFactorOut: number;
  selectionModeCandidateBrush?: BrushJSON | null;
  /**
   * @deprecated Use {@link SparkScanViewSettingsJSON.selectionModeCandidateBrush} instead.
   * Will be removed in 9.0.
   */
  smartSelectionCandidateBrush?: BrushJSON | null;
}
declare class SparkScanViewSettings implements Serializable<SparkScanViewSettingsJSON> {
  /**
   * @deprecated Use SparkScanSettings.selectionMode plus the new
   * {@link SparkScanViewSettings.scanningBehavior} / {@link SparkScanViewSettings.previewBehavior}
   * properties instead. Will be removed in 9.0.
   */
  defaultScanningMode: SparkScanScanningMode;
  get scanningBehavior(): SparkScanScanningBehavior;
  set scanningBehavior(value: SparkScanScanningBehavior);
  get previewBehavior(): SparkScanPreviewBehavior;
  set previewBehavior(value: SparkScanPreviewBehavior);
  defaultTorchState: TorchState;
  defaultMiniPreviewSize: SparkScanMiniPreviewSize;
  defaultCameraPosition: CameraPosition;
  hapticEnabled: boolean;
  holdToScanEnabled: boolean;
  inactiveStateTimeout: number;
  soundEnabled: boolean;
  toastSettings: SparkScanToastSettings;
  triggerButtonCollapseTimeout: number;
  visualFeedbackEnabled: boolean;
  zoomFactorIn: number;
  zoomFactorOut: number;
  selectionModeCandidateBrush: Brush | null;
  /**
   * @deprecated Use {@link SparkScanViewSettings.selectionModeCandidateBrush} instead.
   * Will be removed in 9.0.
   */
  get smartSelectionCandidateBrush(): Brush | null;
  /**
   * @deprecated Use {@link SparkScanViewSettings.selectionModeCandidateBrush} instead.
   * Will be removed in 9.0.
   */
  set smartSelectionCandidateBrush(value: Brush | null);
  constructor();
  toJSONObject(): SparkScanViewSettingsJSON;
}
//#endregion
export { SparkScanViewSettingsJSON as n, SparkScanViewSettings as t };