@open-loyalty/mcp-server 1.0.3 → 1.3.1

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 (142) hide show
  1. package/README.md +180 -177
  2. package/dist/auth/provider.js +2 -14
  3. package/dist/auth/storage.js +22 -0
  4. package/dist/client/http.d.ts +5 -0
  5. package/dist/client/http.js +62 -3
  6. package/dist/config.d.ts +6 -5
  7. package/dist/config.js +15 -11
  8. package/dist/http.js +170 -65
  9. package/dist/instructions.d.ts +5 -0
  10. package/dist/instructions.js +420 -0
  11. package/dist/prompts/fan-engagement-setup.d.ts +107 -0
  12. package/dist/prompts/fan-engagement-setup.js +492 -0
  13. package/dist/server.d.ts +1 -1
  14. package/dist/server.js +68 -278
  15. package/dist/tools/achievement/handlers.d.ts +117 -0
  16. package/dist/tools/achievement/handlers.js +161 -0
  17. package/dist/tools/achievement/index.d.ts +479 -0
  18. package/dist/tools/achievement/index.js +74 -0
  19. package/dist/tools/achievement/schemas.d.ts +433 -0
  20. package/dist/tools/achievement/schemas.js +142 -0
  21. package/dist/tools/achievement.d.ts +155 -121
  22. package/dist/tools/achievement.js +82 -39
  23. package/dist/tools/admin.d.ts +18 -6
  24. package/dist/tools/admin.js +24 -12
  25. package/dist/tools/analytics.d.ts +29 -11
  26. package/dist/tools/analytics.js +58 -48
  27. package/dist/tools/apikey.d.ts +10 -3
  28. package/dist/tools/apikey.js +13 -6
  29. package/dist/tools/audit.d.ts +6 -2
  30. package/dist/tools/audit.js +8 -4
  31. package/dist/tools/badge.d.ts +14 -6
  32. package/dist/tools/badge.js +36 -27
  33. package/dist/tools/campaign/handlers.d.ts +42 -0
  34. package/dist/tools/campaign/handlers.js +223 -0
  35. package/dist/tools/campaign/index.d.ts +783 -0
  36. package/dist/tools/campaign/index.js +112 -0
  37. package/dist/tools/campaign/member-handlers.d.ts +60 -0
  38. package/dist/tools/campaign/member-handlers.js +159 -0
  39. package/dist/tools/campaign/schemas.d.ts +704 -0
  40. package/dist/tools/campaign/schemas.js +259 -0
  41. package/dist/tools/campaign/types.d.ts +161 -0
  42. package/dist/tools/campaign/types.js +2 -0
  43. package/dist/tools/campaign.d.ts +41 -16
  44. package/dist/tools/campaign.js +38 -25
  45. package/dist/tools/custom-event.d.ts +315 -0
  46. package/dist/tools/custom-event.js +270 -0
  47. package/dist/tools/export.d.ts +12 -4
  48. package/dist/tools/export.js +25 -20
  49. package/dist/tools/import.d.ts +9 -3
  50. package/dist/tools/import.js +33 -21
  51. package/dist/tools/index.d.ts +3 -11
  52. package/dist/tools/index.js +17 -475
  53. package/dist/tools/member/handlers.d.ts +111 -0
  54. package/dist/tools/member/handlers.js +206 -0
  55. package/dist/tools/member/index.d.ts +169 -0
  56. package/dist/tools/member/index.js +92 -0
  57. package/dist/tools/member/schemas.d.ts +89 -0
  58. package/dist/tools/member/schemas.js +65 -0
  59. package/dist/tools/member.d.ts +21 -0
  60. package/dist/tools/member.js +56 -62
  61. package/dist/tools/points.d.ts +19 -6
  62. package/dist/tools/points.js +51 -49
  63. package/dist/tools/referral/handlers.d.ts +47 -0
  64. package/dist/tools/referral/handlers.js +115 -0
  65. package/dist/tools/referral/index.d.ts +44 -0
  66. package/dist/tools/referral/index.js +44 -0
  67. package/dist/tools/referral/schemas.d.ts +34 -0
  68. package/dist/tools/referral/schemas.js +52 -0
  69. package/dist/tools/reward/handlers.d.ts +110 -0
  70. package/dist/tools/reward/handlers.js +289 -0
  71. package/dist/tools/reward/index.d.ts +177 -0
  72. package/dist/tools/reward/index.js +90 -0
  73. package/dist/tools/reward/schemas.d.ts +116 -0
  74. package/dist/tools/reward/schemas.js +91 -0
  75. package/dist/tools/reward.d.ts +18 -0
  76. package/dist/tools/reward.js +56 -66
  77. package/dist/tools/role.d.ts +26 -7
  78. package/dist/tools/role.js +25 -12
  79. package/dist/tools/segment/handlers.d.ts +87 -0
  80. package/dist/tools/segment/handlers.js +174 -0
  81. package/dist/tools/segment/index.d.ts +395 -0
  82. package/dist/tools/segment/index.js +87 -0
  83. package/dist/tools/segment/schemas.d.ts +337 -0
  84. package/dist/tools/segment/schemas.js +79 -0
  85. package/dist/tools/segment.d.ts +29 -10
  86. package/dist/tools/segment.js +84 -50
  87. package/dist/tools/store.d.ts +12 -4
  88. package/dist/tools/store.js +16 -8
  89. package/dist/tools/tierset.d.ts +19 -7
  90. package/dist/tools/tierset.js +44 -35
  91. package/dist/tools/transaction.d.ts +16 -8
  92. package/dist/tools/transaction.js +25 -21
  93. package/dist/tools/wallet-type.d.ts +7 -3
  94. package/dist/tools/wallet-type.js +14 -12
  95. package/dist/tools/webhook.d.ts +23 -10
  96. package/dist/tools/webhook.js +135 -33
  97. package/dist/types/schemas/achievement.d.ts +12 -309
  98. package/dist/types/schemas/achievement.js +0 -13
  99. package/dist/types/schemas/admin.d.ts +10 -97
  100. package/dist/types/schemas/admin.js +0 -38
  101. package/dist/types/schemas/badge.d.ts +0 -37
  102. package/dist/types/schemas/badge.js +0 -11
  103. package/dist/types/schemas/campaign.d.ts +64 -832
  104. package/dist/types/schemas/campaign.js +2 -25
  105. package/dist/types/schemas/common.d.ts +5 -0
  106. package/dist/types/schemas/common.js +5 -0
  107. package/dist/types/schemas/export.d.ts +0 -17
  108. package/dist/types/schemas/export.js +0 -7
  109. package/dist/types/schemas/member.d.ts +37 -176
  110. package/dist/types/schemas/member.js +0 -27
  111. package/dist/types/schemas/points.d.ts +0 -63
  112. package/dist/types/schemas/points.js +0 -22
  113. package/dist/types/schemas/reward.d.ts +71 -68
  114. package/dist/types/schemas/reward.js +8 -28
  115. package/dist/types/schemas/role.d.ts +0 -100
  116. package/dist/types/schemas/role.js +0 -29
  117. package/dist/types/schemas/segment.d.ts +0 -58
  118. package/dist/types/schemas/segment.js +0 -17
  119. package/dist/types/schemas/tierset.d.ts +0 -176
  120. package/dist/types/schemas/tierset.js +0 -27
  121. package/dist/types/schemas/transaction.d.ts +23 -254
  122. package/dist/types/schemas/transaction.js +0 -7
  123. package/dist/types/schemas/wallet-type.d.ts +8 -8
  124. package/dist/types/schemas/wallet-type.js +1 -1
  125. package/dist/types/schemas/webhook.d.ts +0 -58
  126. package/dist/types/schemas/webhook.js +0 -12
  127. package/dist/utils/errors.js +30 -3
  128. package/dist/utils/payload.d.ts +12 -0
  129. package/dist/utils/payload.js +14 -0
  130. package/dist/workflows/app-login-streak.d.ts +39 -0
  131. package/dist/workflows/app-login-streak.js +298 -0
  132. package/dist/workflows/early-arrival.d.ts +33 -0
  133. package/dist/workflows/early-arrival.js +148 -0
  134. package/dist/workflows/index.d.ts +101 -0
  135. package/dist/workflows/index.js +208 -0
  136. package/dist/workflows/match-attendance.d.ts +45 -0
  137. package/dist/workflows/match-attendance.js +308 -0
  138. package/dist/workflows/sportsbar-visit.d.ts +41 -0
  139. package/dist/workflows/sportsbar-visit.js +284 -0
  140. package/dist/workflows/vod-watching.d.ts +43 -0
  141. package/dist/workflows/vod-watching.js +326 -0
  142. package/package.json +10 -2
@@ -23,13 +23,8 @@ export const CampaignEffectEnum = z.enum([
23
23
  "assign_member_custom_attribute",
24
24
  "remove_member_custom_attribute",
25
25
  ]);
26
- // Points Rule Schema for give_points effect
27
- export const CampaignPointsRuleSchema = z.object({
28
- description: z.string().optional(),
29
- expression: z.string().optional(),
30
- multiplier: z.number().optional(),
31
- fixedValue: z.number().optional(),
32
- });
26
+ // Points Rule Schema for give_points effect (string expression)
27
+ export const CampaignPointsRuleSchema = z.string();
33
28
  // Units Lock Rule Schema
34
29
  export const CampaignUnitsLockRuleSchema = z.object({
35
30
  lockStrategy: z.enum(["from_wallet", "no_pending", "expression"]).optional(),
@@ -146,24 +141,6 @@ export const CampaignSchema = z.object({
146
141
  labels: z.array(CampaignLabelSchema).optional(),
147
142
  memberFilter: z.record(z.unknown()).optional(),
148
143
  });
149
- // Campaign Create Input Schema (matches POST body structure)
150
- export const CampaignCreateInputSchema = z.object({
151
- type: CampaignTypeEnum,
152
- trigger: CampaignTriggerEnum,
153
- translations: TranslationsSchema,
154
- activity: CampaignActivitySchema,
155
- rules: z.array(CampaignRuleSchema),
156
- visibility: CampaignVisibilitySchema.optional(),
157
- audience: CampaignAudienceSchema.optional(),
158
- limits: CampaignLimitsSchema.optional(),
159
- triggerStrategy: CampaignTriggerStrategySchema.optional(),
160
- transactionItemsFilters: z.array(CampaignTransactionItemsFilterSchema).optional(),
161
- event: z.string().optional(),
162
- displayOrder: z.number().optional(),
163
- active: z.boolean().optional(),
164
- labels: z.array(CampaignLabelSchema).optional(),
165
- memberFilter: z.record(z.unknown()).optional(),
166
- });
167
144
  // Campaign List Item Schema (simplified for list responses)
168
145
  export const CampaignListItemSchema = z.object({
169
146
  campaignId: z.string(),
@@ -1,4 +1,9 @@
1
1
  import { z } from "zod";
2
+ /**
3
+ * Common storeCode schema used across all tools.
4
+ * Extracted to single source of truth to avoid 86+ duplications.
5
+ */
6
+ export declare const StoreCodeSchema: z.ZodOptional<z.ZodString>;
2
7
  /**
3
8
  * Common schema for paginated list responses.
4
9
  * The Open Loyalty API returns total in varying formats depending on the endpoint:
@@ -1,4 +1,9 @@
1
1
  import { z } from "zod";
2
+ /**
3
+ * Common storeCode schema used across all tools.
4
+ * Extracted to single source of truth to avoid 86+ duplications.
5
+ */
6
+ export const StoreCodeSchema = z.string().optional().describe("Store code for multi-tenant routing. DO NOT pass this parameter - the configured default will be used automatically. Only provide a value if the user explicitly asks to work with a different store.");
2
7
  /**
3
8
  * Common schema for paginated list responses.
4
9
  * The Open Loyalty API returns total in varying formats depending on the endpoint:
@@ -108,20 +108,3 @@ export declare const ExportListResponseSchema: z.ZodObject<{
108
108
  } | undefined;
109
109
  }>;
110
110
  export type ExportListResponse = z.infer<typeof ExportListResponseSchema>;
111
- export declare const ExportCreateInputSchema: z.ZodObject<{
112
- type: z.ZodEnum<["campaignCode", "member", "memberTier", "memberSegment", "rewardFulfillment"]>;
113
- filters: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
114
- page: z.ZodOptional<z.ZodNumber>;
115
- perPage: z.ZodOptional<z.ZodNumber>;
116
- }, "strip", z.ZodTypeAny, {
117
- type: "member" | "campaignCode" | "memberTier" | "memberSegment" | "rewardFulfillment";
118
- filters?: Record<string, unknown> | undefined;
119
- page?: number | undefined;
120
- perPage?: number | undefined;
121
- }, {
122
- type: "member" | "campaignCode" | "memberTier" | "memberSegment" | "rewardFulfillment";
123
- filters?: Record<string, unknown> | undefined;
124
- page?: number | undefined;
125
- perPage?: number | undefined;
126
- }>;
127
- export type ExportCreateInput = z.infer<typeof ExportCreateInputSchema>;
@@ -34,10 +34,3 @@ export const ExportListResponseSchema = z.object({
34
34
  estimated: z.boolean().optional(),
35
35
  }).optional(),
36
36
  });
37
- // Export create input schema - filters vary by type
38
- export const ExportCreateInputSchema = z.object({
39
- type: ExportTypeEnum.describe("Export type: campaignCode, member, memberTier, memberSegment, rewardFulfillment."),
40
- filters: z.record(z.unknown()).optional().describe("Type-specific filters. For campaignCode: { campaignId?, code?, status?, codeId?, usedByMemberId?, createdAt?, usedAt? }. For member exports: member-specific filters."),
41
- page: z.number().optional().describe("Page number for export."),
42
- perPage: z.number().optional().describe("Items per page for export."),
43
- });
@@ -68,20 +68,10 @@ export declare const MemberSchema: z.ZodObject<{
68
68
  levelName: z.ZodOptional<z.ZodString>;
69
69
  points: z.ZodOptional<z.ZodNumber>;
70
70
  }, "strip", z.ZodTypeAny, {
71
+ email: string;
71
72
  active: boolean;
72
73
  memberId: string;
73
- email: string;
74
- createdAt?: string | undefined;
75
- levelId?: string | undefined;
76
- agreement1?: boolean | undefined;
77
- agreement2?: boolean | undefined;
78
- agreement3?: boolean | undefined;
79
- firstName?: string | undefined;
80
- lastName?: string | undefined;
81
74
  phone?: string | undefined;
82
- birthDate?: string | undefined;
83
- gender?: "male" | "female" | "not_disclosed" | undefined;
84
- loyaltyCardNumber?: string | undefined;
85
75
  address?: {
86
76
  street?: string | undefined;
87
77
  city?: string | undefined;
@@ -89,95 +79,23 @@ export declare const MemberSchema: z.ZodObject<{
89
79
  country?: string | undefined;
90
80
  province?: string | undefined;
91
81
  } | undefined;
92
- levelName?: string | undefined;
93
- points?: number | undefined;
94
- }, {
95
- active: boolean;
96
- memberId: string;
97
- email: string;
98
- createdAt?: string | undefined;
99
- levelId?: string | undefined;
100
- agreement1?: boolean | undefined;
101
- agreement2?: boolean | undefined;
102
- agreement3?: boolean | undefined;
82
+ loyaltyCardNumber?: string | undefined;
103
83
  firstName?: string | undefined;
104
84
  lastName?: string | undefined;
105
- phone?: string | undefined;
106
85
  birthDate?: string | undefined;
107
86
  gender?: "male" | "female" | "not_disclosed" | undefined;
108
- loyaltyCardNumber?: string | undefined;
109
- address?: {
110
- street?: string | undefined;
111
- city?: string | undefined;
112
- postal?: string | undefined;
113
- country?: string | undefined;
114
- province?: string | undefined;
115
- } | undefined;
116
- levelName?: string | undefined;
117
- points?: number | undefined;
118
- }>;
119
- export declare const MemberCreateInputSchema: z.ZodObject<{
120
- storeCode: z.ZodOptional<z.ZodString>;
121
- email: z.ZodString;
122
- firstName: z.ZodOptional<z.ZodString>;
123
- lastName: z.ZodOptional<z.ZodString>;
124
- phone: z.ZodOptional<z.ZodString>;
125
- birthDate: z.ZodOptional<z.ZodString>;
126
- gender: z.ZodOptional<z.ZodEnum<["male", "female", "not_disclosed"]>>;
127
- loyaltyCardNumber: z.ZodOptional<z.ZodString>;
128
- agreement1: z.ZodOptional<z.ZodBoolean>;
129
- agreement2: z.ZodOptional<z.ZodBoolean>;
130
- agreement3: z.ZodOptional<z.ZodBoolean>;
131
- address: z.ZodOptional<z.ZodObject<{
132
- street: z.ZodOptional<z.ZodString>;
133
- city: z.ZodOptional<z.ZodString>;
134
- postal: z.ZodOptional<z.ZodString>;
135
- country: z.ZodOptional<z.ZodString>;
136
- province: z.ZodOptional<z.ZodString>;
137
- }, "strip", z.ZodTypeAny, {
138
- street?: string | undefined;
139
- city?: string | undefined;
140
- postal?: string | undefined;
141
- country?: string | undefined;
142
- province?: string | undefined;
143
- }, {
144
- street?: string | undefined;
145
- city?: string | undefined;
146
- postal?: string | undefined;
147
- country?: string | undefined;
148
- province?: string | undefined;
149
- }>>;
150
- }, "strip", z.ZodTypeAny, {
151
- email: string;
152
- storeCode?: string | undefined;
87
+ createdAt?: string | undefined;
88
+ levelId?: string | undefined;
153
89
  agreement1?: boolean | undefined;
154
90
  agreement2?: boolean | undefined;
155
91
  agreement3?: boolean | undefined;
156
- firstName?: string | undefined;
157
- lastName?: string | undefined;
158
- phone?: string | undefined;
159
- birthDate?: string | undefined;
160
- gender?: "male" | "female" | "not_disclosed" | undefined;
161
- loyaltyCardNumber?: string | undefined;
162
- address?: {
163
- street?: string | undefined;
164
- city?: string | undefined;
165
- postal?: string | undefined;
166
- country?: string | undefined;
167
- province?: string | undefined;
168
- } | undefined;
92
+ levelName?: string | undefined;
93
+ points?: number | undefined;
169
94
  }, {
170
95
  email: string;
171
- storeCode?: string | undefined;
172
- agreement1?: boolean | undefined;
173
- agreement2?: boolean | undefined;
174
- agreement3?: boolean | undefined;
175
- firstName?: string | undefined;
176
- lastName?: string | undefined;
96
+ active: boolean;
97
+ memberId: string;
177
98
  phone?: string | undefined;
178
- birthDate?: string | undefined;
179
- gender?: "male" | "female" | "not_disclosed" | undefined;
180
- loyaltyCardNumber?: string | undefined;
181
99
  address?: {
182
100
  street?: string | undefined;
183
101
  city?: string | undefined;
@@ -185,73 +103,18 @@ export declare const MemberCreateInputSchema: z.ZodObject<{
185
103
  country?: string | undefined;
186
104
  province?: string | undefined;
187
105
  } | undefined;
188
- }>;
189
- export declare const MemberUpdateInputSchema: z.ZodObject<{
190
- storeCode: z.ZodOptional<z.ZodString>;
191
- memberId: z.ZodString;
192
- firstName: z.ZodOptional<z.ZodString>;
193
- lastName: z.ZodOptional<z.ZodString>;
194
- phone: z.ZodOptional<z.ZodString>;
195
- birthDate: z.ZodOptional<z.ZodString>;
196
- gender: z.ZodOptional<z.ZodEnum<["male", "female", "not_disclosed"]>>;
197
- address: z.ZodOptional<z.ZodObject<{
198
- street: z.ZodOptional<z.ZodString>;
199
- city: z.ZodOptional<z.ZodString>;
200
- postal: z.ZodOptional<z.ZodString>;
201
- country: z.ZodOptional<z.ZodString>;
202
- province: z.ZodOptional<z.ZodString>;
203
- }, "strip", z.ZodTypeAny, {
204
- street?: string | undefined;
205
- city?: string | undefined;
206
- postal?: string | undefined;
207
- country?: string | undefined;
208
- province?: string | undefined;
209
- }, {
210
- street?: string | undefined;
211
- city?: string | undefined;
212
- postal?: string | undefined;
213
- country?: string | undefined;
214
- province?: string | undefined;
215
- }>>;
216
- agreement1: z.ZodOptional<z.ZodBoolean>;
217
- agreement2: z.ZodOptional<z.ZodBoolean>;
218
- agreement3: z.ZodOptional<z.ZodBoolean>;
219
- }, "strip", z.ZodTypeAny, {
220
- memberId: string;
221
- storeCode?: string | undefined;
222
- agreement1?: boolean | undefined;
223
- agreement2?: boolean | undefined;
224
- agreement3?: boolean | undefined;
106
+ loyaltyCardNumber?: string | undefined;
225
107
  firstName?: string | undefined;
226
108
  lastName?: string | undefined;
227
- phone?: string | undefined;
228
109
  birthDate?: string | undefined;
229
110
  gender?: "male" | "female" | "not_disclosed" | undefined;
230
- address?: {
231
- street?: string | undefined;
232
- city?: string | undefined;
233
- postal?: string | undefined;
234
- country?: string | undefined;
235
- province?: string | undefined;
236
- } | undefined;
237
- }, {
238
- memberId: string;
239
- storeCode?: string | undefined;
111
+ createdAt?: string | undefined;
112
+ levelId?: string | undefined;
240
113
  agreement1?: boolean | undefined;
241
114
  agreement2?: boolean | undefined;
242
115
  agreement3?: boolean | undefined;
243
- firstName?: string | undefined;
244
- lastName?: string | undefined;
245
- phone?: string | undefined;
246
- birthDate?: string | undefined;
247
- gender?: "male" | "female" | "not_disclosed" | undefined;
248
- address?: {
249
- street?: string | undefined;
250
- city?: string | undefined;
251
- postal?: string | undefined;
252
- country?: string | undefined;
253
- province?: string | undefined;
254
- } | undefined;
116
+ levelName?: string | undefined;
117
+ points?: number | undefined;
255
118
  }>;
256
119
  export declare const MemberListItemSchema: z.ZodObject<{
257
120
  customerId: z.ZodString;
@@ -266,28 +129,28 @@ export declare const MemberListItemSchema: z.ZodObject<{
266
129
  createdAt: z.ZodOptional<z.ZodString>;
267
130
  registeredAt: z.ZodOptional<z.ZodString>;
268
131
  }, "strip", z.ZodTypeAny, {
269
- active: boolean;
270
132
  email: string;
133
+ active: boolean;
271
134
  customerId: string;
272
- createdAt?: string | undefined;
135
+ phone?: string | undefined;
136
+ loyaltyCardNumber?: string | undefined;
273
137
  firstName?: string | undefined;
274
138
  lastName?: string | undefined;
275
- phone?: string | undefined;
276
139
  birthDate?: string | undefined;
277
140
  gender?: string | undefined;
278
- loyaltyCardNumber?: string | undefined;
141
+ createdAt?: string | undefined;
279
142
  registeredAt?: string | undefined;
280
143
  }, {
281
- active: boolean;
282
144
  email: string;
145
+ active: boolean;
283
146
  customerId: string;
284
- createdAt?: string | undefined;
147
+ phone?: string | undefined;
148
+ loyaltyCardNumber?: string | undefined;
285
149
  firstName?: string | undefined;
286
150
  lastName?: string | undefined;
287
- phone?: string | undefined;
288
151
  birthDate?: string | undefined;
289
152
  gender?: string | undefined;
290
- loyaltyCardNumber?: string | undefined;
153
+ createdAt?: string | undefined;
291
154
  registeredAt?: string | undefined;
292
155
  }>;
293
156
  export declare const MemberListResponseSchema: z.ZodObject<{
@@ -304,28 +167,28 @@ export declare const MemberListResponseSchema: z.ZodObject<{
304
167
  createdAt: z.ZodOptional<z.ZodString>;
305
168
  registeredAt: z.ZodOptional<z.ZodString>;
306
169
  }, "strip", z.ZodTypeAny, {
307
- active: boolean;
308
170
  email: string;
171
+ active: boolean;
309
172
  customerId: string;
310
- createdAt?: string | undefined;
173
+ phone?: string | undefined;
174
+ loyaltyCardNumber?: string | undefined;
311
175
  firstName?: string | undefined;
312
176
  lastName?: string | undefined;
313
- phone?: string | undefined;
314
177
  birthDate?: string | undefined;
315
178
  gender?: string | undefined;
316
- loyaltyCardNumber?: string | undefined;
179
+ createdAt?: string | undefined;
317
180
  registeredAt?: string | undefined;
318
181
  }, {
319
- active: boolean;
320
182
  email: string;
183
+ active: boolean;
321
184
  customerId: string;
322
- createdAt?: string | undefined;
185
+ phone?: string | undefined;
186
+ loyaltyCardNumber?: string | undefined;
323
187
  firstName?: string | undefined;
324
188
  lastName?: string | undefined;
325
- phone?: string | undefined;
326
189
  birthDate?: string | undefined;
327
190
  gender?: string | undefined;
328
- loyaltyCardNumber?: string | undefined;
191
+ createdAt?: string | undefined;
329
192
  registeredAt?: string | undefined;
330
193
  }>, "many">;
331
194
  total: z.ZodObject<{
@@ -343,16 +206,16 @@ export declare const MemberListResponseSchema: z.ZodObject<{
343
206
  }, z.ZodTypeAny, "passthrough">>;
344
207
  }, "strip", z.ZodTypeAny, {
345
208
  items: {
346
- active: boolean;
347
209
  email: string;
210
+ active: boolean;
348
211
  customerId: string;
349
- createdAt?: string | undefined;
212
+ phone?: string | undefined;
213
+ loyaltyCardNumber?: string | undefined;
350
214
  firstName?: string | undefined;
351
215
  lastName?: string | undefined;
352
- phone?: string | undefined;
353
216
  birthDate?: string | undefined;
354
217
  gender?: string | undefined;
355
- loyaltyCardNumber?: string | undefined;
218
+ createdAt?: string | undefined;
356
219
  registeredAt?: string | undefined;
357
220
  }[];
358
221
  total: {
@@ -364,16 +227,16 @@ export declare const MemberListResponseSchema: z.ZodObject<{
364
227
  };
365
228
  }, {
366
229
  items: {
367
- active: boolean;
368
230
  email: string;
231
+ active: boolean;
369
232
  customerId: string;
370
- createdAt?: string | undefined;
233
+ phone?: string | undefined;
234
+ loyaltyCardNumber?: string | undefined;
371
235
  firstName?: string | undefined;
372
236
  lastName?: string | undefined;
373
- phone?: string | undefined;
374
237
  birthDate?: string | undefined;
375
238
  gender?: string | undefined;
376
- loyaltyCardNumber?: string | undefined;
239
+ createdAt?: string | undefined;
377
240
  registeredAt?: string | undefined;
378
241
  }[];
379
242
  total: {
@@ -436,8 +299,6 @@ export declare const MemberTierProgressSchema: z.ZodObject<{
436
299
  export type MemberAddress = z.infer<typeof MemberAddressSchema>;
437
300
  export type MemberAgreement = z.infer<typeof MemberAgreementSchema>;
438
301
  export type Member = z.infer<typeof MemberSchema>;
439
- export type MemberCreateInput = z.infer<typeof MemberCreateInputSchema>;
440
- export type MemberUpdateInput = z.infer<typeof MemberUpdateInputSchema>;
441
302
  export type MemberListItem = z.infer<typeof MemberListItemSchema>;
442
303
  export type MemberListResponse = z.infer<typeof MemberListResponseSchema>;
443
304
  export type MemberTierProgress = z.infer<typeof MemberTierProgressSchema>;
@@ -31,33 +31,6 @@ export const MemberSchema = z.object({
31
31
  levelName: z.string().optional(),
32
32
  points: z.number().optional(),
33
33
  });
34
- export const MemberCreateInputSchema = z.object({
35
- storeCode: z.string().optional(),
36
- email: z.string().email(),
37
- firstName: z.string().optional(),
38
- lastName: z.string().optional(),
39
- phone: z.string().optional(),
40
- birthDate: z.string().optional(),
41
- gender: z.enum(["male", "female", "not_disclosed"]).optional(),
42
- loyaltyCardNumber: z.string().optional(),
43
- agreement1: z.boolean().optional(),
44
- agreement2: z.boolean().optional(),
45
- agreement3: z.boolean().optional(),
46
- address: MemberAddressSchema.optional(),
47
- });
48
- export const MemberUpdateInputSchema = z.object({
49
- storeCode: z.string().optional(),
50
- memberId: z.string(),
51
- firstName: z.string().optional(),
52
- lastName: z.string().optional(),
53
- phone: z.string().optional(),
54
- birthDate: z.string().optional(),
55
- gender: z.enum(["male", "female", "not_disclosed"]).optional(),
56
- address: MemberAddressSchema.optional(),
57
- agreement1: z.boolean().optional(),
58
- agreement2: z.boolean().optional(),
59
- agreement3: z.boolean().optional(),
60
- });
61
34
  // API uses customerId not memberId in responses
62
35
  export const MemberListItemSchema = z.object({
63
36
  customerId: z.string(),
@@ -50,66 +50,6 @@ export declare const PointsBalanceSchema: z.ZodObject<{
50
50
  transferredUnits?: number | undefined;
51
51
  blockedUnits?: number | undefined;
52
52
  }>;
53
- export declare const PointsAddInputSchema: z.ZodObject<{
54
- storeCode: z.ZodOptional<z.ZodString>;
55
- memberId: z.ZodString;
56
- points: z.ZodNumber;
57
- walletCode: z.ZodOptional<z.ZodString>;
58
- comment: z.ZodOptional<z.ZodString>;
59
- expiresInDays: z.ZodOptional<z.ZodNumber>;
60
- lockedUntilDays: z.ZodOptional<z.ZodNumber>;
61
- }, "strip", z.ZodTypeAny, {
62
- memberId: string;
63
- points: number;
64
- storeCode?: string | undefined;
65
- comment?: string | undefined;
66
- walletCode?: string | undefined;
67
- expiresInDays?: number | undefined;
68
- lockedUntilDays?: number | undefined;
69
- }, {
70
- memberId: string;
71
- points: number;
72
- storeCode?: string | undefined;
73
- comment?: string | undefined;
74
- walletCode?: string | undefined;
75
- expiresInDays?: number | undefined;
76
- lockedUntilDays?: number | undefined;
77
- }>;
78
- export declare const PointsSpendInputSchema: z.ZodObject<{
79
- storeCode: z.ZodOptional<z.ZodString>;
80
- memberId: z.ZodString;
81
- points: z.ZodNumber;
82
- walletCode: z.ZodOptional<z.ZodString>;
83
- comment: z.ZodOptional<z.ZodString>;
84
- }, "strip", z.ZodTypeAny, {
85
- memberId: string;
86
- points: number;
87
- storeCode?: string | undefined;
88
- comment?: string | undefined;
89
- walletCode?: string | undefined;
90
- }, {
91
- memberId: string;
92
- points: number;
93
- storeCode?: string | undefined;
94
- comment?: string | undefined;
95
- walletCode?: string | undefined;
96
- }>;
97
- export declare const PointsTransferInputSchema: z.ZodObject<{
98
- storeCode: z.ZodOptional<z.ZodString>;
99
- senderId: z.ZodString;
100
- receiverId: z.ZodString;
101
- points: z.ZodNumber;
102
- }, "strip", z.ZodTypeAny, {
103
- points: number;
104
- senderId: string;
105
- receiverId: string;
106
- storeCode?: string | undefined;
107
- }, {
108
- points: number;
109
- senderId: string;
110
- receiverId: string;
111
- storeCode?: string | undefined;
112
- }>;
113
53
  export declare const PointsHistoryResponseSchema: z.ZodObject<{
114
54
  items: z.ZodArray<z.ZodObject<{
115
55
  transferId: z.ZodString;
@@ -182,7 +122,4 @@ export declare const PointsHistoryResponseSchema: z.ZodObject<{
182
122
  export type PointsTransferType = z.infer<typeof PointsTransferTypeEnum>;
183
123
  export type PointsTransfer = z.infer<typeof PointsTransferSchema>;
184
124
  export type PointsBalance = z.infer<typeof PointsBalanceSchema>;
185
- export type PointsAddInput = z.infer<typeof PointsAddInputSchema>;
186
- export type PointsSpendInput = z.infer<typeof PointsSpendInputSchema>;
187
- export type PointsTransferInput = z.infer<typeof PointsTransferInputSchema>;
188
125
  export type PointsHistoryResponse = z.infer<typeof PointsHistoryResponseSchema>;
@@ -26,28 +26,6 @@ export const PointsBalanceSchema = z.object({
26
26
  transferredUnits: z.number().optional(),
27
27
  blockedUnits: z.number().optional(),
28
28
  });
29
- export const PointsAddInputSchema = z.object({
30
- storeCode: z.string().optional(),
31
- memberId: z.string(),
32
- points: z.number(),
33
- walletCode: z.string().optional(),
34
- comment: z.string().optional(),
35
- expiresInDays: z.number().optional(),
36
- lockedUntilDays: z.number().optional(),
37
- });
38
- export const PointsSpendInputSchema = z.object({
39
- storeCode: z.string().optional(),
40
- memberId: z.string(),
41
- points: z.number(),
42
- walletCode: z.string().optional(),
43
- comment: z.string().optional(),
44
- });
45
- export const PointsTransferInputSchema = z.object({
46
- storeCode: z.string().optional(),
47
- senderId: z.string(),
48
- receiverId: z.string(),
49
- points: z.number(),
50
- });
51
29
  export const PointsHistoryResponseSchema = z.object({
52
30
  items: z.array(PointsTransferSchema),
53
31
  total: TotalSchema,