import type { WorkSheet } from 'xlsx';
export declare function newUnitId(): string;
export interface UnitRow {
    name: string;
    symbol: string;
    precision: number;
    measurement_name: string;
    measurement_symbol: string;
    measurement_conversion: number;
}
export type ObjectWithIndex<T> = {
    index: number;
    data: T;
};
export type ColIdHeader<T> = {
    id: keyof T;
    name: string;
};
export interface ImportUnitCreateResult {
    type: 'create';
    unit: FdoInventoryUnit;
    excelRowNumber: number;
    errors: string[];
}
export interface ImportUnitUpdateResult {
    type: 'update';
    original: FdoInventoryUnit;
    unit: FdoInventoryUnit;
    excelRowNumber: number;
    errors: string[];
}
export type ImportUnitResult = {
    invalidExcel: boolean;
    invalidExcelMessage?: string;
    importCreateResult: ImportUnitCreateResult[];
    importUpdateResult: ImportUnitUpdateResult[];
};
export declare function worksheetToUnitRow(sheet: WorkSheet): ObjectWithIndex<UnitRow>[];
export declare function getUnitsToCreateUpdate(sheet: WorkSheet): ImportUnitResult;
export declare function exportUnits(): string;
