import { InventoryRecordActionEnum } from "../../enums"; export declare type InventoryRecord = BaseInventoryRecord | StockInInventoryRecord | StockTakeInventoryRecord | ReturnInventoryRecord | ConsumedInventoryRecord | WastageInventoryRecord; export interface BaseInventoryRecord { id: string; createdAt: number; action: InventoryRecordActionEnum; source: 'byUser' | 'byOrder'; note?: string; } export interface StockInInventoryRecord extends BaseInventoryRecord { action: InventoryRecordActionEnum.StockIn; source: 'byUser'; amountVariation?: number; stockInAmount?: number; } export interface ReturnInventoryRecord extends BaseInventoryRecord { action: InventoryRecordActionEnum.Return; source: 'byUser'; amountVariation?: number; returnAmount?: number; } export interface ConsumedInventoryRecord extends BaseInventoryRecord { action: InventoryRecordActionEnum.Consumed; source: 'byUser' | 'byOrder'; orderId?: string; quantityVariation: number; consumedQuantity: number; } export interface WastageInventoryRecord extends BaseInventoryRecord { action: InventoryRecordActionEnum.Wastage; source: 'byUser'; quantityVariation: number; wastageQuantity: number; } export interface StockTakeInventoryRecord extends BaseInventoryRecord { action: InventoryRecordActionEnum.StockTake; source: 'byUser'; quantityVariation: number; stockTakeVariation: number; }