/// <reference types="react" />
/// <reference types="react-native/types/modules/Codegen" />
import type { ColorValue, HostComponent, ViewProps } from 'react-native';
import type { DirectEventHandler, Double, Float, Int32, WithDefault } from 'react-native/Libraries/Types/CodegenTypes';
type Event = Readonly<{
    result: string;
}>;
interface NativeProps extends ViewProps {
    onBarcodeScannerResult?: DirectEventHandler<Event>;
    onSelectBarcodeResult: DirectEventHandler<Event>;
    flashEnabled?: WithDefault<boolean, false>;
    finderEnabled?: WithDefault<boolean, false>;
    finderStrokeWidth?: WithDefault<Int32, 2>;
    finderStrokeColor?: ColorValue;
    finderOverlayColor?: ColorValue;
    finderMinPadding?: WithDefault<Int32, 0>;
    finderInset?: {
        left?: WithDefault<Int32, 10>;
        top?: WithDefault<Int32, 10>;
        bottom?: WithDefault<Int32, 10>;
        right?: WithDefault<Int32, 10>;
    };
    finderRequiredAspectRatios?: {
        width?: WithDefault<Double, 4>;
        height?: WithDefault<Double, 3>;
    };
    cameraZoomFactor?: WithDefault<Float, 0.0>;
    cameraZoomRange?: {
        minZoom?: WithDefault<Float, 1.0>;
        maxZoom?: WithDefault<Float, 12.0>;
    };
    cameraModule?: WithDefault<string, 'BACK'>;
    scanningEnabled?: WithDefault<boolean, true>;
    detectorConfig?: {
        barcodeFormats?: ReadonlyArray<string>;
        acceptedDocumentFormats?: ReadonlyArray<string>;
        engineMode?: WithDefault<string, 'NEXT_GEN'>;
        barcodesExtensionFilter?: WithDefault<string, 'NO_FILTER'>;
        lowPowerMode?: WithDefault<boolean, false>;
        minimumTextLength?: WithDefault<Int32, 0>;
        maximumTextLength?: WithDefault<Int32, 0>;
        minimum1DBarcodesQuietZone?: WithDefault<Int32, 10>;
        stripCheckDigits?: WithDefault<boolean, false>;
        gs1HandlingMode?: WithDefault<string, 'PARSE'>;
        msiPlesseyChecksumAlgorithm?: WithDefault<string, 'MOD_10'>;
    };
    minFocusDistanceLock?: WithDefault<boolean, false>;
    overlayEnabled?: WithDefault<boolean, false>;
    overlayPolygonColor?: ColorValue;
    overlayStrokeColor?: ColorValue;
    overlayTextColor?: ColorValue;
    overlayTextContainerColor?: ColorValue;
    overlayTextFormat?: WithDefault<string, 'CODE_AND_TYPE'>;
    overlayLoadingTextValue?: WithDefault<string, undefined>;
    overlayBarcodeItemOverlayViewBinder?: WithDefault<boolean, false>;
}
declare const _default: import("react-native/Libraries/Utilities/codegenNativeComponent").NativeComponentType<NativeProps>;
export default _default;
interface NativeCommands {
    freezeCamera: (viewRef: React.ElementRef<HostComponent<NativeProps>>) => void;
    unfreezeCamera: (viewRef: React.ElementRef<HostComponent<NativeProps>>) => void;
    bindBarcodeItemOverlayView: (viewRef: React.ElementRef<HostComponent<NativeProps>>, barcodeItemUuid: string, bindingConfig: string) => void;
}
export declare const Commands: NativeCommands;
//# sourceMappingURL=ScanbotBarcodeScannerViewNativeComponent.d.ts.map