shopoflex-types 1.0.66 → 1.0.68

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +1,4 @@
1
+ import { PaginatedResponse } from "./common";
1
2
  export interface SupplierContactInfo {
2
3
  email?: string;
3
4
  phone?: string;
@@ -33,7 +34,7 @@ export interface PurchaseOrderType {
33
34
  branchId: string;
34
35
  items: PurchaseOrderItem[];
35
36
  totalAmount: number;
36
- status: 'draft' | 'sent' | 'confirmed' | 'partial' | 'completed' | 'cancelled';
37
+ status: 'draft' | 'sent' | 'partial' | 'received' | 'cancelled';
37
38
  expectedDelivery?: Date;
38
39
  notes: string;
39
40
  createdAt: Date;
@@ -45,7 +46,7 @@ export interface InventoryAdjustmentType {
45
46
  branchId: string;
46
47
  productId: any;
47
48
  variantId: string;
48
- adjustmentType: 'wastage' | 'damage' | 'theft' | 'expired' | 'restock' | 'correction';
49
+ adjustmentType: 'increase' | 'decrease' | 'wastage' | 'damage' | 'theft' | 'expired' | 'recount';
49
50
  quantityChanged: number;
50
51
  unitCost: number;
51
52
  totalValue: number;
@@ -67,26 +68,7 @@ export interface ExpenseType {
67
68
  receiptUrl?: string;
68
69
  isPaid: boolean;
69
70
  paidDate?: Date;
70
- createdAt: Date;
71
- updatedAt: Date;
72
- }
73
- export interface CashTransactionReference {
74
- type: 'order' | 'purchase_order' | 'expense' | 'manual';
75
- id?: any;
76
- }
77
- export interface CashTransactionType {
78
- _id?: any;
79
- vendorId: any;
80
- branchId?: string;
81
- type: 'in' | 'out';
82
- category: 'sales_payment' | 'refund' | 'supplier_payment' | 'expense_payment' | 'loan' | 'investment' | 'withdrawal' | 'bank_fee' | 'other';
83
- amount: number;
84
- paymentMethod: 'cash' | 'card' | 'bank_transfer' | 'check' | 'digital_wallet';
85
- reference?: CashTransactionReference;
86
- description?: string;
87
- transactionDate: Date;
88
- processingFee: number;
89
- netAmount: number;
71
+ approvalStatus: 'pending' | 'approved' | 'rejected';
90
72
  createdAt: Date;
91
73
  updatedAt: Date;
92
74
  }
@@ -162,27 +144,7 @@ export interface CreateExpenseRequest {
162
144
  expenseDate: string;
163
145
  isRecurring?: boolean;
164
146
  recurringPeriod?: ExpenseType['recurringPeriod'];
165
- }
166
- export interface MarkExpenseAsPaidRequest {
167
- paymentMethod: CashTransactionType['paymentMethod'];
168
- transactionDate?: string;
169
- }
170
- export interface CreateCashTransactionRequest {
171
- branchId?: string;
172
- type: CashTransactionType['type'];
173
- category: CashTransactionType['category'];
174
- amount: number;
175
- paymentMethod: CashTransactionType['paymentMethod'];
176
- reference?: CashTransactionReference;
177
- description?: string;
178
- transactionDate?: string;
179
- processingFee?: number;
180
- }
181
- export interface PaginatedResponse<T> {
182
- data: T[];
183
- totalPages: number;
184
- currentPage: number;
185
- total: number;
147
+ approvalStatus?: 'pending' | 'approved' | 'rejected';
186
148
  }
187
149
  export interface SuppliersResponse extends PaginatedResponse<SupplierType> {
188
150
  }
@@ -192,28 +154,11 @@ export interface InventoryAdjustmentsResponse extends PaginatedResponse<Inventor
192
154
  }
193
155
  export interface ExpensesResponse extends PaginatedResponse<ExpenseType> {
194
156
  }
195
- export interface CashTransactionsResponse extends PaginatedResponse<CashTransactionType> {
196
- }
197
157
  export interface ExpensesByCategory {
198
158
  category: string;
199
159
  totalAmount: number;
200
160
  count: number;
201
- avgAmount: number;
202
- }
203
- export interface CashFlowSummary {
204
- cashIn: number;
205
- cashOut: number;
206
- netCashFlow: number;
207
- }
208
- export interface CashFlowReport {
209
- cashFlow: {
210
- type: string;
211
- totalAmount: number;
212
- totalNetAmount: number;
213
- totalProcessingFees: number;
214
- count: number;
215
- }[];
216
- summary: CashFlowSummary;
161
+ avgAmount?: number;
217
162
  }
218
163
  export interface WastageReportItem {
219
164
  type: string;
@@ -230,11 +175,6 @@ export interface FinancialReportExpenses {
230
175
  totalExpenses: number;
231
176
  breakdown: ExpensesByCategory[];
232
177
  }
233
- export interface FinancialReportCashFlow {
234
- cashIn: number;
235
- cashOut: number;
236
- netCashFlow: number;
237
- }
238
178
  export interface FinancialReportProfitability {
239
179
  grossProfit: number;
240
180
  profitMargin: number;
@@ -246,7 +186,7 @@ export interface FinancialReport {
246
186
  };
247
187
  revenue: FinancialReportRevenue;
248
188
  expenses: FinancialReportExpenses;
249
- cashFlow: FinancialReportCashFlow;
189
+ costOfGoodsSold: number;
250
190
  profitability: FinancialReportProfitability;
251
191
  }
252
192
  export interface ProfitLossRevenue {
@@ -272,27 +212,6 @@ export interface ProfitLossReport {
272
212
  operatingExpenses: ProfitLossOperatingExpenses;
273
213
  netProfit: number;
274
214
  }
275
- export interface DailyCashFlow {
276
- date: string;
277
- cashIn: number;
278
- cashOut: number;
279
- netFlow: number;
280
- transactionCount: number;
281
- }
282
- export interface CashFlowByCategory {
283
- category: string;
284
- type: 'in' | 'out';
285
- totalAmount: number;
286
- count: number;
287
- }
288
- export interface CashFlowAnalyticsReport {
289
- period: {
290
- start: Date;
291
- end: Date;
292
- };
293
- dailyCashFlow: DailyCashFlow[];
294
- cashFlowByCategory: CashFlowByCategory[];
295
- }
296
215
  export interface ExpenseTrend {
297
216
  _id: {
298
217
  year: number;
@@ -315,12 +234,13 @@ export interface ExpenseAnalyticsReport {
315
234
  expenseTrends: ExpenseTrend[];
316
235
  topExpenses: Partial<ExpenseType>[];
317
236
  recurringAnalysis: RecurringAnalysis[];
237
+ categoryBreakdown: ExpensesByCategory[];
318
238
  }
319
239
  export interface SupplierPerformanceMetric {
320
240
  supplierName: string;
321
241
  totalOrders: number;
322
242
  totalAmount: number;
323
- completedOrders: number;
243
+ receivedOrders: number;
324
244
  completionRate: number;
325
245
  avgOrderValue: number;
326
246
  avgDeliveryTime: number;
@@ -332,6 +252,31 @@ export interface SupplierPerformanceReport {
332
252
  };
333
253
  supplierPerformance: SupplierPerformanceMetric[];
334
254
  }
255
+ export interface InventoryAnalyticsReport {
256
+ wastageReport: WastageReportItem[];
257
+ adjustmentTrends: {
258
+ _id: {
259
+ year: number;
260
+ month: number;
261
+ };
262
+ adjustments: {
263
+ type: string;
264
+ value: number;
265
+ quantity: number;
266
+ count: number;
267
+ }[];
268
+ totalValue: number;
269
+ }[];
270
+ totalWastageValue: number;
271
+ }
272
+ export interface DashboardSummary {
273
+ todaysSales: number;
274
+ pendingExpenses: number;
275
+ totalExpensesThisMonth: number;
276
+ totalWastageThisMonth: number;
277
+ overduePayments: number;
278
+ activeSuppliers: number;
279
+ }
335
280
  export interface BaseQueryParams {
336
281
  page?: number;
337
282
  limit?: number;
@@ -351,8 +296,5 @@ export interface InventoryAdjustmentsQueryParams extends BaseQueryParams {
351
296
  }
352
297
  export interface ExpensesQueryParams extends BaseQueryParams {
353
298
  category?: ExpenseType['category'];
354
- }
355
- export interface CashTransactionsQueryParams extends BaseQueryParams {
356
- type?: CashTransactionType['type'];
357
- category?: CashTransactionType['category'];
299
+ approvalStatus?: ExpenseType['approvalStatus'];
358
300
  }
@@ -1,5 +1,2 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- // ============================================
4
- // ERROR INTERFACES
5
- // ============================================
package/dist/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  export * from './common';
2
2
  export * from './filters';
3
+ export * from './accounting';
package/dist/index.js CHANGED
@@ -16,3 +16,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./common"), exports);
18
18
  __exportStar(require("./filters"), exports);
19
+ __exportStar(require("./accounting"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "shopoflex-types",
3
- "version": "1.0.66",
3
+ "version": "1.0.68",
4
4
  "description": "Shared TypeScript types for Shopoflex applications",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",