@rooguys/sdk 0.1.0 → 1.0.0
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 +478 -113
- package/dist/__tests__/utils/mockClient.d.ts +65 -3
- package/dist/__tests__/utils/mockClient.js +144 -5
- package/dist/errors.d.ts +123 -0
- package/dist/errors.js +163 -0
- package/dist/http-client.d.ts +167 -0
- package/dist/http-client.js +250 -0
- package/dist/index.d.ts +160 -10
- package/dist/index.js +585 -146
- package/dist/types.d.ts +372 -50
- package/dist/types.js +21 -0
- package/package.json +1 -1
- package/src/__tests__/property/request-construction.property.test.ts +142 -91
- package/src/__tests__/property/response-parsing.property.test.ts +118 -67
- package/src/__tests__/property/sdk-modules.property.test.ts +450 -0
- package/src/__tests__/unit/aha.test.ts +61 -50
- package/src/__tests__/unit/badges.test.ts +27 -33
- package/src/__tests__/unit/config.test.ts +94 -126
- package/src/__tests__/unit/errors.test.ts +106 -150
- package/src/__tests__/unit/events.test.ts +119 -144
- package/src/__tests__/unit/leaderboards.test.ts +173 -40
- package/src/__tests__/unit/levels.test.ts +25 -33
- package/src/__tests__/unit/questionnaires.test.ts +33 -42
- package/src/__tests__/unit/users.test.ts +214 -99
- package/src/__tests__/utils/mockClient.ts +193 -6
- package/src/errors.ts +255 -0
- package/src/http-client.ts +433 -0
- package/src/index.ts +742 -150
- package/src/types.ts +429 -51
package/dist/types.d.ts
CHANGED
|
@@ -1,27 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rooguys Node.js SDK Type Definitions
|
|
3
|
+
*/
|
|
4
|
+
export { RooguysError, ValidationError, AuthenticationError, ForbiddenError, NotFoundError, ConflictError, RateLimitError, ServerError, FieldError, RooguysErrorOptions, ValidationErrorOptions, RateLimitErrorOptions, mapStatusToError, } from './errors';
|
|
5
|
+
export { RateLimitInfo, CacheMetadata, Pagination, ApiResponse, RequestConfig, HttpClientOptions, HttpClient, extractRateLimitInfo, extractRequestId, parseResponseBody, } from './http-client';
|
|
6
|
+
/**
|
|
7
|
+
* SDK initialization options
|
|
8
|
+
*/
|
|
1
9
|
export interface RooguysOptions {
|
|
10
|
+
/** Base URL for API (default: https://api.rooguys.com/v1) */
|
|
2
11
|
baseUrl?: string;
|
|
12
|
+
/** Request timeout in ms (default: 10000) */
|
|
3
13
|
timeout?: number;
|
|
14
|
+
/** Callback when rate limit is 80% consumed */
|
|
15
|
+
onRateLimitWarning?: ((rateLimit: import('./http-client').RateLimitInfo) => void) | null;
|
|
16
|
+
/** Enable auto-retry for rate-limited requests (default: false) */
|
|
17
|
+
autoRetry?: boolean;
|
|
18
|
+
/** Maximum retry attempts for rate limits (default: 3) */
|
|
19
|
+
maxRetries?: number;
|
|
4
20
|
}
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
id: string;
|
|
17
|
-
name: string;
|
|
18
|
-
level_number: number;
|
|
19
|
-
points_required: number;
|
|
20
|
-
points_needed: number;
|
|
21
|
-
} | null;
|
|
22
|
-
metrics: Record<string, any>;
|
|
23
|
-
badges: UserBadge[];
|
|
21
|
+
/**
|
|
22
|
+
* Level information
|
|
23
|
+
*/
|
|
24
|
+
export interface Level {
|
|
25
|
+
id: string;
|
|
26
|
+
name: string;
|
|
27
|
+
level_number: number;
|
|
28
|
+
points_required: number;
|
|
29
|
+
description?: string | null;
|
|
30
|
+
icon_url?: string | null;
|
|
31
|
+
created_at?: string;
|
|
24
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* Next level information with points needed
|
|
35
|
+
*/
|
|
36
|
+
export interface NextLevel extends Level {
|
|
37
|
+
points_needed: number;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* User badge information
|
|
41
|
+
*/
|
|
25
42
|
export interface UserBadge {
|
|
26
43
|
id: string;
|
|
27
44
|
name: string;
|
|
@@ -29,103 +46,380 @@ export interface UserBadge {
|
|
|
29
46
|
icon_url: string;
|
|
30
47
|
earned_at: string;
|
|
31
48
|
}
|
|
49
|
+
/**
|
|
50
|
+
* Activity summary for user profile
|
|
51
|
+
*/
|
|
52
|
+
export interface ActivitySummary {
|
|
53
|
+
lastEventAt: Date | null;
|
|
54
|
+
eventCount: number;
|
|
55
|
+
daysActive: number;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Streak information for user profile
|
|
59
|
+
*/
|
|
60
|
+
export interface StreakInfo {
|
|
61
|
+
currentStreak: number;
|
|
62
|
+
longestStreak: number;
|
|
63
|
+
lastActivityAt: Date | null;
|
|
64
|
+
streakStartedAt: Date | null;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Inventory summary for user profile
|
|
68
|
+
*/
|
|
69
|
+
export interface InventorySummary {
|
|
70
|
+
itemCount: number;
|
|
71
|
+
activeEffects: string[];
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* User profile data
|
|
75
|
+
*/
|
|
76
|
+
export interface UserProfile {
|
|
77
|
+
user_id: string;
|
|
78
|
+
display_name?: string;
|
|
79
|
+
email?: string;
|
|
80
|
+
first_name?: string;
|
|
81
|
+
last_name?: string;
|
|
82
|
+
points: number;
|
|
83
|
+
persona: string | null;
|
|
84
|
+
persona_assigned_at?: string | null;
|
|
85
|
+
level: Level | null;
|
|
86
|
+
next_level: NextLevel | null;
|
|
87
|
+
metrics: Record<string, number>;
|
|
88
|
+
badges: UserBadge[];
|
|
89
|
+
metadata?: Record<string, unknown>;
|
|
90
|
+
/** Activity summary (parsed from activity_summary) */
|
|
91
|
+
activitySummary?: ActivitySummary;
|
|
92
|
+
/** Streak information (parsed from streak) */
|
|
93
|
+
streak?: StreakInfo;
|
|
94
|
+
/** Inventory summary (parsed from inventory) */
|
|
95
|
+
inventory?: InventorySummary;
|
|
96
|
+
created_at?: string;
|
|
97
|
+
updated_at?: string;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* User rank information
|
|
101
|
+
*/
|
|
32
102
|
export interface UserRank {
|
|
33
103
|
user_id: string;
|
|
34
104
|
rank: number;
|
|
35
105
|
points: number;
|
|
36
106
|
total_users: number;
|
|
107
|
+
percentile?: number | null;
|
|
37
108
|
}
|
|
109
|
+
/**
|
|
110
|
+
* Leaderboard entry
|
|
111
|
+
*/
|
|
38
112
|
export interface LeaderboardEntry {
|
|
39
113
|
rank: number;
|
|
40
114
|
user_id: string;
|
|
41
115
|
points: number;
|
|
42
|
-
|
|
116
|
+
level_name?: string;
|
|
117
|
+
level_number?: number;
|
|
118
|
+
level?: {
|
|
43
119
|
id: string;
|
|
44
120
|
name: string;
|
|
45
121
|
level_number: number;
|
|
46
122
|
} | null;
|
|
123
|
+
percentile?: number | null;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Leaderboard statistics
|
|
127
|
+
*/
|
|
128
|
+
export interface LeaderboardStats {
|
|
129
|
+
total_participants: number;
|
|
130
|
+
average_score: number;
|
|
131
|
+
highest_score: number;
|
|
132
|
+
lowest_score: number;
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Leaderboard metadata
|
|
136
|
+
*/
|
|
137
|
+
export interface LeaderboardMetadata {
|
|
138
|
+
id?: string;
|
|
139
|
+
name?: string;
|
|
140
|
+
description?: string;
|
|
141
|
+
type?: string;
|
|
142
|
+
timeframe?: string;
|
|
143
|
+
is_active?: boolean;
|
|
144
|
+
created_at?: string;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Cache metadata from leaderboard responses
|
|
148
|
+
*/
|
|
149
|
+
export interface LeaderboardCacheMetadata {
|
|
150
|
+
cachedAt: Date | null;
|
|
151
|
+
ttl: number;
|
|
47
152
|
}
|
|
153
|
+
/**
|
|
154
|
+
* Leaderboard result
|
|
155
|
+
*/
|
|
48
156
|
export interface LeaderboardResult {
|
|
49
|
-
timeframe
|
|
157
|
+
timeframe?: string;
|
|
50
158
|
page: number;
|
|
51
159
|
limit: number;
|
|
52
160
|
total: number;
|
|
53
161
|
rankings: LeaderboardEntry[];
|
|
162
|
+
stats?: LeaderboardStats;
|
|
163
|
+
metadata?: LeaderboardMetadata;
|
|
164
|
+
cacheMetadata?: LeaderboardCacheMetadata;
|
|
54
165
|
}
|
|
166
|
+
/**
|
|
167
|
+
* Leaderboard filter options
|
|
168
|
+
*/
|
|
169
|
+
export interface LeaderboardFilterOptions {
|
|
170
|
+
/** Page number */
|
|
171
|
+
page?: number;
|
|
172
|
+
/** Items per page */
|
|
173
|
+
limit?: number;
|
|
174
|
+
/** Search query */
|
|
175
|
+
search?: string;
|
|
176
|
+
/** Timeframe (all-time, weekly, monthly) */
|
|
177
|
+
timeframe?: 'all-time' | 'weekly' | 'monthly';
|
|
178
|
+
/** Filter by persona */
|
|
179
|
+
persona?: string;
|
|
180
|
+
/** Minimum level filter */
|
|
181
|
+
minLevel?: number;
|
|
182
|
+
/** Maximum level filter */
|
|
183
|
+
maxLevel?: number;
|
|
184
|
+
/** Start date filter (ISO 8601) */
|
|
185
|
+
startDate?: Date | string;
|
|
186
|
+
/** End date filter (ISO 8601) */
|
|
187
|
+
endDate?: Date | string;
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Around user response
|
|
191
|
+
*/
|
|
192
|
+
export interface AroundUserResponse extends LeaderboardResult {
|
|
193
|
+
user_rank?: UserRank;
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Track event response
|
|
197
|
+
*/
|
|
55
198
|
export interface TrackEventResponse {
|
|
56
199
|
status: string;
|
|
57
200
|
message: string;
|
|
58
201
|
profile?: UserProfile;
|
|
59
202
|
}
|
|
203
|
+
/**
|
|
204
|
+
* Track options
|
|
205
|
+
*/
|
|
206
|
+
export interface TrackOptions {
|
|
207
|
+
/** Include user profile in response */
|
|
208
|
+
includeProfile?: boolean;
|
|
209
|
+
/** Custom timestamp for historical events (max 7 days old) */
|
|
210
|
+
timestamp?: Date | string;
|
|
211
|
+
/** Idempotency key to prevent duplicate processing */
|
|
212
|
+
idempotencyKey?: string;
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Batch event item
|
|
216
|
+
*/
|
|
217
|
+
export interface BatchEvent {
|
|
218
|
+
/** Event name */
|
|
219
|
+
eventName: string;
|
|
220
|
+
/** User ID */
|
|
221
|
+
userId: string;
|
|
222
|
+
/** Event properties */
|
|
223
|
+
properties?: Record<string, unknown>;
|
|
224
|
+
/** Custom timestamp for historical events */
|
|
225
|
+
timestamp?: Date | string;
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* Batch event result
|
|
229
|
+
*/
|
|
230
|
+
export interface BatchEventResult {
|
|
231
|
+
index: number;
|
|
232
|
+
status: 'queued' | 'error';
|
|
233
|
+
error?: string;
|
|
234
|
+
}
|
|
235
|
+
/**
|
|
236
|
+
* Batch track response
|
|
237
|
+
*/
|
|
238
|
+
export interface BatchTrackResponse {
|
|
239
|
+
results: BatchEventResult[];
|
|
240
|
+
requestId?: string;
|
|
241
|
+
}
|
|
242
|
+
/**
|
|
243
|
+
* Batch options
|
|
244
|
+
*/
|
|
245
|
+
export interface BatchOptions {
|
|
246
|
+
/** Idempotency key for the batch */
|
|
247
|
+
idempotencyKey?: string;
|
|
248
|
+
}
|
|
249
|
+
/**
|
|
250
|
+
* Create user data
|
|
251
|
+
*/
|
|
252
|
+
export interface CreateUserData {
|
|
253
|
+
/** Unique user ID */
|
|
254
|
+
userId: string;
|
|
255
|
+
/** Display name */
|
|
256
|
+
displayName?: string;
|
|
257
|
+
/** Email address */
|
|
258
|
+
email?: string;
|
|
259
|
+
/** First name */
|
|
260
|
+
firstName?: string;
|
|
261
|
+
/** Last name */
|
|
262
|
+
lastName?: string;
|
|
263
|
+
/** Custom metadata */
|
|
264
|
+
metadata?: Record<string, unknown>;
|
|
265
|
+
}
|
|
266
|
+
/**
|
|
267
|
+
* Update user data (partial update supported)
|
|
268
|
+
*/
|
|
269
|
+
export interface UpdateUserData {
|
|
270
|
+
/** Display name */
|
|
271
|
+
displayName?: string;
|
|
272
|
+
/** Email address */
|
|
273
|
+
email?: string;
|
|
274
|
+
/** First name */
|
|
275
|
+
firstName?: string;
|
|
276
|
+
/** Last name */
|
|
277
|
+
lastName?: string;
|
|
278
|
+
/** Custom metadata */
|
|
279
|
+
metadata?: Record<string, unknown>;
|
|
280
|
+
}
|
|
281
|
+
/**
|
|
282
|
+
* Batch create user result
|
|
283
|
+
*/
|
|
284
|
+
export interface BatchCreateUserResult {
|
|
285
|
+
index: number;
|
|
286
|
+
status: 'created' | 'error';
|
|
287
|
+
user_id?: string;
|
|
288
|
+
error?: string;
|
|
289
|
+
}
|
|
290
|
+
/**
|
|
291
|
+
* Batch create response
|
|
292
|
+
*/
|
|
293
|
+
export interface BatchCreateResponse {
|
|
294
|
+
results: BatchCreateUserResult[];
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* Get user options
|
|
298
|
+
*/
|
|
299
|
+
export interface GetUserOptions {
|
|
300
|
+
/** Fields to include in response */
|
|
301
|
+
fields?: string[];
|
|
302
|
+
}
|
|
303
|
+
/**
|
|
304
|
+
* Search options
|
|
305
|
+
*/
|
|
306
|
+
export interface SearchOptions {
|
|
307
|
+
/** Page number */
|
|
308
|
+
page?: number;
|
|
309
|
+
/** Items per page */
|
|
310
|
+
limit?: number;
|
|
311
|
+
/** Fields to include in response */
|
|
312
|
+
fields?: string[];
|
|
313
|
+
}
|
|
314
|
+
/**
|
|
315
|
+
* Paginated response
|
|
316
|
+
*/
|
|
317
|
+
export interface PaginatedResponse<T> {
|
|
318
|
+
page: number;
|
|
319
|
+
limit: number;
|
|
320
|
+
total: number;
|
|
321
|
+
totalPages?: number;
|
|
322
|
+
users?: T[];
|
|
323
|
+
items?: T[];
|
|
324
|
+
}
|
|
325
|
+
/**
|
|
326
|
+
* Answer submission
|
|
327
|
+
*/
|
|
60
328
|
export interface AnswerSubmission {
|
|
61
329
|
question_id: string;
|
|
62
330
|
answer_option_id: string;
|
|
63
331
|
}
|
|
332
|
+
/**
|
|
333
|
+
* Aha declaration result
|
|
334
|
+
*/
|
|
64
335
|
export interface AhaDeclarationResult {
|
|
65
336
|
success: boolean;
|
|
66
337
|
message: string;
|
|
67
338
|
}
|
|
339
|
+
/**
|
|
340
|
+
* Aha score history
|
|
341
|
+
*/
|
|
342
|
+
export interface AhaScoreHistory {
|
|
343
|
+
initial: number | null;
|
|
344
|
+
initial_date: string | null;
|
|
345
|
+
previous: number | null;
|
|
346
|
+
}
|
|
347
|
+
/**
|
|
348
|
+
* Aha score data
|
|
349
|
+
*/
|
|
350
|
+
export interface AhaScoreData {
|
|
351
|
+
user_id: string;
|
|
352
|
+
current_score: number;
|
|
353
|
+
declarative_score: number | null;
|
|
354
|
+
inferred_score: number | null;
|
|
355
|
+
status: 'not_started' | 'progressing' | 'activated';
|
|
356
|
+
history: AhaScoreHistory;
|
|
357
|
+
}
|
|
358
|
+
/**
|
|
359
|
+
* Aha score result
|
|
360
|
+
*/
|
|
68
361
|
export interface AhaScoreResult {
|
|
69
362
|
success: boolean;
|
|
70
|
-
data:
|
|
71
|
-
user_id: string;
|
|
72
|
-
current_score: number;
|
|
73
|
-
declarative_score: number | null;
|
|
74
|
-
inferred_score: number | null;
|
|
75
|
-
status: 'not_started' | 'progressing' | 'activated';
|
|
76
|
-
history: {
|
|
77
|
-
initial: number | null;
|
|
78
|
-
initial_date: string | null;
|
|
79
|
-
previous: number | null;
|
|
80
|
-
};
|
|
81
|
-
};
|
|
363
|
+
data: AhaScoreData;
|
|
82
364
|
}
|
|
365
|
+
/**
|
|
366
|
+
* Badge definition
|
|
367
|
+
*/
|
|
83
368
|
export interface Badge {
|
|
84
369
|
id: string;
|
|
85
370
|
name: string;
|
|
86
371
|
description: string;
|
|
87
372
|
icon_url: string;
|
|
88
|
-
points_required
|
|
373
|
+
points_required?: number;
|
|
89
374
|
is_active: boolean;
|
|
90
|
-
unlock_criteria
|
|
375
|
+
unlock_criteria?: string | Record<string, unknown>;
|
|
91
376
|
created_at: string;
|
|
92
377
|
}
|
|
378
|
+
/**
|
|
379
|
+
* Badge list result
|
|
380
|
+
*/
|
|
93
381
|
export interface BadgeListResult {
|
|
94
382
|
badges: Badge[];
|
|
95
383
|
pagination: {
|
|
96
384
|
page: number;
|
|
97
385
|
limit: number;
|
|
98
386
|
total: number;
|
|
387
|
+
totalPages?: number;
|
|
99
388
|
};
|
|
100
389
|
}
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
level_number: number;
|
|
105
|
-
points_required: number;
|
|
106
|
-
description: string | null;
|
|
107
|
-
icon_url: string | null;
|
|
108
|
-
created_at: string;
|
|
109
|
-
}
|
|
390
|
+
/**
|
|
391
|
+
* Level list result
|
|
392
|
+
*/
|
|
110
393
|
export interface LevelListResult {
|
|
111
394
|
levels: Level[];
|
|
112
395
|
pagination: {
|
|
113
396
|
page: number;
|
|
114
397
|
limit: number;
|
|
115
398
|
total: number;
|
|
399
|
+
totalPages?: number;
|
|
116
400
|
};
|
|
117
401
|
}
|
|
402
|
+
/**
|
|
403
|
+
* Question option
|
|
404
|
+
*/
|
|
118
405
|
export interface QuestionOption {
|
|
119
406
|
id: string;
|
|
120
407
|
text: string;
|
|
121
|
-
persona_weight
|
|
408
|
+
persona_weight?: Record<string, number>;
|
|
409
|
+
persona_weights?: Record<string, number>;
|
|
122
410
|
}
|
|
411
|
+
/**
|
|
412
|
+
* Question
|
|
413
|
+
*/
|
|
123
414
|
export interface Question {
|
|
124
415
|
id: string;
|
|
125
416
|
text: string;
|
|
126
417
|
order: number;
|
|
127
418
|
answer_options: QuestionOption[];
|
|
128
419
|
}
|
|
420
|
+
/**
|
|
421
|
+
* Questionnaire
|
|
422
|
+
*/
|
|
129
423
|
export interface Questionnaire {
|
|
130
424
|
id: string;
|
|
131
425
|
slug: string;
|
|
@@ -135,14 +429,42 @@ export interface Questionnaire {
|
|
|
135
429
|
questions: Question[];
|
|
136
430
|
created_at: string;
|
|
137
431
|
}
|
|
432
|
+
/**
|
|
433
|
+
* Leaderboard definition
|
|
434
|
+
*/
|
|
435
|
+
export interface LeaderboardDefinition {
|
|
436
|
+
id: string;
|
|
437
|
+
name: string;
|
|
438
|
+
description: string;
|
|
439
|
+
type?: string;
|
|
440
|
+
timeframe?: string;
|
|
441
|
+
is_active?: boolean;
|
|
442
|
+
created_at: string;
|
|
443
|
+
}
|
|
444
|
+
/**
|
|
445
|
+
* Leaderboard list result
|
|
446
|
+
*/
|
|
138
447
|
export interface LeaderboardListResult {
|
|
139
448
|
page: number;
|
|
140
449
|
limit: number;
|
|
141
450
|
total: number;
|
|
142
|
-
leaderboards:
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
451
|
+
leaderboards: LeaderboardDefinition[];
|
|
452
|
+
}
|
|
453
|
+
/**
|
|
454
|
+
* Health check response
|
|
455
|
+
*/
|
|
456
|
+
export interface HealthCheckResponse {
|
|
457
|
+
status: string;
|
|
458
|
+
version?: string;
|
|
459
|
+
timestamp?: string;
|
|
460
|
+
services?: Record<string, {
|
|
461
|
+
status: string;
|
|
462
|
+
latency?: number;
|
|
147
463
|
}>;
|
|
464
|
+
queue_depth?: number;
|
|
465
|
+
processing_lag?: number;
|
|
148
466
|
}
|
|
467
|
+
/**
|
|
468
|
+
* Timeframe type
|
|
469
|
+
*/
|
|
470
|
+
export type Timeframe = 'all-time' | 'weekly' | 'monthly';
|
package/dist/types.js
CHANGED
|
@@ -1,2 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Rooguys Node.js SDK Type Definitions
|
|
4
|
+
*/
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.parseResponseBody = exports.extractRequestId = exports.extractRateLimitInfo = exports.HttpClient = exports.mapStatusToError = exports.ServerError = exports.RateLimitError = exports.ConflictError = exports.NotFoundError = exports.ForbiddenError = exports.AuthenticationError = exports.ValidationError = exports.RooguysError = void 0;
|
|
7
|
+
// Re-export error types
|
|
8
|
+
var errors_1 = require("./errors");
|
|
9
|
+
Object.defineProperty(exports, "RooguysError", { enumerable: true, get: function () { return errors_1.RooguysError; } });
|
|
10
|
+
Object.defineProperty(exports, "ValidationError", { enumerable: true, get: function () { return errors_1.ValidationError; } });
|
|
11
|
+
Object.defineProperty(exports, "AuthenticationError", { enumerable: true, get: function () { return errors_1.AuthenticationError; } });
|
|
12
|
+
Object.defineProperty(exports, "ForbiddenError", { enumerable: true, get: function () { return errors_1.ForbiddenError; } });
|
|
13
|
+
Object.defineProperty(exports, "NotFoundError", { enumerable: true, get: function () { return errors_1.NotFoundError; } });
|
|
14
|
+
Object.defineProperty(exports, "ConflictError", { enumerable: true, get: function () { return errors_1.ConflictError; } });
|
|
15
|
+
Object.defineProperty(exports, "RateLimitError", { enumerable: true, get: function () { return errors_1.RateLimitError; } });
|
|
16
|
+
Object.defineProperty(exports, "ServerError", { enumerable: true, get: function () { return errors_1.ServerError; } });
|
|
17
|
+
Object.defineProperty(exports, "mapStatusToError", { enumerable: true, get: function () { return errors_1.mapStatusToError; } });
|
|
18
|
+
// Re-export HTTP client types
|
|
19
|
+
var http_client_1 = require("./http-client");
|
|
20
|
+
Object.defineProperty(exports, "HttpClient", { enumerable: true, get: function () { return http_client_1.HttpClient; } });
|
|
21
|
+
Object.defineProperty(exports, "extractRateLimitInfo", { enumerable: true, get: function () { return http_client_1.extractRateLimitInfo; } });
|
|
22
|
+
Object.defineProperty(exports, "extractRequestId", { enumerable: true, get: function () { return http_client_1.extractRequestId; } });
|
|
23
|
+
Object.defineProperty(exports, "parseResponseBody", { enumerable: true, get: function () { return http_client_1.parseResponseBody; } });
|