@raba7ni/raba7ni 1.0.2 → 1.0.4
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.
- package/README.md +393 -19
- package/dist/index.d.ts +342 -97
- package/dist/index.d.ts.map +1 -1
- package/dist/index.esm.js +214 -91
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +213 -103
- package/dist/index.js.map +1 -1
- package/dist/sdk.d.ts +89 -6
- package/dist/sdk.d.ts.map +1 -1
- package/dist/types.d.ts +250 -47
- package/dist/types.d.ts.map +1 -1
- package/dist/webhooks.d.ts +7 -12
- package/dist/webhooks.d.ts.map +1 -1
- package/package.json +13 -6
package/dist/index.d.ts
CHANGED
|
@@ -26,6 +26,7 @@ interface ApiResponse<T = any> {
|
|
|
26
26
|
success: boolean;
|
|
27
27
|
data?: T;
|
|
28
28
|
message?: string;
|
|
29
|
+
error?: string;
|
|
29
30
|
}
|
|
30
31
|
/**
|
|
31
32
|
* API error response structure
|
|
@@ -34,6 +35,8 @@ interface ApiError {
|
|
|
34
35
|
error: string;
|
|
35
36
|
message: string;
|
|
36
37
|
errors?: Record<string, string[]>;
|
|
38
|
+
remaining_attempts?: number;
|
|
39
|
+
retry_after_minutes?: number;
|
|
37
40
|
}
|
|
38
41
|
/**
|
|
39
42
|
* Rate limit information from response headers
|
|
@@ -45,13 +48,23 @@ interface RateLimitInfo {
|
|
|
45
48
|
dailyRemaining: number;
|
|
46
49
|
resetTime?: string;
|
|
47
50
|
}
|
|
51
|
+
/**
|
|
52
|
+
* Member information
|
|
53
|
+
*/
|
|
54
|
+
interface Member {
|
|
55
|
+
id: number;
|
|
56
|
+
name: string;
|
|
57
|
+
email?: string;
|
|
58
|
+
phone?: string;
|
|
59
|
+
created_at: string;
|
|
60
|
+
}
|
|
48
61
|
/**
|
|
49
62
|
* Member validation request
|
|
50
63
|
*/
|
|
51
64
|
interface ValidateMemberRequest {
|
|
52
65
|
card_id: number;
|
|
53
66
|
phone_number: string;
|
|
54
|
-
include_member_data?: boolean
|
|
67
|
+
include_member_data?: boolean;
|
|
55
68
|
}
|
|
56
69
|
/**
|
|
57
70
|
* Member validation response
|
|
@@ -70,12 +83,38 @@ interface MemberDetailsRequest {
|
|
|
70
83
|
card_id: number;
|
|
71
84
|
phone_number: string;
|
|
72
85
|
}
|
|
86
|
+
/**
|
|
87
|
+
* Card relationship information
|
|
88
|
+
*/
|
|
89
|
+
interface CardRelationship {
|
|
90
|
+
card_id: number;
|
|
91
|
+
points: number;
|
|
92
|
+
joined_at: string | null;
|
|
93
|
+
last_updated: string | null;
|
|
94
|
+
}
|
|
73
95
|
/**
|
|
74
96
|
* Member details response
|
|
75
97
|
*/
|
|
76
98
|
interface MemberDetailsResponse {
|
|
77
99
|
member: Member;
|
|
78
100
|
card_relationship: CardRelationship;
|
|
101
|
+
validated_at: string;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Request OTP request
|
|
105
|
+
*/
|
|
106
|
+
interface RequestOTPRequest {
|
|
107
|
+
email: string;
|
|
108
|
+
card_id: number;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Request OTP response
|
|
112
|
+
*/
|
|
113
|
+
interface RequestOTPResponse {
|
|
114
|
+
expires_at?: string;
|
|
115
|
+
expires_in_minutes?: number;
|
|
116
|
+
member_exists?: boolean;
|
|
117
|
+
message?: string;
|
|
79
118
|
}
|
|
80
119
|
/**
|
|
81
120
|
* Find or create member request
|
|
@@ -85,6 +124,7 @@ interface FindOrCreateMemberRequest {
|
|
|
85
124
|
name: string;
|
|
86
125
|
email: string;
|
|
87
126
|
phone_number: string;
|
|
127
|
+
verification_code?: string;
|
|
88
128
|
create_order?: boolean;
|
|
89
129
|
order?: Order;
|
|
90
130
|
}
|
|
@@ -94,7 +134,6 @@ interface FindOrCreateMemberRequest {
|
|
|
94
134
|
interface Order {
|
|
95
135
|
award_points?: boolean;
|
|
96
136
|
total_amount: number;
|
|
97
|
-
delivery_cost?: number;
|
|
98
137
|
items?: OrderItem[];
|
|
99
138
|
}
|
|
100
139
|
/**
|
|
@@ -105,6 +144,27 @@ interface OrderItem {
|
|
|
105
144
|
amount: number;
|
|
106
145
|
metadata?: Record<string, any>;
|
|
107
146
|
}
|
|
147
|
+
/**
|
|
148
|
+
* Order response
|
|
149
|
+
*/
|
|
150
|
+
interface OrderResponse {
|
|
151
|
+
id: number;
|
|
152
|
+
total_amount: number;
|
|
153
|
+
items?: OrderItem[];
|
|
154
|
+
points_awarded: boolean;
|
|
155
|
+
status: string;
|
|
156
|
+
created_at: string;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Transaction information
|
|
160
|
+
*/
|
|
161
|
+
interface Transaction {
|
|
162
|
+
id: number;
|
|
163
|
+
points?: number;
|
|
164
|
+
stamps?: number;
|
|
165
|
+
event: string;
|
|
166
|
+
created_at: string;
|
|
167
|
+
}
|
|
108
168
|
/**
|
|
109
169
|
* Find or create member response
|
|
110
170
|
*/
|
|
@@ -117,62 +177,199 @@ interface FindOrCreateMemberResponse {
|
|
|
117
177
|
transaction?: Transaction;
|
|
118
178
|
}
|
|
119
179
|
/**
|
|
120
|
-
*
|
|
180
|
+
* Card information (summary for list)
|
|
121
181
|
*/
|
|
122
|
-
interface
|
|
182
|
+
interface CardSummary {
|
|
123
183
|
id: number;
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
184
|
+
unique_identifier: string;
|
|
185
|
+
name: string;
|
|
186
|
+
head: string;
|
|
187
|
+
is_active: boolean;
|
|
188
|
+
initial_bonus_points?: number;
|
|
189
|
+
points_per_currency?: number;
|
|
190
|
+
currency_unit_amount?: number;
|
|
191
|
+
min_points_per_purchase?: number;
|
|
192
|
+
max_points_per_purchase?: number;
|
|
193
|
+
points_expiration_months?: number;
|
|
194
|
+
club_id: number;
|
|
130
195
|
}
|
|
131
196
|
/**
|
|
132
|
-
* Card information
|
|
197
|
+
* Card information (detailed)
|
|
133
198
|
*/
|
|
134
199
|
interface Card {
|
|
135
200
|
id: number;
|
|
201
|
+
unique_identifier: string;
|
|
136
202
|
name: string;
|
|
203
|
+
head?: string;
|
|
137
204
|
description?: string;
|
|
138
205
|
club_id: number;
|
|
139
|
-
club_name
|
|
140
|
-
reward_type
|
|
206
|
+
club_name?: string;
|
|
207
|
+
reward_type?: 'points' | 'stamps';
|
|
141
208
|
is_active: boolean;
|
|
142
|
-
|
|
209
|
+
initial_bonus_points?: number;
|
|
210
|
+
points_per_currency?: number;
|
|
211
|
+
currency_unit_amount?: number;
|
|
212
|
+
created_at?: string;
|
|
143
213
|
}
|
|
144
214
|
/**
|
|
145
|
-
*
|
|
215
|
+
* List cards response
|
|
146
216
|
*/
|
|
147
|
-
interface
|
|
217
|
+
interface ListCardsResponse {
|
|
218
|
+
cards: CardSummary[];
|
|
219
|
+
total: number;
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Reward information
|
|
223
|
+
*/
|
|
224
|
+
interface Reward {
|
|
148
225
|
id: number;
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
226
|
+
name: string;
|
|
227
|
+
title?: Record<string, string>;
|
|
228
|
+
description?: Record<string, string>;
|
|
229
|
+
points?: number;
|
|
230
|
+
stamps_required?: number;
|
|
231
|
+
reward_type?: string;
|
|
232
|
+
is_active: boolean;
|
|
233
|
+
active_from?: string;
|
|
234
|
+
expiration_date?: string;
|
|
235
|
+
images?: any;
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* List rewards response
|
|
239
|
+
*/
|
|
240
|
+
interface ListRewardsResponse {
|
|
241
|
+
card_id: number;
|
|
242
|
+
rewards: Reward[];
|
|
243
|
+
total: number;
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* Claim request status
|
|
247
|
+
*/
|
|
248
|
+
type ClaimRequestStatus = 'pending' | 'approved' | 'rejected' | 'expired';
|
|
249
|
+
/**
|
|
250
|
+
* Claim request
|
|
251
|
+
*/
|
|
252
|
+
interface ClaimRequest {
|
|
253
|
+
id: number;
|
|
254
|
+
code?: string;
|
|
255
|
+
unique_code?: string;
|
|
256
|
+
status: ClaimRequestStatus;
|
|
257
|
+
member?: Member;
|
|
258
|
+
reward?: Reward;
|
|
259
|
+
card_id?: number;
|
|
260
|
+
member_note?: string;
|
|
261
|
+
staff_note?: string;
|
|
262
|
+
expires_at?: string;
|
|
154
263
|
created_at: string;
|
|
264
|
+
processed_at?: string;
|
|
155
265
|
}
|
|
156
266
|
/**
|
|
157
|
-
*
|
|
267
|
+
* List claim requests response
|
|
158
268
|
*/
|
|
159
|
-
interface
|
|
269
|
+
interface ListClaimRequestsResponse {
|
|
270
|
+
claim_requests: ClaimRequest[];
|
|
271
|
+
total: number;
|
|
272
|
+
}
|
|
273
|
+
/**
|
|
274
|
+
* Request claim OTP request
|
|
275
|
+
*/
|
|
276
|
+
interface RequestClaimOTPRequest {
|
|
277
|
+
member_email: string;
|
|
160
278
|
card_id: number;
|
|
161
|
-
|
|
162
|
-
stamps: number;
|
|
163
|
-
joined_at: string;
|
|
164
|
-
last_updated: string;
|
|
279
|
+
reward_id?: number;
|
|
165
280
|
}
|
|
166
281
|
/**
|
|
167
|
-
*
|
|
282
|
+
* Create claim request
|
|
168
283
|
*/
|
|
169
|
-
interface
|
|
284
|
+
interface CreateClaimRequestRequest {
|
|
285
|
+
member_email: string;
|
|
286
|
+
card_id: number;
|
|
287
|
+
reward_id: number;
|
|
288
|
+
verification_code: string;
|
|
289
|
+
member_note?: string;
|
|
290
|
+
fulfillment_details?: Record<string, any>;
|
|
291
|
+
}
|
|
292
|
+
/**
|
|
293
|
+
* Approve/Reject claim request
|
|
294
|
+
*/
|
|
295
|
+
interface ProcessClaimRequestRequest {
|
|
296
|
+
staff_note?: string;
|
|
297
|
+
}
|
|
298
|
+
/**
|
|
299
|
+
* Referral stats response
|
|
300
|
+
*/
|
|
301
|
+
interface ReferralStatsResponse {
|
|
302
|
+
total_referrals: number;
|
|
303
|
+
successful_referrals: number;
|
|
304
|
+
pending_referrals: number;
|
|
305
|
+
top_referrers: Referrer[];
|
|
306
|
+
}
|
|
307
|
+
/**
|
|
308
|
+
* Referrer info
|
|
309
|
+
*/
|
|
310
|
+
interface Referrer {
|
|
311
|
+
member_id: number;
|
|
312
|
+
member_name: string;
|
|
313
|
+
referral_count: number;
|
|
314
|
+
successful_count: number;
|
|
315
|
+
}
|
|
316
|
+
/**
|
|
317
|
+
* List referrers response
|
|
318
|
+
*/
|
|
319
|
+
interface ListReferrersResponse {
|
|
320
|
+
referrers: Referrer[];
|
|
321
|
+
total: number;
|
|
322
|
+
}
|
|
323
|
+
/**
|
|
324
|
+
* Referral info
|
|
325
|
+
*/
|
|
326
|
+
interface Referral {
|
|
170
327
|
id: number;
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
328
|
+
referrer_id: number;
|
|
329
|
+
referee_id?: number;
|
|
330
|
+
referee_email?: string;
|
|
331
|
+
status: string;
|
|
332
|
+
bonus_awarded?: number;
|
|
174
333
|
created_at: string;
|
|
175
334
|
}
|
|
335
|
+
/**
|
|
336
|
+
* List referrals response
|
|
337
|
+
*/
|
|
338
|
+
interface ListReferralsResponse {
|
|
339
|
+
referrals: Referral[];
|
|
340
|
+
total: number;
|
|
341
|
+
}
|
|
342
|
+
/**
|
|
343
|
+
* Validate referral code request
|
|
344
|
+
*/
|
|
345
|
+
interface ValidateReferralCodeRequest {
|
|
346
|
+
referral_code: string;
|
|
347
|
+
card_id: number;
|
|
348
|
+
}
|
|
349
|
+
/**
|
|
350
|
+
* Validate referral code response
|
|
351
|
+
*/
|
|
352
|
+
interface ValidateReferralCodeResponse {
|
|
353
|
+
is_valid: boolean;
|
|
354
|
+
referrer?: {
|
|
355
|
+
id: number;
|
|
356
|
+
name: string;
|
|
357
|
+
};
|
|
358
|
+
}
|
|
359
|
+
/**
|
|
360
|
+
* Apply referral request
|
|
361
|
+
*/
|
|
362
|
+
interface ApplyReferralRequest {
|
|
363
|
+
referral_code: string;
|
|
364
|
+
card_id: number;
|
|
365
|
+
referee_email: string;
|
|
366
|
+
}
|
|
367
|
+
/**
|
|
368
|
+
* Apply referral response
|
|
369
|
+
*/
|
|
370
|
+
interface ApplyReferralResponse {
|
|
371
|
+
referral: Referral;
|
|
372
|
+
}
|
|
176
373
|
/**
|
|
177
374
|
* Available API scope
|
|
178
375
|
*/
|
|
@@ -181,6 +378,16 @@ interface Scope {
|
|
|
181
378
|
name: string;
|
|
182
379
|
description: string;
|
|
183
380
|
}
|
|
381
|
+
/**
|
|
382
|
+
* Scopes response
|
|
383
|
+
*/
|
|
384
|
+
interface ScopesResponse {
|
|
385
|
+
scopes: string[];
|
|
386
|
+
application: {
|
|
387
|
+
id: string;
|
|
388
|
+
name: string;
|
|
389
|
+
};
|
|
390
|
+
}
|
|
184
391
|
/**
|
|
185
392
|
* Available webhook event
|
|
186
393
|
*/
|
|
@@ -214,31 +421,27 @@ interface MemberLeftWebhookData {
|
|
|
214
421
|
card: Card;
|
|
215
422
|
}
|
|
216
423
|
/**
|
|
217
|
-
*
|
|
424
|
+
* Claim request created webhook data
|
|
218
425
|
*/
|
|
219
|
-
interface
|
|
426
|
+
interface ClaimRequestCreatedWebhookData {
|
|
427
|
+
claim_request: ClaimRequest;
|
|
220
428
|
member: Member;
|
|
221
429
|
card: Card;
|
|
222
|
-
|
|
430
|
+
reward: Reward;
|
|
223
431
|
}
|
|
224
432
|
/**
|
|
225
|
-
*
|
|
433
|
+
* Claim request processed webhook data
|
|
226
434
|
*/
|
|
227
|
-
interface
|
|
435
|
+
interface ClaimRequestProcessedWebhookData {
|
|
436
|
+
claim_request: ClaimRequest;
|
|
228
437
|
member: Member;
|
|
229
438
|
card: Card;
|
|
230
|
-
|
|
439
|
+
reward: Reward;
|
|
440
|
+
status: 'approved' | 'rejected';
|
|
441
|
+
processed_at: string;
|
|
231
442
|
}
|
|
232
443
|
/**
|
|
233
|
-
*
|
|
234
|
-
*/
|
|
235
|
-
interface TransactionCreatedWebhookData {
|
|
236
|
-
transaction: Transaction;
|
|
237
|
-
member: Member;
|
|
238
|
-
card: Card;
|
|
239
|
-
}
|
|
240
|
-
/**
|
|
241
|
-
* SDK initialization error
|
|
444
|
+
* SDK error base class
|
|
242
445
|
*/
|
|
243
446
|
declare class Raba7niError extends Error {
|
|
244
447
|
code?: string | undefined;
|
|
@@ -276,10 +479,24 @@ declare class NetworkError extends Raba7niError {
|
|
|
276
479
|
|
|
277
480
|
/**
|
|
278
481
|
* Main Raba7ni SDK class
|
|
482
|
+
*
|
|
483
|
+
* Provides methods for all Developer API endpoints.
|
|
279
484
|
*/
|
|
280
485
|
declare class Raba7niSDK {
|
|
281
486
|
private client;
|
|
282
487
|
constructor(config: Raba7niConfig);
|
|
488
|
+
/**
|
|
489
|
+
* Test API connection and get available scopes
|
|
490
|
+
*/
|
|
491
|
+
testConnection(): Promise<ScopesResponse>;
|
|
492
|
+
/**
|
|
493
|
+
* Alias for testConnection - Get available API scopes
|
|
494
|
+
*/
|
|
495
|
+
getScopes(): Promise<ScopesResponse>;
|
|
496
|
+
/**
|
|
497
|
+
* Get available webhook events
|
|
498
|
+
*/
|
|
499
|
+
getWebhookEvents(): Promise<WebhookEvent[]>;
|
|
283
500
|
/**
|
|
284
501
|
* Validate if a phone number is a member of a specific card
|
|
285
502
|
*/
|
|
@@ -290,23 +507,92 @@ declare class Raba7niSDK {
|
|
|
290
507
|
* Get detailed information about a member for a specific card
|
|
291
508
|
*/
|
|
292
509
|
getMemberDetails(cardId: number | string, phoneNumber: string): Promise<MemberDetailsResponse>;
|
|
510
|
+
/**
|
|
511
|
+
* Request OTP for new member registration
|
|
512
|
+
*
|
|
513
|
+
* @param email - Email address to send OTP to
|
|
514
|
+
* @param cardId - The loyalty card ID
|
|
515
|
+
* @returns OTP info or member_exists flag if already registered
|
|
516
|
+
*/
|
|
517
|
+
requestMemberOTP(email: string, cardId: number | string): Promise<RequestOTPResponse>;
|
|
293
518
|
/**
|
|
294
519
|
* Find an existing member by email/phone, or create a new account.
|
|
295
520
|
* Optionally create an online order and/or award points.
|
|
296
521
|
*/
|
|
297
522
|
findOrCreateMember(request: FindOrCreateMemberRequest): Promise<FindOrCreateMemberResponse>;
|
|
298
523
|
/**
|
|
299
|
-
* Get
|
|
524
|
+
* Get all loyalty cards available for your API key
|
|
525
|
+
*/
|
|
526
|
+
listCards(): Promise<ListCardsResponse>;
|
|
527
|
+
/**
|
|
528
|
+
* Get details about a specific loyalty card
|
|
300
529
|
*/
|
|
301
530
|
getCardInfo(cardId: number | string): Promise<Card>;
|
|
302
531
|
/**
|
|
303
|
-
* Get available
|
|
532
|
+
* Get all rewards available for a specific card
|
|
304
533
|
*/
|
|
305
|
-
|
|
534
|
+
listCardRewards(cardId: number | string): Promise<ListRewardsResponse>;
|
|
306
535
|
/**
|
|
307
|
-
* Get
|
|
536
|
+
* Get all claim requests for a card
|
|
537
|
+
*
|
|
538
|
+
* @param cardId - The loyalty card ID
|
|
539
|
+
* @param status - Optional filter by status
|
|
308
540
|
*/
|
|
309
|
-
|
|
541
|
+
listClaimRequests(cardId: number | string, status?: ClaimRequestStatus): Promise<ListClaimRequestsResponse>;
|
|
542
|
+
/**
|
|
543
|
+
* Request OTP for claiming a reward
|
|
544
|
+
*
|
|
545
|
+
* @param memberEmail - Member's email address
|
|
546
|
+
* @param cardId - The loyalty card ID
|
|
547
|
+
* @param rewardId - Optional specific reward ID
|
|
548
|
+
*/
|
|
549
|
+
requestClaimOTP(memberEmail: string, cardId: number | string, rewardId?: number): Promise<RequestOTPResponse>;
|
|
550
|
+
/**
|
|
551
|
+
* Create a new claim request for a reward
|
|
552
|
+
*
|
|
553
|
+
* @param request - Claim request details including OTP verification
|
|
554
|
+
*/
|
|
555
|
+
createClaimRequest(request: CreateClaimRequestRequest): Promise<{
|
|
556
|
+
claim_request: ClaimRequest;
|
|
557
|
+
}>;
|
|
558
|
+
/**
|
|
559
|
+
* Get details of a specific claim request
|
|
560
|
+
*/
|
|
561
|
+
getClaimRequest(requestId: number): Promise<{
|
|
562
|
+
claim_request: ClaimRequest;
|
|
563
|
+
}>;
|
|
564
|
+
/**
|
|
565
|
+
* Approve a pending claim request
|
|
566
|
+
*/
|
|
567
|
+
approveClaimRequest(requestId: number, staffNote?: string): Promise<{
|
|
568
|
+
claim_request: ClaimRequest;
|
|
569
|
+
}>;
|
|
570
|
+
/**
|
|
571
|
+
* Reject a pending claim request
|
|
572
|
+
*/
|
|
573
|
+
rejectClaimRequest(requestId: number, staffNote?: string): Promise<{
|
|
574
|
+
claim_request: ClaimRequest;
|
|
575
|
+
}>;
|
|
576
|
+
/**
|
|
577
|
+
* Get referral statistics for a card
|
|
578
|
+
*/
|
|
579
|
+
getReferralStats(cardId: number | string): Promise<ReferralStatsResponse>;
|
|
580
|
+
/**
|
|
581
|
+
* Get list of top referrers for a card
|
|
582
|
+
*/
|
|
583
|
+
listReferrers(cardId: number | string): Promise<ListReferrersResponse>;
|
|
584
|
+
/**
|
|
585
|
+
* Get all referrals made by a specific member
|
|
586
|
+
*/
|
|
587
|
+
listReferrerReferrals(cardId: number | string, memberId: number): Promise<ListReferralsResponse>;
|
|
588
|
+
/**
|
|
589
|
+
* Validate a referral code
|
|
590
|
+
*/
|
|
591
|
+
validateReferralCode(referralCode: string, cardId: number | string): Promise<ValidateReferralCodeResponse>;
|
|
592
|
+
/**
|
|
593
|
+
* Apply a referral code to a new member
|
|
594
|
+
*/
|
|
595
|
+
applyReferral(referralCode: string, cardId: number | string, refereeEmail: string): Promise<ApplyReferralResponse>;
|
|
310
596
|
/**
|
|
311
597
|
* Get current rate limit information
|
|
312
598
|
*/
|
|
@@ -386,26 +672,6 @@ declare function verifyWebhookSignature(payload: string, signature: string, secr
|
|
|
386
672
|
* Parse webhook payload with type safety
|
|
387
673
|
*/
|
|
388
674
|
declare function parseWebhookPayload<T = any>(payload: string): WebhookPayload<T>;
|
|
389
|
-
/**
|
|
390
|
-
* Type guard for member joined webhook
|
|
391
|
-
*/
|
|
392
|
-
declare function isMemberJoinedWebhook(payload: WebhookPayload): payload is WebhookPayload<MemberJoinedWebhookData>;
|
|
393
|
-
/**
|
|
394
|
-
* Type guard for member left webhook
|
|
395
|
-
*/
|
|
396
|
-
declare function isMemberLeftWebhook(payload: WebhookPayload): payload is WebhookPayload<MemberLeftWebhookData>;
|
|
397
|
-
/**
|
|
398
|
-
* Type guard for points earned webhook
|
|
399
|
-
*/
|
|
400
|
-
declare function isPointsEarnedWebhook(payload: WebhookPayload): payload is WebhookPayload<PointsEarnedWebhookData>;
|
|
401
|
-
/**
|
|
402
|
-
* Type guard for points redeemed webhook
|
|
403
|
-
*/
|
|
404
|
-
declare function isPointsRedeemedWebhook(payload: WebhookPayload): payload is WebhookPayload<PointsRedeemedWebhookData>;
|
|
405
|
-
/**
|
|
406
|
-
* Type guard for transaction created webhook
|
|
407
|
-
*/
|
|
408
|
-
declare function isTransactionCreatedWebhook(payload: WebhookPayload): payload is WebhookPayload<TransactionCreatedWebhookData>;
|
|
409
675
|
/**
|
|
410
676
|
* Webhook handler class
|
|
411
677
|
*/
|
|
@@ -430,9 +696,8 @@ declare class WebhookHandler {
|
|
|
430
696
|
handleWebhook(payload: string, signature: string, handlers: {
|
|
431
697
|
onMemberJoined?: (data: MemberJoinedWebhookData) => Promise<void> | void;
|
|
432
698
|
onMemberLeft?: (data: MemberLeftWebhookData) => Promise<void> | void;
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
onTransactionCreated?: (data: TransactionCreatedWebhookData) => Promise<void> | void;
|
|
699
|
+
onClaimRequestCreated?: (data: ClaimRequestCreatedWebhookData) => Promise<void> | void;
|
|
700
|
+
onClaimRequestProcessed?: (data: ClaimRequestProcessedWebhookData) => Promise<void> | void;
|
|
436
701
|
onUnknownEvent?: (event: string, data: any) => Promise<void> | void;
|
|
437
702
|
}): Promise<void>;
|
|
438
703
|
/**
|
|
@@ -472,26 +737,6 @@ declare function sanitizeString(input: string, maxLength?: number): string;
|
|
|
472
737
|
* Validate name field
|
|
473
738
|
*/
|
|
474
739
|
declare function validateName(name: string): string;
|
|
475
|
-
/**
|
|
476
|
-
* Deep clone object
|
|
477
|
-
*/
|
|
478
|
-
declare function deepClone<T>(obj: T): T;
|
|
479
|
-
/**
|
|
480
|
-
* Retry delay calculation with exponential backoff
|
|
481
|
-
*/
|
|
482
|
-
declare function calculateRetryDelay(attempt: number, baseDelay?: number): number;
|
|
483
|
-
/**
|
|
484
|
-
* Generate random string for request tracking
|
|
485
|
-
*/
|
|
486
|
-
declare function generateRequestId(): string;
|
|
487
|
-
/**
|
|
488
|
-
* Check if a value is a valid ISO date string
|
|
489
|
-
*/
|
|
490
|
-
declare function isValidISODate(dateString: string): boolean;
|
|
491
|
-
/**
|
|
492
|
-
* Format date to ISO string
|
|
493
|
-
*/
|
|
494
|
-
declare function formatDate(date: Date | string): string;
|
|
495
740
|
|
|
496
|
-
export { AuthenticationError, NetworkError, Raba7niClient, Raba7niError, Raba7niSDK, RateLimitError, ValidationError, WebhookHandler,
|
|
497
|
-
export type { ApiError, ApiResponse, Card, CardRelationship, FindOrCreateMemberRequest, FindOrCreateMemberResponse, Member, MemberDetailsRequest, MemberDetailsResponse, MemberJoinedWebhookData, MemberLeftWebhookData, Order, OrderItem, OrderResponse,
|
|
741
|
+
export { AuthenticationError, NetworkError, Raba7niClient, Raba7niError, Raba7niSDK, RateLimitError, ValidationError, WebhookHandler, normalizePhoneNumber, parseWebhookPayload, sanitizeString, validateAmount, validateCardId, validateEmail, validateName, verifyWebhookSignature };
|
|
742
|
+
export type { ApiError, ApiResponse, ApplyReferralRequest, ApplyReferralResponse, Card, CardRelationship, CardSummary, ClaimRequest, ClaimRequestCreatedWebhookData, ClaimRequestProcessedWebhookData, ClaimRequestStatus, CreateClaimRequestRequest, FindOrCreateMemberRequest, FindOrCreateMemberResponse, ListCardsResponse, ListClaimRequestsResponse, ListReferralsResponse, ListReferrersResponse, ListRewardsResponse, Member, MemberDetailsRequest, MemberDetailsResponse, MemberJoinedWebhookData, MemberLeftWebhookData, Order, OrderItem, OrderResponse, ProcessClaimRequestRequest, Raba7niConfig, RateLimitInfo, Referral, ReferralStatsResponse, Referrer, RequestClaimOTPRequest, RequestOTPRequest, RequestOTPResponse, Reward, Scope, ScopesResponse, Transaction, ValidateMemberRequest, ValidateMemberResponse, ValidateReferralCodeRequest, ValidateReferralCodeResponse, WebhookEvent, WebhookPayload };
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAGnC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGzC,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAGnC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGzC,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGzF,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,cAAc,EACd,cAAc,EACd,YAAY,EACZ,cAAc,EACf,MAAM,SAAS,CAAC;AAGjB,YAAY,EAEV,aAAa,EACb,WAAW,EACX,QAAQ,EACR,aAAa,EAGb,MAAM,EACN,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,yBAAyB,EACzB,0BAA0B,EAC1B,KAAK,EACL,SAAS,EACT,aAAa,EACb,WAAW,EAGX,IAAI,EACJ,WAAW,EACX,iBAAiB,EACjB,MAAM,EACN,mBAAmB,EAGnB,YAAY,EACZ,kBAAkB,EAClB,yBAAyB,EACzB,sBAAsB,EACtB,yBAAyB,EACzB,0BAA0B,EAG1B,qBAAqB,EACrB,QAAQ,EACR,qBAAqB,EACrB,QAAQ,EACR,qBAAqB,EACrB,2BAA2B,EAC3B,4BAA4B,EAC5B,oBAAoB,EACpB,qBAAqB,EAGrB,KAAK,EACL,cAAc,EACd,YAAY,EACZ,cAAc,EAGd,uBAAuB,EACvB,qBAAqB,EACrB,8BAA8B,EAC9B,gCAAgC,EACjC,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,YAAY,EACb,MAAM,SAAS,CAAC"}
|