/*
 * This is one of the header files of Dynamsoft Capture Vision SDK - Barcode Reader module.
 *
 * Copyright © Dynamsoft Corporation. All rights reserved.
 */

#import <Foundation/Foundation.h>
#import <DynamsoftCaptureVisionBundle/DSRegionObjectElement.h>
#import <DynamsoftCaptureVisionBundle/DSBarcodeFormat.h>

@class DSBarcodeDetails;
@class DSExtendedBarcodeResult;

NS_ASSUME_NONNULL_BEGIN

NS_SWIFT_NAME(DecodedBarcodeElement)
@interface DSDecodedBarcodeElement : DSRegionObjectElement

- (DSBarcodeFormat)getFormat;

- (void)setFormat:(DSBarcodeFormat)format;

- (NSString *)getFormatString;

- (NSString *)getText;

- (void)setText:(NSString *)text;

- (NSData*)getBytes;

- (void)setBytes:(NSData *)bytes;

- (NSInteger)getConfidence;

- (void)setConfidence:(NSInteger)confidence;

- (NSInteger)getAngle;

- (NSInteger)getModuleSize;

- (BOOL)isDPM;

- (BOOL)isMirrored;

- (DSBarcodeDetails *)getDetails;

- (nullable NSArray<DSExtendedBarcodeResult *> *)getExtendedBarcodeResults;

- (NSInteger)setLocation:(DSQuadrilateral *)location;

+ (instancetype)new;
- (instancetype)init;

@end

NS_ASSUME_NONNULL_END
