@mradex77/google-play-scraper 0.1.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.
@@ -0,0 +1,593 @@
1
+ import { ZodError, z } from "zod";
2
+
3
+ //#region src/constants.d.ts
4
+ declare const BASE_URL = "https://play.google.com";
5
+ declare const clusters: {
6
+ readonly new: "new";
7
+ readonly top: "top";
8
+ };
9
+ type Cluster = (typeof clusters)[keyof typeof clusters];
10
+ declare const category: {
11
+ readonly APPLICATION: "APPLICATION";
12
+ readonly ANDROID_WEAR: "ANDROID_WEAR";
13
+ readonly ART_AND_DESIGN: "ART_AND_DESIGN";
14
+ readonly AUTO_AND_VEHICLES: "AUTO_AND_VEHICLES";
15
+ readonly BEAUTY: "BEAUTY";
16
+ readonly BOOKS_AND_REFERENCE: "BOOKS_AND_REFERENCE";
17
+ readonly BUSINESS: "BUSINESS";
18
+ readonly COMICS: "COMICS";
19
+ readonly COMMUNICATION: "COMMUNICATION";
20
+ readonly DATING: "DATING";
21
+ readonly EDUCATION: "EDUCATION";
22
+ readonly ENTERTAINMENT: "ENTERTAINMENT";
23
+ readonly EVENTS: "EVENTS";
24
+ readonly FINANCE: "FINANCE";
25
+ readonly FOOD_AND_DRINK: "FOOD_AND_DRINK";
26
+ readonly HEALTH_AND_FITNESS: "HEALTH_AND_FITNESS";
27
+ readonly HOUSE_AND_HOME: "HOUSE_AND_HOME";
28
+ readonly LIBRARIES_AND_DEMO: "LIBRARIES_AND_DEMO";
29
+ readonly LIFESTYLE: "LIFESTYLE";
30
+ readonly MAPS_AND_NAVIGATION: "MAPS_AND_NAVIGATION";
31
+ readonly MEDICAL: "MEDICAL";
32
+ readonly MUSIC_AND_AUDIO: "MUSIC_AND_AUDIO";
33
+ readonly NEWS_AND_MAGAZINES: "NEWS_AND_MAGAZINES";
34
+ readonly PARENTING: "PARENTING";
35
+ readonly PERSONALIZATION: "PERSONALIZATION";
36
+ readonly PHOTOGRAPHY: "PHOTOGRAPHY";
37
+ readonly PRODUCTIVITY: "PRODUCTIVITY";
38
+ readonly SHOPPING: "SHOPPING";
39
+ readonly SOCIAL: "SOCIAL";
40
+ readonly SPORTS: "SPORTS";
41
+ readonly TOOLS: "TOOLS";
42
+ readonly TRAVEL_AND_LOCAL: "TRAVEL_AND_LOCAL";
43
+ readonly VIDEO_PLAYERS: "VIDEO_PLAYERS";
44
+ readonly WATCH_FACE: "WATCH_FACE";
45
+ readonly WEATHER: "WEATHER";
46
+ readonly GAME: "GAME";
47
+ readonly GAME_ACTION: "GAME_ACTION";
48
+ readonly GAME_ADVENTURE: "GAME_ADVENTURE";
49
+ readonly GAME_ARCADE: "GAME_ARCADE";
50
+ readonly GAME_BOARD: "GAME_BOARD";
51
+ readonly GAME_CARD: "GAME_CARD";
52
+ readonly GAME_CASINO: "GAME_CASINO";
53
+ readonly GAME_CASUAL: "GAME_CASUAL";
54
+ readonly GAME_EDUCATIONAL: "GAME_EDUCATIONAL";
55
+ readonly GAME_MUSIC: "GAME_MUSIC";
56
+ readonly GAME_PUZZLE: "GAME_PUZZLE";
57
+ readonly GAME_RACING: "GAME_RACING";
58
+ readonly GAME_ROLE_PLAYING: "GAME_ROLE_PLAYING";
59
+ readonly GAME_SIMULATION: "GAME_SIMULATION";
60
+ readonly GAME_SPORTS: "GAME_SPORTS";
61
+ readonly GAME_STRATEGY: "GAME_STRATEGY";
62
+ readonly GAME_TRIVIA: "GAME_TRIVIA";
63
+ readonly GAME_WORD: "GAME_WORD";
64
+ readonly FAMILY: "FAMILY";
65
+ readonly FAMILY_ACTION: "FAMILY_ACTION";
66
+ readonly FAMILY_BRAINGAMES: "FAMILY_BRAINGAMES";
67
+ readonly FAMILY_CREATE: "FAMILY_CREATE";
68
+ readonly FAMILY_EDUCATION: "FAMILY_EDUCATION";
69
+ readonly FAMILY_MUSICVIDEO: "FAMILY_MUSICVIDEO";
70
+ readonly FAMILY_PRETEND: "FAMILY_PRETEND";
71
+ };
72
+ type Category = (typeof category)[keyof typeof category];
73
+ declare const collection: {
74
+ readonly TOP_FREE: "TOP_FREE";
75
+ readonly TOP_PAID: "TOP_PAID";
76
+ readonly GROSSING: "GROSSING";
77
+ };
78
+ type Collection = (typeof collection)[keyof typeof collection];
79
+ declare const sort: {
80
+ readonly NEWEST: 2;
81
+ readonly RATING: 3;
82
+ readonly HELPFULNESS: 1;
83
+ };
84
+ type Sort = (typeof sort)[keyof typeof sort];
85
+ declare const age: {
86
+ readonly FIVE_UNDER: "AGE_RANGE1";
87
+ readonly SIX_EIGHT: "AGE_RANGE2";
88
+ readonly NINE_UP: "AGE_RANGE3";
89
+ };
90
+ type Age = (typeof age)[keyof typeof age];
91
+ declare const permission: {
92
+ readonly COMMON: 0;
93
+ readonly OTHER: 1;
94
+ };
95
+ type Permission = (typeof permission)[keyof typeof permission];
96
+ //#endregion
97
+ //#region src/core/errors.d.ts
98
+ declare class GooglePlayError extends Error {
99
+ constructor(message: string);
100
+ }
101
+ declare class ValidationError extends GooglePlayError {
102
+ constructor(message: string);
103
+ static fromZod(error: ZodError, context: string): ValidationError;
104
+ }
105
+ declare class HttpError extends GooglePlayError {
106
+ readonly status: number;
107
+ readonly url: string;
108
+ constructor(message: string, status: number, url: string);
109
+ }
110
+ declare class NotFoundError extends HttpError {
111
+ constructor(message: string, status: number, url: string);
112
+ }
113
+ declare class RateLimitError extends HttpError {
114
+ constructor(message: string, status: number, url: string);
115
+ }
116
+ declare class BlockedError extends GooglePlayError {
117
+ constructor(message: string);
118
+ }
119
+ declare class ParseError extends GooglePlayError {
120
+ constructor(message: string);
121
+ }
122
+ interface SpecFailure {
123
+ field: string;
124
+ paths: readonly (readonly (string | number)[])[];
125
+ message: string;
126
+ }
127
+ declare class SpecError extends ParseError {
128
+ readonly context: string;
129
+ readonly failures: SpecFailure[];
130
+ constructor(context: string, failures: SpecFailure[]);
131
+ private static buildMessage;
132
+ }
133
+ //#endregion
134
+ //#region src/features/app/schema.d.ts
135
+ declare const appSchema: z.ZodObject<{
136
+ title: z.ZodString;
137
+ description: z.ZodString;
138
+ descriptionHTML: z.ZodString;
139
+ summary: z.ZodOptional<z.ZodString>;
140
+ installs: z.ZodOptional<z.ZodString>;
141
+ minInstalls: z.ZodOptional<z.ZodNumber>;
142
+ maxInstalls: z.ZodOptional<z.ZodNumber>;
143
+ score: z.ZodOptional<z.ZodNumber>;
144
+ scoreText: z.ZodOptional<z.ZodString>;
145
+ ratings: z.ZodOptional<z.ZodNumber>;
146
+ reviews: z.ZodOptional<z.ZodNumber>;
147
+ histogram: z.ZodObject<{
148
+ '1': z.ZodNumber;
149
+ '2': z.ZodNumber;
150
+ '3': z.ZodNumber;
151
+ '4': z.ZodNumber;
152
+ '5': z.ZodNumber;
153
+ }, z.core.$strip>;
154
+ price: z.ZodNumber;
155
+ originalPrice: z.ZodOptional<z.ZodNumber>;
156
+ discountEndDate: z.ZodOptional<z.ZodNumber>;
157
+ free: z.ZodBoolean;
158
+ currency: z.ZodOptional<z.ZodString>;
159
+ priceText: z.ZodString;
160
+ available: z.ZodBoolean;
161
+ offersIAP: z.ZodBoolean;
162
+ IAPRange: z.ZodOptional<z.ZodString>;
163
+ androidVersion: z.ZodString;
164
+ androidVersionText: z.ZodString;
165
+ androidMaxVersion: z.ZodString;
166
+ developer: z.ZodString;
167
+ developerId: z.ZodString;
168
+ developerEmail: z.ZodOptional<z.ZodString>;
169
+ developerWebsite: z.ZodOptional<z.ZodString>;
170
+ developerAddress: z.ZodOptional<z.ZodString>;
171
+ developerLegalName: z.ZodOptional<z.ZodString>;
172
+ developerLegalEmail: z.ZodOptional<z.ZodString>;
173
+ developerLegalAddress: z.ZodOptional<z.ZodString>;
174
+ developerLegalPhoneNumber: z.ZodOptional<z.ZodString>;
175
+ privacyPolicy: z.ZodOptional<z.ZodString>;
176
+ developerInternalID: z.ZodString;
177
+ genre: z.ZodString;
178
+ genreId: z.ZodString;
179
+ categories: z.ZodArray<z.ZodObject<{
180
+ name: z.ZodString;
181
+ id: z.ZodNullable<z.ZodString>;
182
+ }, z.core.$strip>>;
183
+ icon: z.ZodString;
184
+ headerImage: z.ZodOptional<z.ZodString>;
185
+ screenshots: z.ZodArray<z.ZodString>;
186
+ video: z.ZodOptional<z.ZodString>;
187
+ videoImage: z.ZodOptional<z.ZodString>;
188
+ previewVideo: z.ZodOptional<z.ZodString>;
189
+ contentRating: z.ZodOptional<z.ZodString>;
190
+ contentRatingDescription: z.ZodOptional<z.ZodString>;
191
+ adSupported: z.ZodBoolean;
192
+ released: z.ZodOptional<z.ZodString>;
193
+ updated: z.ZodNumber;
194
+ version: z.ZodString;
195
+ recentChanges: z.ZodOptional<z.ZodString>;
196
+ comments: z.ZodArray<z.ZodString>;
197
+ preregister: z.ZodBoolean;
198
+ earlyAccessEnabled: z.ZodBoolean;
199
+ isAvailableInPlayPass: z.ZodBoolean;
200
+ appId: z.ZodString;
201
+ url: z.ZodString;
202
+ }, z.core.$strip>;
203
+ type App = z.infer<typeof appSchema>;
204
+ //#endregion
205
+ //#region src/features/app/app.d.ts
206
+ declare const appOptionsSchema: z.ZodObject<{
207
+ lang: z.ZodDefault<z.ZodString>;
208
+ country: z.ZodDefault<z.ZodString>;
209
+ throttle: z.ZodOptional<z.ZodNumber>;
210
+ requestOptions: z.ZodOptional<z.ZodObject<{
211
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
212
+ fetchImpl: z.ZodOptional<z.ZodCustom<typeof fetch, typeof fetch>>;
213
+ timeoutMs: z.ZodOptional<z.ZodNumber>;
214
+ retries: z.ZodOptional<z.ZodNumber>;
215
+ }, z.core.$strip>>;
216
+ appId: z.ZodString;
217
+ }, z.core.$strip>;
218
+ type AppOptions = z.input<typeof appOptionsSchema>;
219
+ declare function app(options: AppOptions): Promise<App>;
220
+ //#endregion
221
+ //#region src/core/appItem.d.ts
222
+ declare const appItemSchema: z.ZodObject<{
223
+ title: z.ZodString;
224
+ appId: z.ZodString;
225
+ url: z.ZodString;
226
+ icon: z.ZodString;
227
+ developer: z.ZodString;
228
+ developerId: z.ZodOptional<z.ZodString>;
229
+ currency: z.ZodOptional<z.ZodString>;
230
+ price: z.ZodNumber;
231
+ free: z.ZodBoolean;
232
+ summary: z.ZodOptional<z.ZodString>;
233
+ scoreText: z.ZodOptional<z.ZodString>;
234
+ score: z.ZodOptional<z.ZodNumber>;
235
+ }, z.core.$strip>;
236
+ type AppItem = z.infer<typeof appItemSchema>;
237
+ //#endregion
238
+ //#region src/features/search/schema.d.ts
239
+ type SearchResult = AppItem;
240
+ //#endregion
241
+ //#region src/features/search/search.d.ts
242
+ declare const searchOptionsSchema: z.ZodObject<{
243
+ lang: z.ZodDefault<z.ZodString>;
244
+ country: z.ZodDefault<z.ZodString>;
245
+ throttle: z.ZodOptional<z.ZodNumber>;
246
+ requestOptions: z.ZodOptional<z.ZodObject<{
247
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
248
+ fetchImpl: z.ZodOptional<z.ZodCustom<typeof fetch, typeof fetch>>;
249
+ timeoutMs: z.ZodOptional<z.ZodNumber>;
250
+ retries: z.ZodOptional<z.ZodNumber>;
251
+ }, z.core.$strip>>;
252
+ term: z.ZodString;
253
+ num: z.ZodDefault<z.ZodNumber>;
254
+ price: z.ZodDefault<z.ZodEnum<{
255
+ all: "all";
256
+ free: "free";
257
+ paid: "paid";
258
+ }>>;
259
+ fullDetail: z.ZodDefault<z.ZodBoolean>;
260
+ }, z.core.$strip>;
261
+ type SearchOptions = z.input<typeof searchOptionsSchema>;
262
+ declare const search: (options: SearchOptions) => Promise<SearchResult[] | App[]>;
263
+ //#endregion
264
+ //#region src/features/suggest/suggest.d.ts
265
+ declare const suggestOptionsSchema: z.ZodObject<{
266
+ lang: z.ZodDefault<z.ZodString>;
267
+ country: z.ZodDefault<z.ZodString>;
268
+ throttle: z.ZodOptional<z.ZodNumber>;
269
+ requestOptions: z.ZodOptional<z.ZodObject<{
270
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
271
+ fetchImpl: z.ZodOptional<z.ZodCustom<typeof fetch, typeof fetch>>;
272
+ timeoutMs: z.ZodOptional<z.ZodNumber>;
273
+ retries: z.ZodOptional<z.ZodNumber>;
274
+ }, z.core.$strip>>;
275
+ term: z.ZodString;
276
+ }, z.core.$strip>;
277
+ type SuggestOptions = z.input<typeof suggestOptionsSchema>;
278
+ declare function suggest(options: SuggestOptions): Promise<string[]>;
279
+ //#endregion
280
+ //#region src/features/list/schema.d.ts
281
+ type ListItem = AppItem;
282
+ //#endregion
283
+ //#region src/features/list/list.d.ts
284
+ declare const listOptionsSchema: z.ZodObject<{
285
+ lang: z.ZodDefault<z.ZodString>;
286
+ country: z.ZodDefault<z.ZodString>;
287
+ throttle: z.ZodOptional<z.ZodNumber>;
288
+ requestOptions: z.ZodOptional<z.ZodObject<{
289
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
290
+ fetchImpl: z.ZodOptional<z.ZodCustom<typeof fetch, typeof fetch>>;
291
+ timeoutMs: z.ZodOptional<z.ZodNumber>;
292
+ retries: z.ZodOptional<z.ZodNumber>;
293
+ }, z.core.$strip>>;
294
+ collection: z.ZodDefault<z.ZodEnum<{
295
+ readonly TOP_FREE: "TOP_FREE";
296
+ readonly TOP_PAID: "TOP_PAID";
297
+ readonly GROSSING: "GROSSING";
298
+ }>>;
299
+ category: z.ZodDefault<z.ZodEnum<{
300
+ readonly APPLICATION: "APPLICATION";
301
+ readonly ANDROID_WEAR: "ANDROID_WEAR";
302
+ readonly ART_AND_DESIGN: "ART_AND_DESIGN";
303
+ readonly AUTO_AND_VEHICLES: "AUTO_AND_VEHICLES";
304
+ readonly BEAUTY: "BEAUTY";
305
+ readonly BOOKS_AND_REFERENCE: "BOOKS_AND_REFERENCE";
306
+ readonly BUSINESS: "BUSINESS";
307
+ readonly COMICS: "COMICS";
308
+ readonly COMMUNICATION: "COMMUNICATION";
309
+ readonly DATING: "DATING";
310
+ readonly EDUCATION: "EDUCATION";
311
+ readonly ENTERTAINMENT: "ENTERTAINMENT";
312
+ readonly EVENTS: "EVENTS";
313
+ readonly FINANCE: "FINANCE";
314
+ readonly FOOD_AND_DRINK: "FOOD_AND_DRINK";
315
+ readonly HEALTH_AND_FITNESS: "HEALTH_AND_FITNESS";
316
+ readonly HOUSE_AND_HOME: "HOUSE_AND_HOME";
317
+ readonly LIBRARIES_AND_DEMO: "LIBRARIES_AND_DEMO";
318
+ readonly LIFESTYLE: "LIFESTYLE";
319
+ readonly MAPS_AND_NAVIGATION: "MAPS_AND_NAVIGATION";
320
+ readonly MEDICAL: "MEDICAL";
321
+ readonly MUSIC_AND_AUDIO: "MUSIC_AND_AUDIO";
322
+ readonly NEWS_AND_MAGAZINES: "NEWS_AND_MAGAZINES";
323
+ readonly PARENTING: "PARENTING";
324
+ readonly PERSONALIZATION: "PERSONALIZATION";
325
+ readonly PHOTOGRAPHY: "PHOTOGRAPHY";
326
+ readonly PRODUCTIVITY: "PRODUCTIVITY";
327
+ readonly SHOPPING: "SHOPPING";
328
+ readonly SOCIAL: "SOCIAL";
329
+ readonly SPORTS: "SPORTS";
330
+ readonly TOOLS: "TOOLS";
331
+ readonly TRAVEL_AND_LOCAL: "TRAVEL_AND_LOCAL";
332
+ readonly VIDEO_PLAYERS: "VIDEO_PLAYERS";
333
+ readonly WATCH_FACE: "WATCH_FACE";
334
+ readonly WEATHER: "WEATHER";
335
+ readonly GAME: "GAME";
336
+ readonly GAME_ACTION: "GAME_ACTION";
337
+ readonly GAME_ADVENTURE: "GAME_ADVENTURE";
338
+ readonly GAME_ARCADE: "GAME_ARCADE";
339
+ readonly GAME_BOARD: "GAME_BOARD";
340
+ readonly GAME_CARD: "GAME_CARD";
341
+ readonly GAME_CASINO: "GAME_CASINO";
342
+ readonly GAME_CASUAL: "GAME_CASUAL";
343
+ readonly GAME_EDUCATIONAL: "GAME_EDUCATIONAL";
344
+ readonly GAME_MUSIC: "GAME_MUSIC";
345
+ readonly GAME_PUZZLE: "GAME_PUZZLE";
346
+ readonly GAME_RACING: "GAME_RACING";
347
+ readonly GAME_ROLE_PLAYING: "GAME_ROLE_PLAYING";
348
+ readonly GAME_SIMULATION: "GAME_SIMULATION";
349
+ readonly GAME_SPORTS: "GAME_SPORTS";
350
+ readonly GAME_STRATEGY: "GAME_STRATEGY";
351
+ readonly GAME_TRIVIA: "GAME_TRIVIA";
352
+ readonly GAME_WORD: "GAME_WORD";
353
+ readonly FAMILY: "FAMILY";
354
+ readonly FAMILY_ACTION: "FAMILY_ACTION";
355
+ readonly FAMILY_BRAINGAMES: "FAMILY_BRAINGAMES";
356
+ readonly FAMILY_CREATE: "FAMILY_CREATE";
357
+ readonly FAMILY_EDUCATION: "FAMILY_EDUCATION";
358
+ readonly FAMILY_MUSICVIDEO: "FAMILY_MUSICVIDEO";
359
+ readonly FAMILY_PRETEND: "FAMILY_PRETEND";
360
+ }>>;
361
+ age: z.ZodOptional<z.ZodEnum<{
362
+ readonly FIVE_UNDER: "AGE_RANGE1";
363
+ readonly SIX_EIGHT: "AGE_RANGE2";
364
+ readonly NINE_UP: "AGE_RANGE3";
365
+ }>>;
366
+ num: z.ZodDefault<z.ZodNumber>;
367
+ fullDetail: z.ZodDefault<z.ZodBoolean>;
368
+ }, z.core.$strip>;
369
+ type ListOptions = z.input<typeof listOptionsSchema>;
370
+ declare const list: (options: ListOptions) => Promise<ListItem[] | App[]>;
371
+ //#endregion
372
+ //#region src/features/categories/categories.d.ts
373
+ declare const categoriesOptionsSchema: z.ZodObject<{
374
+ throttle: z.ZodOptional<z.ZodNumber>;
375
+ requestOptions: z.ZodOptional<z.ZodObject<{
376
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
377
+ fetchImpl: z.ZodOptional<z.ZodCustom<typeof fetch, typeof fetch>>;
378
+ timeoutMs: z.ZodOptional<z.ZodNumber>;
379
+ retries: z.ZodOptional<z.ZodNumber>;
380
+ }, z.core.$strip>>;
381
+ }, z.core.$strip>;
382
+ type CategoriesOptions = z.input<typeof categoriesOptionsSchema>;
383
+ declare function categories(options?: CategoriesOptions): Promise<string[]>;
384
+ //#endregion
385
+ //#region src/features/developer/schema.d.ts
386
+ type DeveloperApp = AppItem;
387
+ //#endregion
388
+ //#region src/features/developer/developer.d.ts
389
+ declare const developerOptionsSchema: z.ZodObject<{
390
+ lang: z.ZodDefault<z.ZodString>;
391
+ country: z.ZodDefault<z.ZodString>;
392
+ throttle: z.ZodOptional<z.ZodNumber>;
393
+ requestOptions: z.ZodOptional<z.ZodObject<{
394
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
395
+ fetchImpl: z.ZodOptional<z.ZodCustom<typeof fetch, typeof fetch>>;
396
+ timeoutMs: z.ZodOptional<z.ZodNumber>;
397
+ retries: z.ZodOptional<z.ZodNumber>;
398
+ }, z.core.$strip>>;
399
+ devId: z.ZodString;
400
+ num: z.ZodDefault<z.ZodNumber>;
401
+ fullDetail: z.ZodDefault<z.ZodBoolean>;
402
+ }, z.core.$strip>;
403
+ type DeveloperOptions = z.input<typeof developerOptionsSchema>;
404
+ declare const developer: (options: DeveloperOptions) => Promise<DeveloperApp[] | App[]>;
405
+ //#endregion
406
+ //#region src/features/similar/schema.d.ts
407
+ type SimilarApp = AppItem;
408
+ //#endregion
409
+ //#region src/features/similar/similar.d.ts
410
+ declare const similarOptionsSchema: z.ZodObject<{
411
+ lang: z.ZodDefault<z.ZodString>;
412
+ country: z.ZodDefault<z.ZodString>;
413
+ throttle: z.ZodOptional<z.ZodNumber>;
414
+ requestOptions: z.ZodOptional<z.ZodObject<{
415
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
416
+ fetchImpl: z.ZodOptional<z.ZodCustom<typeof fetch, typeof fetch>>;
417
+ timeoutMs: z.ZodOptional<z.ZodNumber>;
418
+ retries: z.ZodOptional<z.ZodNumber>;
419
+ }, z.core.$strip>>;
420
+ appId: z.ZodString;
421
+ fullDetail: z.ZodDefault<z.ZodBoolean>;
422
+ }, z.core.$strip>;
423
+ type SimilarOptions = z.input<typeof similarOptionsSchema>;
424
+ declare const similar: (options: SimilarOptions) => Promise<SimilarApp[] | App[]>;
425
+ //#endregion
426
+ //#region src/features/reviews/schema.d.ts
427
+ declare const reviewSchema: z.ZodObject<{
428
+ id: z.ZodString;
429
+ userName: z.ZodString;
430
+ userImage: z.ZodOptional<z.ZodURL>;
431
+ date: z.ZodISODateTime;
432
+ score: z.ZodNumber;
433
+ title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
434
+ text: z.ZodOptional<z.ZodString>;
435
+ replyDate: z.ZodOptional<z.ZodISODateTime>;
436
+ replyText: z.ZodOptional<z.ZodString>;
437
+ version: z.ZodOptional<z.ZodString>;
438
+ thumbsUp: z.ZodOptional<z.ZodNumber>;
439
+ criterias: z.ZodDefault<z.ZodArray<z.ZodObject<{
440
+ criteria: z.ZodString;
441
+ rating: z.ZodNullable<z.ZodNumber>;
442
+ }, z.core.$strip>>>;
443
+ }, z.core.$strip>;
444
+ type Review = z.infer<typeof reviewSchema>;
445
+ declare const reviewsResultSchema: z.ZodObject<{
446
+ data: z.ZodArray<z.ZodObject<{
447
+ id: z.ZodString;
448
+ userName: z.ZodString;
449
+ userImage: z.ZodOptional<z.ZodURL>;
450
+ date: z.ZodISODateTime;
451
+ score: z.ZodNumber;
452
+ title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
453
+ text: z.ZodOptional<z.ZodString>;
454
+ replyDate: z.ZodOptional<z.ZodISODateTime>;
455
+ replyText: z.ZodOptional<z.ZodString>;
456
+ version: z.ZodOptional<z.ZodString>;
457
+ thumbsUp: z.ZodOptional<z.ZodNumber>;
458
+ criterias: z.ZodDefault<z.ZodArray<z.ZodObject<{
459
+ criteria: z.ZodString;
460
+ rating: z.ZodNullable<z.ZodNumber>;
461
+ }, z.core.$strip>>>;
462
+ }, z.core.$strip>>;
463
+ nextPaginationToken: z.ZodNullable<z.ZodString>;
464
+ }, z.core.$strip>;
465
+ type ReviewsResult = z.infer<typeof reviewsResultSchema>;
466
+ //#endregion
467
+ //#region src/features/reviews/reviews.d.ts
468
+ declare const reviewsOptionsSchema: z.ZodObject<{
469
+ lang: z.ZodDefault<z.ZodString>;
470
+ country: z.ZodDefault<z.ZodString>;
471
+ throttle: z.ZodOptional<z.ZodNumber>;
472
+ requestOptions: z.ZodOptional<z.ZodObject<{
473
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
474
+ fetchImpl: z.ZodOptional<z.ZodCustom<typeof fetch, typeof fetch>>;
475
+ timeoutMs: z.ZodOptional<z.ZodNumber>;
476
+ retries: z.ZodOptional<z.ZodNumber>;
477
+ }, z.core.$strip>>;
478
+ appId: z.ZodString;
479
+ sort: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<2>, z.ZodLiteral<3>, z.ZodLiteral<1>]>>;
480
+ num: z.ZodDefault<z.ZodNumber>;
481
+ paginate: z.ZodDefault<z.ZodBoolean>;
482
+ nextPaginationToken: z.ZodOptional<z.ZodString>;
483
+ }, z.core.$strip>;
484
+ type ReviewsOptions = z.input<typeof reviewsOptionsSchema>;
485
+ declare function reviews(options: ReviewsOptions): Promise<ReviewsResult>;
486
+ //#endregion
487
+ //#region src/features/permissions/schema.d.ts
488
+ declare const permissionSchema: z.ZodObject<{
489
+ permission: z.ZodString;
490
+ type: z.ZodUnion<readonly [z.ZodLiteral<0>, z.ZodLiteral<1>]>;
491
+ }, z.core.$strip>;
492
+ type AppPermission = z.infer<typeof permissionSchema>;
493
+ //#endregion
494
+ //#region src/features/permissions/permissions.d.ts
495
+ declare const permissionsOptionsSchema: z.ZodObject<{
496
+ lang: z.ZodDefault<z.ZodString>;
497
+ country: z.ZodDefault<z.ZodString>;
498
+ throttle: z.ZodOptional<z.ZodNumber>;
499
+ requestOptions: z.ZodOptional<z.ZodObject<{
500
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
501
+ fetchImpl: z.ZodOptional<z.ZodCustom<typeof fetch, typeof fetch>>;
502
+ timeoutMs: z.ZodOptional<z.ZodNumber>;
503
+ retries: z.ZodOptional<z.ZodNumber>;
504
+ }, z.core.$strip>>;
505
+ appId: z.ZodString;
506
+ short: z.ZodDefault<z.ZodBoolean>;
507
+ }, z.core.$strip>;
508
+ type PermissionsOptions = z.input<typeof permissionsOptionsSchema>;
509
+ declare function permissions(options: PermissionsOptions): Promise<AppPermission[] | string[]>;
510
+ //#endregion
511
+ //#region src/features/datasafety/schema.d.ts
512
+ declare const dataEntrySchema: z.ZodObject<{
513
+ data: z.ZodString;
514
+ optional: z.ZodBoolean;
515
+ purpose: z.ZodOptional<z.ZodString>;
516
+ type: z.ZodString;
517
+ }, z.core.$strip>;
518
+ declare const securityPracticeSchema: z.ZodObject<{
519
+ practice: z.ZodString;
520
+ description: z.ZodOptional<z.ZodString>;
521
+ }, z.core.$strip>;
522
+ declare const dataSafetySchema: z.ZodObject<{
523
+ sharedData: z.ZodDefault<z.ZodArray<z.ZodObject<{
524
+ data: z.ZodString;
525
+ optional: z.ZodBoolean;
526
+ purpose: z.ZodOptional<z.ZodString>;
527
+ type: z.ZodString;
528
+ }, z.core.$strip>>>;
529
+ collectedData: z.ZodDefault<z.ZodArray<z.ZodObject<{
530
+ data: z.ZodString;
531
+ optional: z.ZodBoolean;
532
+ purpose: z.ZodOptional<z.ZodString>;
533
+ type: z.ZodString;
534
+ }, z.core.$strip>>>;
535
+ securityPractices: z.ZodDefault<z.ZodArray<z.ZodObject<{
536
+ practice: z.ZodString;
537
+ description: z.ZodOptional<z.ZodString>;
538
+ }, z.core.$strip>>>;
539
+ privacyPolicyUrl: z.ZodOptional<z.ZodURL>;
540
+ }, z.core.$strip>;
541
+ type DataEntry = z.infer<typeof dataEntrySchema>;
542
+ type SecurityPractice = z.infer<typeof securityPracticeSchema>;
543
+ type DataSafety = z.infer<typeof dataSafetySchema>;
544
+ //#endregion
545
+ //#region src/features/datasafety/datasafety.d.ts
546
+ declare const dataSafetyOptionsSchema: z.ZodObject<{
547
+ lang: z.ZodDefault<z.ZodString>;
548
+ country: z.ZodDefault<z.ZodString>;
549
+ throttle: z.ZodOptional<z.ZodNumber>;
550
+ requestOptions: z.ZodOptional<z.ZodObject<{
551
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
552
+ fetchImpl: z.ZodOptional<z.ZodCustom<typeof fetch, typeof fetch>>;
553
+ timeoutMs: z.ZodOptional<z.ZodNumber>;
554
+ retries: z.ZodOptional<z.ZodNumber>;
555
+ }, z.core.$strip>>;
556
+ appId: z.ZodString;
557
+ }, z.core.$strip>;
558
+ type DataSafetyOptions = z.input<typeof dataSafetyOptionsSchema>;
559
+ declare function datasafety(options: DataSafetyOptions): Promise<DataSafety>;
560
+ //#endregion
561
+ //#region src/features/memoized/memoized.d.ts
562
+ interface MemoizedOptions {
563
+ maxAgeMs?: number;
564
+ max?: number;
565
+ }
566
+ declare function memoized(options?: MemoizedOptions): GooglePlayClient;
567
+ //#endregion
568
+ //#region src/index.d.ts
569
+ interface GooglePlayClient {
570
+ BASE_URL: typeof BASE_URL;
571
+ age: typeof age;
572
+ category: typeof category;
573
+ clusters: typeof clusters;
574
+ collection: typeof collection;
575
+ permission: typeof permission;
576
+ sort: typeof sort;
577
+ app: typeof app;
578
+ search: typeof search;
579
+ suggest: typeof suggest;
580
+ list: typeof list;
581
+ categories: typeof categories;
582
+ developer: typeof developer;
583
+ similar: typeof similar;
584
+ reviews: typeof reviews;
585
+ permissions: typeof permissions;
586
+ datasafety: typeof datasafety;
587
+ }
588
+ declare const gplay: GooglePlayClient & {
589
+ memoized: typeof memoized;
590
+ };
591
+ //#endregion
592
+ export { type Age, type App, type AppOptions, type AppPermission, BASE_URL, BlockedError, type CategoriesOptions, type Category, type Cluster, type Collection, type DataEntry, type DataSafety, type DataSafetyOptions, type DeveloperApp, type DeveloperOptions, GooglePlayClient, GooglePlayError, HttpError, type ListItem, type ListOptions, type MemoizedOptions, NotFoundError, ParseError, type Permission, type PermissionsOptions, RateLimitError, type Review, type ReviewsOptions, type ReviewsResult, type SearchOptions, type SearchResult, type SecurityPractice, type SimilarApp, type SimilarOptions, type Sort, SpecError, type SpecFailure, type SuggestOptions, ValidationError, age, app, categories, category, clusters, collection, datasafety, gplay as default, developer, list, memoized, permission, permissions, reviews, search, similar, sort, suggest };
593
+ //# sourceMappingURL=index.d.ts.map