import { Barcode } from './sdcBarcodeInternalSdkData.js';
import { Quadrilateral } from './sdcCoreCommonGeometry.js';
import { LabelFieldType, LabelFieldState } from './sdcLabelData.js';
import './sdcBarcodeData.js';
import './sdcCoreCommonBuffer.js';

declare enum LabelFieldValueType {
    DATE = 0,
    PRICE = 1,
    WEIGHT = 2,
    TEXT = 3,
    NUMERIC = 4
}
interface LabelDateResult {
    day?: number;
    month?: number;
    year?: number;
    dayStr: string;
    monthStr: string;
    yearStr: string;
}
interface LabelField {
    getName(): string;
    isRequired(): boolean;
    getType(): LabelFieldType;
    getPredictedLocation(): Quadrilateral;
    getState(): LabelFieldState;
    getValueType(): LabelFieldValueType;
    getBarcode(): Barcode;
    getText(): string | undefined;
    getDate(): LabelDateResult | undefined;
    toJson(): string;
}
interface CapturedLabel {
    getName(): string;
    getDeltaTimeToPrediction(): number;
    getFields(): Array<LabelField>;
    getTrackingId(): number;
    getPredictedBounds(): Quadrilateral;
    isComplete(): boolean;
    toJson(): string;
}
interface ReceiptScanningLineItem {
    name: string;
    unitPrice?: number;
    discount?: number;
    quantity: number;
    totalPrice?: number;
}
interface ReceiptScanningResult {
    storeName?: string;
    storeCity?: string;
    storeAddress?: string;
    date?: string;
    time?: string;
    paymentPreTaxTotal?: number;
    paymentTax?: number;
    paymentTotal?: number;
    loyaltyNumber?: number;
    lineItems: Array<ReceiptScanningLineItem>;
}
interface SdcLabelInternalModuleData_statics {
}

export { type CapturedLabel, type LabelDateResult, type LabelField, LabelFieldValueType, type ReceiptScanningLineItem, type ReceiptScanningResult, type SdcLabelInternalModuleData_statics };
