react-native-scanbot-sdk
Version:
Scanbot Document and Barcode Scanner SDK React Native Plugin for Android and iOS
147 lines (142 loc) • 5.09 kB
text/typescript
/// Auto-generated with ScanbotSDKCodegenV3. Modifications will be overwritten.
/// Generated from native/schemas/document/PageData.yaml
import {
DocumentDetectionStatus,
DocumentDetectionStatusValues,
} from '../document_scanner/DocumentScannerTypes';
import { PageImageSource, PageImageSourceValues } from '../document_scanner/PageImageSource';
import { DocumentQuality, DocumentQualityValues } from '../dqa/DocumentQualityAnalyzerTypes';
import { ParametricFilter } from '../image_filters/ParametricFilters';
import { ToJsonConfiguration } from '../utils/json/JsonSerializationTypes';
import { DeepPartial, PartiallyConstructible, Point } from '../utils/utils';
/**
The result of the health insurance card recognition.
*/
export class PageData extends PartiallyConstructible {
/**
The unique identifier of the page.
*/
public readonly uuid: string;
/**
The list of filters applied to the page.
*/
public readonly filters: ParametricFilter[] | null = null;
/**
The polygon of the page.
*/
public readonly polygon: Point[] = [];
/**
The detection status of the page.
*/
public readonly documentDetectionStatus: DocumentDetectionStatus | null = null;
/**
The quality score of the page.
*/
public readonly documentQuality: DocumentQuality | null = null;
/**
The source of the page image.
*/
public readonly source: PageImageSource | null = null;
/**
The URI of the original image.
*/
public readonly originalImageURI: string;
/**
The URI of the document image.
*/
public readonly documentImageURI: string | null = null;
/**
The URI of the unfiltered document image.
*/
public readonly unfilteredDocumentImageURI: string | null = null;
/**
The URI of the document image preview.
*/
public readonly documentImagePreviewURI: string | null = null;
/** @param source {@displayType `DeepPartial<PageData>`} */
public constructor(source: DeepPartial<PageData> = {}) {
super();
if (source.uuid !== undefined) {
this.uuid = source.uuid;
} else {
throw new Error('uuid must be present in constructor argument');
}
if (source.filters !== undefined) {
this.filters =
source.filters != null
? source.filters.map((it: any) => {
return ParametricFilter.From(it);
})
: null;
}
if (source.polygon !== undefined) {
this.polygon = source.polygon.map((it: any) => {
return { x: it.x, y: it.y };
});
}
if (source.documentDetectionStatus !== undefined) {
this.documentDetectionStatus =
source.documentDetectionStatus != null
? DocumentDetectionStatusValues.includes(source.documentDetectionStatus)
? source.documentDetectionStatus
: null
: null;
}
if (source.documentQuality !== undefined) {
this.documentQuality =
source.documentQuality != null
? DocumentQualityValues.includes(source.documentQuality)
? source.documentQuality
: null
: null;
}
if (source.source !== undefined) {
this.source =
source.source != null
? PageImageSourceValues.includes(source.source)
? source.source
: null
: null;
}
if (source.originalImageURI !== undefined) {
this.originalImageURI = source.originalImageURI;
} else {
throw new Error('originalImageURI must be present in constructor argument');
}
if (source.documentImageURI !== undefined) {
this.documentImageURI = source.documentImageURI != null ? source.documentImageURI : null;
}
if (source.unfilteredDocumentImageURI !== undefined) {
this.unfilteredDocumentImageURI =
source.unfilteredDocumentImageURI != null ? source.unfilteredDocumentImageURI : null;
}
if (source.documentImagePreviewURI !== undefined) {
this.documentImagePreviewURI =
source.documentImagePreviewURI != null ? source.documentImagePreviewURI : null;
}
}
public serialize(config: ToJsonConfiguration = new ToJsonConfiguration()): DeepPartial<PageData> {
return {
uuid: this.uuid,
filters:
this.filters != null
? this.filters.map((it: any) => {
return it.serialize(config);
})
: null,
polygon: this.polygon.map((it: any) => {
return it;
}),
documentDetectionStatus:
this.documentDetectionStatus != null ? this.documentDetectionStatus : null,
documentQuality: this.documentQuality != null ? this.documentQuality : null,
source: this.source != null ? this.source : null,
originalImageURI: this.originalImageURI,
documentImageURI: this.documentImageURI != null ? this.documentImageURI : null,
unfilteredDocumentImageURI:
this.unfilteredDocumentImageURI != null ? this.unfilteredDocumentImageURI : null,
documentImagePreviewURI:
this.documentImagePreviewURI != null ? this.documentImagePreviewURI : null,
};
}
}