@devlider001/washlab-backend 1.0.3 → 1.0.5

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.
Files changed (83) hide show
  1. package/convex/_generated/api.d.ts +6 -0
  2. package/convex/admin.d.ts +129 -4
  3. package/convex/analytics.d.ts +87 -0
  4. package/convex/attendants.d.ts +40 -0
  5. package/convex/audit.d.ts +39 -0
  6. package/convex/customers.d.ts +69 -1
  7. package/convex/lib/auth.d.ts +4 -0
  8. package/convex/loyalty.d.ts +1 -1
  9. package/convex/notifications.d.ts +170 -0
  10. package/convex/orders.d.ts +80 -4
  11. package/convex/payments.d.ts +47 -2
  12. package/convex/resources.d.ts +31 -0
  13. package/convex/schema.d.ts +141 -9
  14. package/convex/vouchers.d.ts +187 -0
  15. package/dist/convex/admin.d.ts +377 -0
  16. package/dist/convex/admin.d.ts.map +1 -0
  17. package/dist/convex/admin.js +959 -0
  18. package/dist/convex/admin.js.map +1 -0
  19. package/dist/convex/analytics.d.ts +87 -0
  20. package/dist/convex/analytics.d.ts.map +1 -0
  21. package/dist/convex/analytics.js +361 -0
  22. package/dist/convex/analytics.js.map +1 -0
  23. package/dist/convex/attendants.d.ts +140 -0
  24. package/dist/convex/attendants.d.ts.map +1 -0
  25. package/dist/convex/attendants.js +337 -0
  26. package/dist/convex/attendants.js.map +1 -0
  27. package/dist/convex/audit.d.ts +158 -0
  28. package/dist/convex/audit.d.ts.map +1 -0
  29. package/dist/convex/audit.js +184 -0
  30. package/dist/convex/audit.js.map +1 -0
  31. package/dist/convex/clerk.d.ts +53 -0
  32. package/dist/convex/clerk.d.ts.map +1 -0
  33. package/dist/convex/clerk.js +316 -0
  34. package/dist/convex/clerk.js.map +1 -0
  35. package/dist/convex/customers.d.ts +224 -0
  36. package/dist/convex/customers.d.ts.map +1 -0
  37. package/dist/convex/customers.js +504 -0
  38. package/dist/convex/customers.js.map +1 -0
  39. package/dist/convex/http.d.ts +3 -0
  40. package/dist/convex/http.d.ts.map +1 -0
  41. package/dist/convex/http.js +115 -0
  42. package/dist/convex/http.js.map +1 -0
  43. package/dist/convex/lib/audit.d.ts +36 -0
  44. package/dist/convex/lib/audit.d.ts.map +1 -0
  45. package/dist/convex/lib/audit.js +59 -0
  46. package/dist/convex/lib/audit.js.map +1 -0
  47. package/dist/convex/lib/auth.d.ts +96 -0
  48. package/dist/convex/lib/auth.d.ts.map +1 -0
  49. package/dist/convex/lib/auth.js +94 -0
  50. package/dist/convex/lib/auth.js.map +1 -0
  51. package/dist/convex/lib/utils.d.ts +38 -0
  52. package/dist/convex/lib/utils.d.ts.map +1 -0
  53. package/dist/convex/lib/utils.js +71 -0
  54. package/dist/convex/lib/utils.js.map +1 -0
  55. package/dist/convex/loyalty.d.ts +82 -0
  56. package/dist/convex/loyalty.d.ts.map +1 -0
  57. package/dist/convex/loyalty.js +286 -0
  58. package/dist/convex/loyalty.js.map +1 -0
  59. package/dist/convex/orders.d.ts +326 -0
  60. package/dist/convex/orders.d.ts.map +1 -0
  61. package/dist/convex/orders.js +570 -0
  62. package/dist/convex/orders.js.map +1 -0
  63. package/dist/convex/payments.d.ts +134 -0
  64. package/dist/convex/payments.d.ts.map +1 -0
  65. package/dist/convex/payments.js +360 -0
  66. package/dist/convex/payments.js.map +1 -0
  67. package/dist/convex/resources.d.ts +119 -0
  68. package/dist/convex/resources.d.ts.map +1 -0
  69. package/dist/convex/resources.js +283 -0
  70. package/dist/convex/resources.js.map +1 -0
  71. package/dist/convex/schema.d.ts +450 -0
  72. package/dist/convex/schema.d.ts.map +1 -0
  73. package/dist/convex/schema.js +347 -0
  74. package/dist/convex/schema.js.map +1 -0
  75. package/dist/convex/vouchers.d.ts +187 -0
  76. package/dist/convex/vouchers.d.ts.map +1 -0
  77. package/dist/convex/vouchers.js +464 -0
  78. package/dist/convex/vouchers.js.map +1 -0
  79. package/dist/src/index.d.ts +9 -0
  80. package/dist/src/index.d.ts.map +1 -0
  81. package/dist/src/index.js +9 -0
  82. package/dist/src/index.js.map +1 -0
  83. package/package.json +4 -3
@@ -0,0 +1,170 @@
1
+ /**
2
+ * Notification Functions
3
+ *
4
+ * Handles creating, reading, and managing system notifications
5
+ * for customers, attendants, and admins.
6
+ */
7
+ /**
8
+ * Get notifications for current user - Paginated
9
+ * Supports usePaginatedQuery for infinite scroll
10
+ */
11
+ export declare const getMyNotifications: import("convex/server").RegisteredQuery<"public", {
12
+ type?: "info" | "success" | "warning" | "error" | "order" | "payment" | "system" | undefined;
13
+ isRead?: boolean | undefined;
14
+ paginationOpts: {
15
+ id?: number;
16
+ endCursor?: string | null;
17
+ maximumRowsRead?: number;
18
+ maximumBytesRead?: number;
19
+ numItems: number;
20
+ cursor: string | null;
21
+ };
22
+ }, Promise<{
23
+ page: never[];
24
+ isDone: boolean;
25
+ continueCursor: null;
26
+ } | {
27
+ page: {
28
+ _id: import("convex/values").GenericId<"notifications">;
29
+ _creationTime: number;
30
+ branchId?: import("convex/values").GenericId<"branches"> | undefined;
31
+ entityType?: string | undefined;
32
+ entityId?: string | undefined;
33
+ actionUrl?: string | undefined;
34
+ actionLabel?: string | undefined;
35
+ readAt?: number | undefined;
36
+ senderId?: string | undefined;
37
+ senderType?: "admin" | "attendant" | "system" | undefined;
38
+ expiresAt?: number | undefined;
39
+ scheduledFor?: number | undefined;
40
+ sentAt?: number | undefined;
41
+ type: "info" | "success" | "warning" | "error" | "order" | "payment" | "system";
42
+ createdAt: number;
43
+ isDeleted: boolean;
44
+ recipientId: string;
45
+ recipientType: "admin" | "customer" | "attendant" | "all";
46
+ title: string;
47
+ message: string;
48
+ priority: "low" | "normal" | "high" | "urgent";
49
+ isRead: boolean;
50
+ }[];
51
+ isDone: boolean;
52
+ continueCursor: string;
53
+ }>>;
54
+ /**
55
+ * Get unread notification count for current user
56
+ */
57
+ export declare const getUnreadCount: import("convex/server").RegisteredQuery<"public", {}, Promise<number>>;
58
+ /**
59
+ * Mark notification as read
60
+ */
61
+ export declare const markAsRead: import("convex/server").RegisteredMutation<"public", {
62
+ notificationId: import("convex/values").GenericId<"notifications">;
63
+ }, Promise<{
64
+ success: boolean;
65
+ }>>;
66
+ /**
67
+ * Mark all notifications as read for current user
68
+ */
69
+ export declare const markAllAsRead: import("convex/server").RegisteredMutation<"public", {}, Promise<{
70
+ success: boolean;
71
+ count: number;
72
+ }>>;
73
+ /**
74
+ * Delete notification (soft delete)
75
+ */
76
+ export declare const deleteNotification: import("convex/server").RegisteredMutation<"public", {
77
+ notificationId: import("convex/values").GenericId<"notifications">;
78
+ }, Promise<{
79
+ success: boolean;
80
+ }>>;
81
+ /**
82
+ * Get all notifications (admin only) - Paginated
83
+ */
84
+ export declare const getAllNotifications: import("convex/server").RegisteredQuery<"public", {
85
+ type?: "info" | "success" | "warning" | "error" | "order" | "payment" | "system" | undefined;
86
+ recipientType?: "admin" | "customer" | "attendant" | "all" | undefined;
87
+ isRead?: boolean | undefined;
88
+ paginationOpts: {
89
+ id?: number;
90
+ endCursor?: string | null;
91
+ maximumRowsRead?: number;
92
+ maximumBytesRead?: number;
93
+ numItems: number;
94
+ cursor: string | null;
95
+ };
96
+ }, Promise<{
97
+ page: {
98
+ _id: import("convex/values").GenericId<"notifications">;
99
+ _creationTime: number;
100
+ branchId?: import("convex/values").GenericId<"branches"> | undefined;
101
+ entityType?: string | undefined;
102
+ entityId?: string | undefined;
103
+ actionUrl?: string | undefined;
104
+ actionLabel?: string | undefined;
105
+ readAt?: number | undefined;
106
+ senderId?: string | undefined;
107
+ senderType?: "admin" | "attendant" | "system" | undefined;
108
+ expiresAt?: number | undefined;
109
+ scheduledFor?: number | undefined;
110
+ sentAt?: number | undefined;
111
+ type: "info" | "success" | "warning" | "error" | "order" | "payment" | "system";
112
+ createdAt: number;
113
+ isDeleted: boolean;
114
+ recipientId: string;
115
+ recipientType: "admin" | "customer" | "attendant" | "all";
116
+ title: string;
117
+ message: string;
118
+ priority: "low" | "normal" | "high" | "urgent";
119
+ isRead: boolean;
120
+ }[];
121
+ isDone: boolean;
122
+ continueCursor: string;
123
+ }>>;
124
+ /**
125
+ * Create notification (admin only)
126
+ */
127
+ export declare const createNotification: import("convex/server").RegisteredMutation<"public", {
128
+ branchId?: import("convex/values").GenericId<"branches"> | undefined;
129
+ entityType?: string | undefined;
130
+ entityId?: string | undefined;
131
+ recipientId?: string | undefined;
132
+ actionUrl?: string | undefined;
133
+ actionLabel?: string | undefined;
134
+ priority?: "low" | "normal" | "high" | "urgent" | undefined;
135
+ expiresAt?: number | undefined;
136
+ scheduledFor?: number | undefined;
137
+ type: "info" | "success" | "warning" | "error" | "order" | "payment" | "system";
138
+ recipientType: "admin" | "customer" | "attendant" | "all";
139
+ title: string;
140
+ message: string;
141
+ }, Promise<{
142
+ notificationId: import("convex/values").GenericId<"notifications">;
143
+ success: boolean;
144
+ }>>;
145
+ /**
146
+ * Delete notification (admin only - hard delete)
147
+ */
148
+ export declare const adminDeleteNotification: import("convex/server").RegisteredMutation<"public", {
149
+ notificationId: import("convex/values").GenericId<"notifications">;
150
+ }, Promise<{
151
+ success: boolean;
152
+ }>>;
153
+ /**
154
+ * Create notification (internal - for system use)
155
+ */
156
+ export declare const createSystemNotification: import("convex/server").RegisteredMutation<"internal", {
157
+ branchId?: import("convex/values").GenericId<"branches"> | undefined;
158
+ entityType?: string | undefined;
159
+ entityId?: string | undefined;
160
+ actionUrl?: string | undefined;
161
+ actionLabel?: string | undefined;
162
+ priority?: "low" | "normal" | "high" | "urgent" | undefined;
163
+ expiresAt?: number | undefined;
164
+ type: "info" | "success" | "warning" | "error" | "order" | "payment" | "system";
165
+ recipientId: string;
166
+ recipientType: "admin" | "customer" | "attendant" | "all";
167
+ title: string;
168
+ message: string;
169
+ }, Promise<import("convex/values").GenericId<"notifications">>>;
170
+ //# sourceMappingURL=notifications.d.ts.map
@@ -17,6 +17,7 @@ export declare const getByOrderNumber: import("convex/server").RegisteredQuery<"
17
17
  itemCount?: number | undefined;
18
18
  estimatedLoads?: number | undefined;
19
19
  whitesSeparate?: boolean | undefined;
20
+ bagCardNumber?: string | undefined;
20
21
  notes?: string | undefined;
21
22
  deliveryAddress?: string | undefined;
22
23
  deliveryPhoneNumber?: string | undefined;
@@ -25,6 +26,7 @@ export declare const getByOrderNumber: import("convex/server").RegisteredQuery<"
25
26
  paymentMethod?: "mobile_money" | "card" | "cash" | undefined;
26
27
  paymentId?: import("convex/values").GenericId<"payments"> | undefined;
27
28
  fulfilledBy?: import("convex/values").GenericId<"attendants"> | undefined;
29
+ status: "pending" | "in_progress" | "ready_for_pickup" | "delivered" | "completed" | "cancelled";
28
30
  createdAt: number;
29
31
  isDeleted: boolean;
30
32
  branchId: import("convex/values").GenericId<"branches">;
@@ -38,7 +40,6 @@ export declare const getByOrderNumber: import("convex/server").RegisteredQuery<"
38
40
  basePrice: number;
39
41
  totalPrice: number;
40
42
  finalPrice: number;
41
- status: "pending" | "in_progress" | "ready_for_pickup" | "delivered" | "completed" | "cancelled";
42
43
  paymentStatus: "pending" | "paid" | "failed" | "refunded";
43
44
  updatedAt: number;
44
45
  statusHistory: {
@@ -63,6 +64,7 @@ export declare const getByCustomer: import("convex/server").RegisteredQuery<"pub
63
64
  itemCount?: number | undefined;
64
65
  estimatedLoads?: number | undefined;
65
66
  whitesSeparate?: boolean | undefined;
67
+ bagCardNumber?: string | undefined;
66
68
  notes?: string | undefined;
67
69
  deliveryAddress?: string | undefined;
68
70
  deliveryPhoneNumber?: string | undefined;
@@ -71,6 +73,7 @@ export declare const getByCustomer: import("convex/server").RegisteredQuery<"pub
71
73
  paymentMethod?: "mobile_money" | "card" | "cash" | undefined;
72
74
  paymentId?: import("convex/values").GenericId<"payments"> | undefined;
73
75
  fulfilledBy?: import("convex/values").GenericId<"attendants"> | undefined;
76
+ status: "pending" | "in_progress" | "ready_for_pickup" | "delivered" | "completed" | "cancelled";
74
77
  createdAt: number;
75
78
  isDeleted: boolean;
76
79
  branchId: import("convex/values").GenericId<"branches">;
@@ -84,7 +87,6 @@ export declare const getByCustomer: import("convex/server").RegisteredQuery<"pub
84
87
  basePrice: number;
85
88
  totalPrice: number;
86
89
  finalPrice: number;
87
- status: "pending" | "in_progress" | "ready_for_pickup" | "delivered" | "completed" | "cancelled";
88
90
  paymentStatus: "pending" | "paid" | "failed" | "refunded";
89
91
  updatedAt: number;
90
92
  statusHistory: {
@@ -110,6 +112,7 @@ export declare const getByBranch: import("convex/server").RegisteredQuery<"publi
110
112
  itemCount?: number | undefined;
111
113
  estimatedLoads?: number | undefined;
112
114
  whitesSeparate?: boolean | undefined;
115
+ bagCardNumber?: string | undefined;
113
116
  notes?: string | undefined;
114
117
  deliveryAddress?: string | undefined;
115
118
  deliveryPhoneNumber?: string | undefined;
@@ -118,6 +121,7 @@ export declare const getByBranch: import("convex/server").RegisteredQuery<"publi
118
121
  paymentMethod?: "mobile_money" | "card" | "cash" | undefined;
119
122
  paymentId?: import("convex/values").GenericId<"payments"> | undefined;
120
123
  fulfilledBy?: import("convex/values").GenericId<"attendants"> | undefined;
124
+ status: "pending" | "in_progress" | "ready_for_pickup" | "delivered" | "completed" | "cancelled";
121
125
  createdAt: number;
122
126
  isDeleted: boolean;
123
127
  branchId: import("convex/values").GenericId<"branches">;
@@ -131,7 +135,6 @@ export declare const getByBranch: import("convex/server").RegisteredQuery<"publi
131
135
  basePrice: number;
132
136
  totalPrice: number;
133
137
  finalPrice: number;
134
- status: "pending" | "in_progress" | "ready_for_pickup" | "delivered" | "completed" | "cancelled";
135
138
  paymentStatus: "pending" | "paid" | "failed" | "refunded";
136
139
  updatedAt: number;
137
140
  statusHistory: {
@@ -155,6 +158,7 @@ export declare const getPending: import("convex/server").RegisteredQuery<"public
155
158
  itemCount?: number | undefined;
156
159
  estimatedLoads?: number | undefined;
157
160
  whitesSeparate?: boolean | undefined;
161
+ bagCardNumber?: string | undefined;
158
162
  notes?: string | undefined;
159
163
  deliveryAddress?: string | undefined;
160
164
  deliveryPhoneNumber?: string | undefined;
@@ -163,6 +167,7 @@ export declare const getPending: import("convex/server").RegisteredQuery<"public
163
167
  paymentMethod?: "mobile_money" | "card" | "cash" | undefined;
164
168
  paymentId?: import("convex/values").GenericId<"payments"> | undefined;
165
169
  fulfilledBy?: import("convex/values").GenericId<"attendants"> | undefined;
170
+ status: "pending" | "in_progress" | "ready_for_pickup" | "delivered" | "completed" | "cancelled";
166
171
  createdAt: number;
167
172
  isDeleted: boolean;
168
173
  branchId: import("convex/values").GenericId<"branches">;
@@ -176,7 +181,6 @@ export declare const getPending: import("convex/server").RegisteredQuery<"public
176
181
  basePrice: number;
177
182
  totalPrice: number;
178
183
  finalPrice: number;
179
- status: "pending" | "in_progress" | "ready_for_pickup" | "delivered" | "completed" | "cancelled";
180
184
  paymentStatus: "pending" | "paid" | "failed" | "refunded";
181
185
  updatedAt: number;
182
186
  statusHistory: {
@@ -190,6 +194,7 @@ export declare const getPending: import("convex/server").RegisteredQuery<"public
190
194
  * Create walk-in order (attendant creates at POS)
191
195
  */
192
196
  export declare const createWalkIn: import("convex/server").RegisteredMutation<"public", {
197
+ bagCardNumber?: string | undefined;
193
198
  notes?: string | undefined;
194
199
  deliveryAddress?: string | undefined;
195
200
  branchId: import("convex/values").GenericId<"branches">;
@@ -207,6 +212,7 @@ export declare const createWalkIn: import("convex/server").RegisteredMutation<"p
207
212
  export declare const createOnline: import("convex/server").RegisteredMutation<"public", {
208
213
  estimatedLoads?: number | undefined;
209
214
  whitesSeparate?: boolean | undefined;
215
+ bagCardNumber?: string | undefined;
210
216
  notes?: string | undefined;
211
217
  deliveryAddress?: string | undefined;
212
218
  deliveryPhoneNumber?: string | undefined;
@@ -228,6 +234,7 @@ export declare const createOnline: import("convex/server").RegisteredMutation<"p
228
234
  * Update order weight (when customer drops off online order)
229
235
  */
230
236
  export declare const updateWeight: import("convex/server").RegisteredMutation<"public", {
237
+ bagCardNumber?: string | undefined;
231
238
  actualWeight: number;
232
239
  itemCount: number;
233
240
  orderId: import("convex/values").GenericId<"orders">;
@@ -247,4 +254,73 @@ export declare const cancel: import("convex/server").RegisteredMutation<"public"
247
254
  reason?: string | undefined;
248
255
  orderId: import("convex/values").GenericId<"orders">;
249
256
  }, Promise<import("convex/values").GenericId<"orders">>>;
257
+ /**
258
+ * Get order statistics summary
259
+ */
260
+ export declare const getStats: import("convex/server").RegisteredQuery<"public", {
261
+ branchId?: import("convex/values").GenericId<"branches"> | undefined;
262
+ startDate?: number | undefined;
263
+ endDate?: number | undefined;
264
+ }, Promise<{
265
+ total: number;
266
+ byStatus: Record<string, number>;
267
+ byType: Record<string, number>;
268
+ byServiceType: Record<string, number>;
269
+ totalRevenue: number;
270
+ averageOrderValue: number;
271
+ totalWeight: number;
272
+ averageWeight: number;
273
+ }>>;
274
+ /**
275
+ * Get orders by date range with detailed filtering
276
+ */
277
+ export declare const getByDateRange: import("convex/server").RegisteredQuery<"public", {
278
+ status?: "pending" | "in_progress" | "ready_for_pickup" | "delivered" | "completed" | "cancelled" | undefined;
279
+ branchId?: import("convex/values").GenericId<"branches"> | undefined;
280
+ orderType?: "walk_in" | "online" | undefined;
281
+ serviceType?: "wash_only" | "wash_and_dry" | "dry_only" | undefined;
282
+ limit?: number | undefined;
283
+ startDate: number;
284
+ endDate: number;
285
+ }, Promise<{
286
+ _id: import("convex/values").GenericId<"orders">;
287
+ _creationTime: number;
288
+ createdBy?: import("convex/values").GenericId<"attendants"> | undefined;
289
+ estimatedWeight?: number | undefined;
290
+ actualWeight?: number | undefined;
291
+ itemCount?: number | undefined;
292
+ estimatedLoads?: number | undefined;
293
+ whitesSeparate?: boolean | undefined;
294
+ bagCardNumber?: string | undefined;
295
+ notes?: string | undefined;
296
+ deliveryAddress?: string | undefined;
297
+ deliveryPhoneNumber?: string | undefined;
298
+ deliveryHall?: string | undefined;
299
+ deliveryRoom?: string | undefined;
300
+ paymentMethod?: "mobile_money" | "card" | "cash" | undefined;
301
+ paymentId?: import("convex/values").GenericId<"payments"> | undefined;
302
+ fulfilledBy?: import("convex/values").GenericId<"attendants"> | undefined;
303
+ status: "pending" | "in_progress" | "ready_for_pickup" | "delivered" | "completed" | "cancelled";
304
+ createdAt: number;
305
+ isDeleted: boolean;
306
+ branchId: import("convex/values").GenericId<"branches">;
307
+ deliveryFee: number;
308
+ customerId: import("convex/values").GenericId<"users">;
309
+ customerPhoneNumber: string;
310
+ orderNumber: string;
311
+ orderType: "walk_in" | "online";
312
+ serviceType: "wash_only" | "wash_and_dry" | "dry_only";
313
+ isDelivery: boolean;
314
+ basePrice: number;
315
+ totalPrice: number;
316
+ finalPrice: number;
317
+ paymentStatus: "pending" | "paid" | "failed" | "refunded";
318
+ updatedAt: number;
319
+ statusHistory: {
320
+ notes?: string | undefined;
321
+ status: string;
322
+ changedAt: number;
323
+ changedBy: import("convex/values").GenericId<"attendants">;
324
+ }[];
325
+ }[]>>;
250
326
  //# sourceMappingURL=orders.d.ts.map
@@ -15,10 +15,10 @@ export declare const getByOrder: import("convex/server").RegisteredQuery<"public
15
15
  gatewayResponse?: string | undefined;
16
16
  completedAt?: number | undefined;
17
17
  processedBy?: import("convex/values").GenericId<"attendants"> | undefined;
18
+ status: "pending" | "completed" | "failed" | "refunded" | "processing";
18
19
  createdAt: number;
19
20
  isDeleted: boolean;
20
21
  customerId: import("convex/values").GenericId<"users">;
21
- status: "pending" | "completed" | "failed" | "refunded" | "processing";
22
22
  paymentMethod: "mobile_money" | "card" | "cash";
23
23
  orderId: import("convex/values").GenericId<"orders">;
24
24
  amount: number;
@@ -36,10 +36,10 @@ export declare const getByCustomer: import("convex/server").RegisteredQuery<"pub
36
36
  gatewayResponse?: string | undefined;
37
37
  completedAt?: number | undefined;
38
38
  processedBy?: import("convex/values").GenericId<"attendants"> | undefined;
39
+ status: "pending" | "completed" | "failed" | "refunded" | "processing";
39
40
  createdAt: number;
40
41
  isDeleted: boolean;
41
42
  customerId: import("convex/values").GenericId<"users">;
42
- status: "pending" | "completed" | "failed" | "refunded" | "processing";
43
43
  paymentMethod: "mobile_money" | "card" | "cash";
44
44
  orderId: import("convex/values").GenericId<"orders">;
45
45
  amount: number;
@@ -86,4 +86,49 @@ export declare const refund: import("convex/server").RegisteredMutation<"public"
86
86
  reason?: string | undefined;
87
87
  paymentId: import("convex/values").GenericId<"payments">;
88
88
  }, Promise<import("convex/values").GenericId<"payments">>>;
89
+ /**
90
+ * Get transaction history - Paginated
91
+ * Supports usePaginatedQuery for infinite scroll
92
+ */
93
+ export declare const getTransactionHistory: import("convex/server").RegisteredQuery<"public", {
94
+ branchId?: import("convex/values").GenericId<"branches"> | undefined;
95
+ paymentMethod?: "mobile_money" | "card" | "cash" | undefined;
96
+ cursor?: string | undefined;
97
+ numItems?: number | undefined;
98
+ startDate?: number | undefined;
99
+ endDate?: number | undefined;
100
+ }, Promise<{
101
+ page: {
102
+ _id: import("convex/values").GenericId<"payments">;
103
+ _creationTime: number;
104
+ gatewayTransactionId?: string | undefined;
105
+ gatewayResponse?: string | undefined;
106
+ completedAt?: number | undefined;
107
+ processedBy?: import("convex/values").GenericId<"attendants"> | undefined;
108
+ status: "pending" | "completed" | "failed" | "refunded" | "processing";
109
+ createdAt: number;
110
+ isDeleted: boolean;
111
+ customerId: import("convex/values").GenericId<"users">;
112
+ paymentMethod: "mobile_money" | "card" | "cash";
113
+ orderId: import("convex/values").GenericId<"orders">;
114
+ amount: number;
115
+ currency: string;
116
+ }[];
117
+ isDone: boolean;
118
+ continueCursor: string;
119
+ }>>;
120
+ /**
121
+ * Get transaction summary statistics
122
+ */
123
+ export declare const getTransactionSummary: import("convex/server").RegisteredQuery<"public", {
124
+ branchId?: import("convex/values").GenericId<"branches"> | undefined;
125
+ startDate?: number | undefined;
126
+ endDate?: number | undefined;
127
+ }, Promise<{
128
+ totalTransactions: number;
129
+ totalAmount: number;
130
+ averageTransaction: number;
131
+ byMethod: Record<string, number>;
132
+ byStatus: Record<string, number>;
133
+ }>>;
89
134
  //# sourceMappingURL=payments.d.ts.map
@@ -85,4 +85,35 @@ export declare const logUsage: import("convex/server").RegisteredMutation<"publi
85
85
  detergentUnits: number;
86
86
  tokensUsed: number;
87
87
  }, Promise<Id<"resourceUsageLogs">>>;
88
+ /**
89
+ * Get resource usage summary for date range
90
+ */
91
+ export declare const getUsageSummary: import("convex/server").RegisteredQuery<"public", {
92
+ branchId?: import("convex/values").GenericId<"branches"> | undefined;
93
+ startDate?: string | undefined;
94
+ endDate?: string | undefined;
95
+ }, Promise<{
96
+ totals: {
97
+ detergentUnits: number;
98
+ tokensUsed: number;
99
+ waterCycles: number;
100
+ };
101
+ averagePerDay: {
102
+ detergentUnits: number;
103
+ tokensUsed: number;
104
+ waterCycles: number;
105
+ };
106
+ usageByDay: Record<string, {
107
+ detergentUnits: number;
108
+ tokensUsed: number;
109
+ waterCycles: number;
110
+ logCount: number;
111
+ }>;
112
+ totalLogs: number;
113
+ uniqueDays: number;
114
+ dateRange: {
115
+ start: string | undefined;
116
+ end: string | undefined;
117
+ };
118
+ }>>;
88
119
  //# sourceMappingURL=resources.d.ts.map