pabal-web-mcp 1.2.3 → 1.2.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/dist/index.d.ts CHANGED
@@ -1,799 +1,7 @@
1
- import { androidpublisher_v3 } from '@googleapis/androidpublisher';
2
- import { AppStoreVersionAttributes, AppStoreVersionLocalizationAttributes, AppInfoLocalizationAttributes, ScreenshotDisplayType } from 'appstore-connect-sdk/openapi';
3
-
4
- /**
5
- * Unified locale system for ASO (App Store Optimization)
6
- * Consolidates App Store Connect and Google Play Console locale codes
7
- */
8
- /**
9
- * Unified locale codes used across the application
10
- * These codes are used in /locales directory structure
11
- */
12
- declare const UNIFIED_LOCALES: readonly ["af", "am", "ar", "az-AZ", "be", "bg-BG", "bn-BD", "ca-ES", "cs-CZ", "da-DK", "de-DE", "el-GR", "en-AU", "en-CA", "en-GB", "en-IN", "en-SG", "en-US", "en-ZA", "es-419", "es-ES", "es-US", "et-EE", "eu-ES", "fa", "fa-AE", "fa-AF", "fa-IR", "fi-FI", "fil", "fr-CA", "fr-FR", "gl-ES", "gu", "he-IL", "hi-IN", "hr-HR", "hu-HU", "hy-AM", "id-ID", "is-IS", "it-IT", "ja-JP", "ka-GE", "kk", "km-KH", "kn-IN", "ko-KR", "ky-KG", "lo-LA", "lt-LT", "lv-LV", "mk-MK", "ml-IN", "mn-MN", "mr-IN", "ms", "ms-MY", "my-MM", "ne-NP", "nl-NL", "no-NO", "pa", "pl-PL", "pt-BR", "pt-PT", "rm", "ro-RO", "ru-RU", "si-LK", "sk-SK", "sl-SI", "sq", "sr-RS", "sv-SE", "sw", "ta-IN", "te-IN", "th-TH", "tr-TR", "uk-UA", "ur", "vi-VN", "zh-HK", "zh-Hans", "zh-Hant", "zu"];
13
- type UnifiedLocale = (typeof UNIFIED_LOCALES)[number];
14
- /**
15
- * Default locale (for fallback)
16
- */
17
- declare const DEFAULT_LOCALE: UnifiedLocale;
18
- /**
19
- * Unified locale to App Store Connect locale mapping
20
- * Maps our unified locale codes to App Store Connect API codes
21
- */
22
- declare const UNIFIED_TO_APP_STORE: Record<UnifiedLocale, string | null>;
23
- /**
24
- * Unified locale to Google Play Console locale mapping
25
- * Maps our unified locale codes to Google Play Console API codes
26
- */
27
- declare const UNIFIED_TO_GOOGLE_PLAY: Record<UnifiedLocale, string | null>;
28
- /**
29
- * App Store Connect locale to unified locale mapping
30
- * Reverse mapping for converting App Store codes to our unified system
31
- */
32
- declare const APP_STORE_TO_UNIFIED: Record<string, UnifiedLocale>;
33
- /**
34
- * Google Play Console locale to unified locale mapping
35
- * Reverse mapping for converting Google Play codes to our unified system
36
- */
37
- declare const GOOGLE_PLAY_TO_UNIFIED: Record<string, UnifiedLocale>;
38
- /**
39
- * Locales supported by App Store Connect
40
- */
41
- declare const APP_STORE_SUPPORTED_LOCALES: ("af" | "am" | "ar" | "az-AZ" | "be" | "bg-BG" | "bn-BD" | "ca-ES" | "cs-CZ" | "da-DK" | "de-DE" | "el-GR" | "en-AU" | "en-CA" | "en-GB" | "en-IN" | "en-SG" | "en-US" | "en-ZA" | "es-419" | "es-ES" | "es-US" | "et-EE" | "eu-ES" | "fa" | "fa-AE" | "fa-AF" | "fa-IR" | "fi-FI" | "fil" | "fr-CA" | "fr-FR" | "gl-ES" | "gu" | "he-IL" | "hi-IN" | "hr-HR" | "hu-HU" | "hy-AM" | "id-ID" | "is-IS" | "it-IT" | "ja-JP" | "ka-GE" | "kk" | "km-KH" | "kn-IN" | "ko-KR" | "ky-KG" | "lo-LA" | "lt-LT" | "lv-LV" | "mk-MK" | "ml-IN" | "mn-MN" | "mr-IN" | "ms" | "ms-MY" | "my-MM" | "ne-NP" | "nl-NL" | "no-NO" | "pa" | "pl-PL" | "pt-BR" | "pt-PT" | "rm" | "ro-RO" | "ru-RU" | "si-LK" | "sk-SK" | "sl-SI" | "sq" | "sr-RS" | "sv-SE" | "sw" | "ta-IN" | "te-IN" | "th-TH" | "tr-TR" | "uk-UA" | "ur" | "vi-VN" | "zh-HK" | "zh-Hans" | "zh-Hant" | "zu")[];
42
- /**
43
- * Locales supported by Google Play Console
44
- */
45
- declare const GOOGLE_PLAY_SUPPORTED_LOCALES: ("af" | "am" | "ar" | "az-AZ" | "be" | "bg-BG" | "bn-BD" | "ca-ES" | "cs-CZ" | "da-DK" | "de-DE" | "el-GR" | "en-AU" | "en-CA" | "en-GB" | "en-IN" | "en-SG" | "en-US" | "en-ZA" | "es-419" | "es-ES" | "es-US" | "et-EE" | "eu-ES" | "fa" | "fa-AE" | "fa-AF" | "fa-IR" | "fi-FI" | "fil" | "fr-CA" | "fr-FR" | "gl-ES" | "gu" | "he-IL" | "hi-IN" | "hr-HR" | "hu-HU" | "hy-AM" | "id-ID" | "is-IS" | "it-IT" | "ja-JP" | "ka-GE" | "kk" | "km-KH" | "kn-IN" | "ko-KR" | "ky-KG" | "lo-LA" | "lt-LT" | "lv-LV" | "mk-MK" | "ml-IN" | "mn-MN" | "mr-IN" | "ms" | "ms-MY" | "my-MM" | "ne-NP" | "nl-NL" | "no-NO" | "pa" | "pl-PL" | "pt-BR" | "pt-PT" | "rm" | "ro-RO" | "ru-RU" | "si-LK" | "sk-SK" | "sl-SI" | "sq" | "sr-RS" | "sv-SE" | "sw" | "ta-IN" | "te-IN" | "th-TH" | "tr-TR" | "uk-UA" | "ur" | "vi-VN" | "zh-HK" | "zh-Hans" | "zh-Hant" | "zu")[];
46
-
47
- /**
48
- * ASO (App Store Optimization) data type definitions
49
- */
50
-
51
- /**
52
- * Unified locale type used across the application
53
- * This type represents the unified locale codes used in /locales directory
54
- */
55
- type SupportedLocale = UnifiedLocale;
56
- /**
57
- * App Store Connect specific locale type
58
- */
59
- type AppStoreLocale = (typeof APP_STORE_SUPPORTED_LOCALES)[number];
60
- /**
61
- * Google Play Console specific locale type
62
- */
63
- type GooglePlayLocale = (typeof GOOGLE_PLAY_SUPPORTED_LOCALES)[number];
64
- /**
65
- * Check if locale is supported by our unified system
66
- */
67
- declare function isSupportedLocale(locale: string): locale is SupportedLocale;
68
- /**
69
- * Check if locale is supported by App Store
70
- */
71
- declare function isAppStoreLocale(locale: string): locale is AppStoreLocale;
72
- /**
73
- * Check if locale is supported by Google Play
74
- */
75
- declare function isGooglePlayLocale(locale: string): locale is GooglePlayLocale;
76
- /**
77
- * Google Play Android Publisher base types
78
- */
79
- type GooglePlayListing = androidpublisher_v3.Schema$Listing;
80
- type GooglePlayImageType = NonNullable<androidpublisher_v3.Params$Resource$Edits$Images$List["imageType"]>;
81
- type GooglePlayScreenshotType = Extract<GooglePlayImageType, "phoneScreenshots" | "sevenInchScreenshots" | "tenInchScreenshots" | "tvScreenshots" | "wearScreenshots">;
82
- /**
83
- * Google Play screenshots keyed by Android Publisher imageType
84
- * Includes legacy aliases for existing data structures
85
- */
86
- interface GooglePlayScreenshots extends Partial<Record<GooglePlayScreenshotType, string[]>> {
87
- phone?: string[];
88
- tablet?: string[];
89
- tablet7?: string[];
90
- tablet10?: string[];
91
- tv?: string[];
92
- wear?: string[];
93
- }
94
- /**
95
- * Google Play Store ASO data
96
- */
97
- interface GooglePlayAsoData extends Pick<GooglePlayListing, "video" | "language"> {
98
- title: NonNullable<GooglePlayListing["title"]>;
99
- shortDescription: NonNullable<GooglePlayListing["shortDescription"]>;
100
- fullDescription: NonNullable<GooglePlayListing["fullDescription"]>;
101
- screenshots: GooglePlayScreenshots;
102
- featureGraphic?: string;
103
- promoGraphic?: string;
104
- category?: string;
105
- contentRating?: string;
106
- keywords?: string[];
107
- contactEmail?: string;
108
- contactPhone?: string;
109
- contactWebsite?: string;
110
- packageName: string;
111
- defaultLanguage: string;
112
- }
113
- /**
114
- * Google Play release notes (per version)
115
- */
116
- type GooglePlayReleaseNote = androidpublisher_v3.Schema$TrackRelease;
117
- /**
118
- * App Store release notes (per version)
119
- */
120
- type AppStoreReleaseNote = Pick<AppStoreVersionAttributes, "versionString" | "platform"> & {
121
- releaseNotes: Record<string, NonNullable<AppStoreVersionLocalizationAttributes["whatsNew"]>>;
122
- releaseDate?: string;
123
- };
124
- /**
125
- * App Store Connect base types
126
- */
127
- type AppStoreInfoLocalization = AppInfoLocalizationAttributes;
128
- type AppStoreVersionLocalization = AppStoreVersionLocalizationAttributes;
129
- type AppStoreScreenshotDisplayType = ScreenshotDisplayType;
130
- /**
131
- * App Store screenshots keyed by official display type
132
- * Includes legacy aliases used in existing data structures
133
- */
134
- interface AppStoreScreenshots extends Partial<Record<AppStoreScreenshotDisplayType, string[]>> {
135
- iphone65?: string[];
136
- iphone61?: string[];
137
- iphone58?: string[];
138
- iphone55?: string[];
139
- iphone47?: string[];
140
- iphone40?: string[];
141
- ipadPro129?: string[];
142
- ipadPro11?: string[];
143
- ipad105?: string[];
144
- ipad97?: string[];
145
- appleWatch?: string[];
146
- }
147
- /**
148
- * App Store ASO data
149
- */
150
- interface AppStoreAsoData {
151
- name: NonNullable<AppStoreInfoLocalization["name"]>;
152
- subtitle?: AppStoreInfoLocalization["subtitle"];
153
- description: NonNullable<AppStoreVersionLocalization["description"]>;
154
- keywords?: AppStoreVersionLocalization["keywords"];
155
- promotionalText?: AppStoreVersionLocalization["promotionalText"];
156
- screenshots: AppStoreScreenshots;
157
- appPreview?: string[];
158
- primaryCategory?: string;
159
- secondaryCategory?: string;
160
- contentRightId?: string;
161
- supportUrl?: AppStoreVersionLocalization["supportUrl"];
162
- marketingUrl?: AppStoreVersionLocalization["marketingUrl"];
163
- privacyPolicyUrl?: AppStoreInfoLocalization["privacyPolicyUrl"];
164
- bundleId: string;
165
- locale: NonNullable<AppStoreVersionLocalization["locale"]>;
166
- whatsNew?: AppStoreVersionLocalization["whatsNew"];
167
- }
168
- /**
169
- * Multilingual Google Play ASO data
170
- */
171
- interface GooglePlayMultilingualAsoData {
172
- locales: {
173
- [locale: string]: GooglePlayAsoData;
174
- };
175
- defaultLocale?: string;
176
- }
177
- /**
178
- * Multilingual App Store ASO data
179
- */
180
- interface AppStoreMultilingualAsoData {
181
- locales: {
182
- [locale: string]: AppStoreAsoData;
183
- };
184
- defaultLocale?: string;
185
- }
186
- /**
187
- * Unified ASO data (format stored in local config.json)
188
- * Supports single language (legacy compatible) or multilingual structure
189
- */
190
- interface AsoData {
191
- googlePlay?: GooglePlayAsoData | GooglePlayMultilingualAsoData;
192
- appStore?: AppStoreAsoData | AppStoreMultilingualAsoData;
193
- lastSynced?: {
194
- googlePlay?: string;
195
- appStore?: string;
196
- };
197
- }
198
- /**
199
- * Check if Google Play data is multilingual structure
200
- */
201
- declare function isGooglePlayMultilingual(data: GooglePlayAsoData | GooglePlayMultilingualAsoData | undefined): data is GooglePlayMultilingualAsoData;
202
- /**
203
- * Check if App Store data is multilingual structure
204
- */
205
- declare function isAppStoreMultilingual(data: AppStoreAsoData | AppStoreMultilingualAsoData | undefined): data is AppStoreMultilingualAsoData;
206
-
207
- /**
208
- * Blog type definitions
209
- * Used by both MCP tools and web application
210
- */
211
- /**
212
- * Blog Meta Block (raw from HTML comment)
213
- * All fields are optional as they may be parsed from HTML or defaults
214
- */
215
- interface BlogMetaBlock {
216
- title: string;
217
- description: string;
218
- appSlug: string;
219
- slug: string;
220
- locale?: string;
221
- coverImage?: string;
222
- publishedAt?: string;
223
- modifiedAt?: string;
224
- tags?: string[];
225
- }
226
- /**
227
- * Blog Meta (resolved with UnifiedLocale)
228
- * Used by web application after normalization
229
- */
230
- interface BlogMeta extends BlogMetaBlock {
231
- locale: UnifiedLocale;
232
- coverImage?: string;
233
- publishedAt?: string;
234
- modifiedAt?: string;
235
- }
236
- /**
237
- * Blog Article (complete parsed article with HTML content)
238
- */
239
- interface BlogArticle {
240
- appSlug: string;
241
- slug: string;
242
- locale: UnifiedLocale;
243
- html: string;
244
- meta: BlogMeta;
245
- filePath: string;
246
- }
247
- /**
248
- * Blog Summary (aggregated metadata across locales)
249
- */
250
- interface BlogSummary {
251
- appSlug: string;
252
- slug: string;
253
- title: string;
254
- description: string;
255
- coverImage?: string;
256
- publishedAt?: string;
257
- modifiedAt?: string;
258
- locales: UnifiedLocale[];
259
- defaultLocale: UnifiedLocale;
260
- }
261
-
262
- interface ImageAsset {
263
- src: string;
264
- alt: string;
265
- width?: number;
266
- height?: number;
267
- srcDark?: string;
268
- }
269
- interface LandingHero {
270
- brand?: string;
271
- logoPath?: string;
272
- title?: string;
273
- titleHighlight?: string;
274
- description: string;
275
- }
276
- interface LandingScreenshots {
277
- title?: string;
278
- images: Array<{
279
- imageSrc: string;
280
- width?: number;
281
- height?: number;
282
- title: string;
283
- description: string;
284
- }>;
285
- }
286
- interface FeatureItem {
287
- title: string;
288
- body: string;
289
- iconPath?: string;
290
- iconName?: string;
291
- media?: ImageAsset;
292
- badge?: string;
293
- }
294
- interface LandingFeatures {
295
- title: string;
296
- items: FeatureItem[];
297
- }
298
- interface Testimonial {
299
- authorName: string;
300
- handle?: string;
301
- avatarPath?: string;
302
- quote: string;
303
- rating?: number;
304
- }
305
- interface LandingReviews {
306
- title?: string;
307
- description?: string;
308
- testimonials: Testimonial[];
309
- icons?: string[];
310
- rating?: number;
311
- }
312
- interface LandingCta {
313
- headline: string;
314
- icons?: string[];
315
- rating?: number;
316
- description?: string;
317
- }
318
- interface LandingPage {
319
- hero: LandingHero;
320
- screenshots: LandingScreenshots;
321
- features: LandingFeatures;
322
- reviews: LandingReviews;
323
- cta: LandingCta;
324
- }
325
- type DeepPartial<T> = T extends (infer U)[] ? Array<DeepPartial<U>> : T extends object ? {
326
- [P in keyof T]?: DeepPartial<T[P]>;
327
- } : T;
328
- type LandingPageLocale = DeepPartial<LandingPage>;
329
-
330
- /**
331
- * Product Config JSON file type definitions
332
- * Structure for public/products/{slug}/config.json
333
- */
334
- /**
335
- * Screenshot metadata
336
- */
337
- interface ProductScreenshots {
338
- phone?: string[];
339
- tablet?: string[];
340
- }
341
- /**
342
- * Product Metadata (store-common metadata)
343
- */
344
- interface ProductMetadata {
345
- category?: string;
346
- contactEmail?: string;
347
- instagram?: string;
348
- supportUrl?: string;
349
- marketingUrl?: string;
350
- termsUrl?: string;
351
- privacyUrl?: string;
352
- screenshots?: ProductScreenshots;
353
- featureGraphic?: string;
354
- }
355
- /**
356
- * Product Content settings
357
- */
358
- interface ProductContent {
359
- defaultLocale?: string;
360
- }
361
- /**
362
- * Product Config (complete config.json structure)
363
- *
364
- * Based on actual config.json file structure,
365
- * includes additional fields used by existing code.
366
- */
367
- interface ProductConfig {
368
- slug: string;
369
- order?: number;
370
- appStoreAppId?: string;
371
- packageName?: string;
372
- bundleId?: string;
373
- layoutColors?: LayoutColors;
374
- metadata?: ProductMetadata;
375
- content?: ProductContent;
376
- name?: string;
377
- tagline?: string;
378
- webUrl?: string;
379
- hasDetailPage?: boolean;
380
- isDarkIcon?: boolean;
381
- landing?: LandingPage;
382
- }
383
-
384
- interface LayoutColors {
385
- bg?: string;
386
- fg?: string;
387
- fgMuted?: string;
388
- muted?: string;
389
- accentGrad?: string;
390
- }
391
- interface AppMetaLinks {
392
- privacyPath: string;
393
- termsPath: string;
394
- backPath: string;
395
- }
396
- interface AppPageData {
397
- product?: ProductConfig;
398
- links: AppMetaLinks;
399
- privacy: string;
400
- terms: string;
401
- layoutColors?: LayoutColors;
402
- landing?: LandingPage;
403
- }
404
-
405
- interface AsoTemplate {
406
- intro: string;
407
- keyFeaturesHeading?: string;
408
- featuresHeading?: string;
409
- outro: string;
410
- includeSupportLinks?: boolean;
411
- }
412
- interface AsoLocaleContent {
413
- title?: string;
414
- subtitle?: string;
415
- shortDescription?: string;
416
- keywords?: string[] | string;
417
- template?: AsoTemplate;
418
- }
419
- interface ProductLocale {
420
- aso?: AsoLocaleContent;
421
- landing?: LandingPageLocale;
422
- }
423
-
424
- /**
425
- * Site data type definitions
426
- * Structure for public/site/ directory
427
- * - config.json: Site configuration (supported locales, default locale)
428
- * - contacts.json: Contact information
429
- * - locales/en-US.json: Localized content (meta, hero, developer)
430
- */
431
-
432
- /**
433
- * Site configuration for locale support
434
- * Stored in public/site/config.json
435
- */
436
- interface SiteConfig {
437
- /** List of locales supported by this site */
438
- supportedLocales: UnifiedLocale[];
439
- /** Default locale for fallback */
440
- defaultLocale: UnifiedLocale;
441
- }
442
- /**
443
- * Locale display information for UI components
444
- */
445
- interface LocaleDisplayInfo {
446
- /** Locale code (e.g., "en-US", "ko-KR") */
447
- code: UnifiedLocale;
448
- /** English name of the language */
449
- name: string;
450
- /** Native name of the language */
451
- nativeName: string;
452
- /** Flag emoji */
453
- flag: string;
454
- }
455
- interface SiteData {
456
- meta: {
457
- title: string;
458
- description: string;
459
- };
460
- hero: {
461
- brand: string;
462
- tagline: string;
463
- subtitle: string;
464
- };
465
- contacts: {
466
- id: string;
467
- label: string;
468
- icon: string;
469
- value: string;
470
- }[];
471
- developer: {
472
- name: string;
473
- heading: string;
474
- role: string;
475
- bio: string;
476
- principles: string[];
477
- stack: string[];
478
- now: string;
479
- availability: string;
480
- likes: string[];
481
- location?: string;
482
- timezone?: string;
483
- visited: {
484
- countries: {
485
- code: string;
486
- name: string;
487
- flagEmoji: string;
488
- cities: string[];
489
- }[];
490
- };
491
- };
492
- }
493
-
494
- /**
495
- * Types for the create-blog-html MCP tool
496
- */
497
- /**
498
- * BlogMetaOutput for MCP tool output
499
- * All fields are required (resolved values)
500
- * Note: This is separate from blog.types.ts BlogMeta which uses UnifiedLocale
501
- */
502
- interface BlogMetaOutput {
503
- title: string;
504
- description: string;
505
- appSlug: string;
506
- slug: string;
507
- locale: string;
508
- publishedAt: string;
509
- modifiedAt: string;
510
- coverImage: string;
511
- tags: string[];
512
- }
513
- interface CreateBlogHtmlInput {
514
- /**
515
- * Product/app slug used for paths and CTAs.
516
- * Defaults to "developer" when not provided.
517
- */
518
- appSlug: string;
519
- /**
520
- * English title used for slug creation and H1
521
- */
522
- title?: string;
523
- /**
524
- * Topic/angle to cover inside the article body
525
- */
526
- topic: string;
527
- /**
528
- * Single locale to generate (REQUIRED). Ignored when locales[] is provided.
529
- */
530
- locale: string;
531
- /**
532
- * Optional list of locales to generate. Each gets its own HTML file.
533
- */
534
- locales?: string[];
535
- /**
536
- * HTML content for the blog body. REQUIRED. The LLM must generate this based on the topic and locale.
537
- * Structure should follow public/en-US.html pattern.
538
- */
539
- content: string;
540
- /**
541
- * Meta description override. If absent, a locale-aware summary is generated from topic/appSlug.
542
- */
543
- description?: string;
544
- /**
545
- * Optional tags for BLOG_META. If absent, tags are derived from topic and appSlug.
546
- */
547
- tags?: string[];
548
- /**
549
- * Optional cover image. Relative paths are rewritten to /blogs/<app>/<slug>/...
550
- */
551
- coverImage?: string;
552
- /**
553
- * Include a relative image example in the body (./images/hero.png by default).
554
- */
555
- includeRelativeImageExample?: boolean;
556
- /**
557
- * Override the relative image path used when includeRelativeImageExample is true.
558
- */
559
- relativeImagePath?: string;
560
- /**
561
- * Publish date (YYYY-MM-DD). Defaults to today.
562
- */
563
- publishedAt?: string;
564
- /**
565
- * Last modified date (YYYY-MM-DD). Defaults to publishedAt.
566
- */
567
- modifiedAt?: string;
568
- /**
569
- * Overwrite existing HTML files when true (default false).
570
- */
571
- overwrite?: boolean;
572
- }
573
- interface GeneratedBlogFile {
574
- locale: string;
575
- path: string;
576
- }
577
- interface CreateBlogHtmlResult {
578
- slug: string;
579
- baseDir: string;
580
- files: GeneratedBlogFile[];
581
- coverImage: string;
582
- metaByLocale: Record<string, BlogMetaOutput>;
583
- }
584
-
585
- /**
586
- * Locale conversion utilities for ASO platforms
587
- * Handles conversion between unified locales and platform-specific locale codes
588
- */
589
-
590
- /**
591
- * Convert unified locale to App Store Connect locale
592
- * Returns null if the locale is not supported by App Store
593
- *
594
- * @param locale - Unified locale code (e.g., "ar", "zh-Hans")
595
- * @returns App Store locale code (e.g., "ar-SA", "zh-Hans") or null
596
- *
597
- * @example
598
- * unifiedToAppStore("ar") // Returns "ar-SA"
599
- * unifiedToAppStore("zh-Hans") // Returns "zh-Hans"
600
- * unifiedToAppStore("en-IN") // Returns null (not supported)
601
- */
602
- declare function unifiedToAppStore(locale: UnifiedLocale): string | null;
603
- /**
604
- * Convert unified locale to Google Play Console locale
605
- * Returns null if the locale is not supported by Google Play
606
- *
607
- * @param locale - Unified locale code (e.g., "ar", "zh-Hans")
608
- * @returns Google Play locale code (e.g., "ar-SA", "zh-CN") or null
609
- *
610
- * @example
611
- * unifiedToGooglePlay("ar") // Returns "ar-SA"
612
- * unifiedToGooglePlay("zh-Hans") // Returns "zh-CN"
613
- * unifiedToGooglePlay("bg-BG") // Returns "bg-BG"
614
- */
615
- declare function unifiedToGooglePlay(locale: UnifiedLocale): string | null;
616
- /**
617
- * Convert unified locale to both platforms
618
- * Returns an object with App Store and Google Play locale codes
619
- *
620
- * @param locale - Unified locale code
621
- * @returns Object with appStore and googlePlay locale codes (or null if not supported)
622
- *
623
- * @example
624
- * unifiedToBothPlatforms("ar")
625
- * // Returns { appStore: "ar-SA", googlePlay: "ar-SA" }
626
- *
627
- * unifiedToBothPlatforms("zh-Hans")
628
- * // Returns { appStore: "zh-Hans", googlePlay: "zh-CN" }
629
- */
630
- declare function unifiedToBothPlatforms(locale: UnifiedLocale): {
631
- appStore: string | null;
632
- googlePlay: string | null;
633
- };
634
- /**
635
- * Convert App Store Connect locale to unified locale
636
- * Returns the default locale if the App Store locale is not recognized
637
- *
638
- * @param locale - App Store locale code (e.g., "ar-SA", "zh-Hans")
639
- * @returns Unified locale code (e.g., "ar", "zh-Hans")
640
- *
641
- * @example
642
- * appStoreToUnified("ar-SA") // Returns "ar"
643
- * appStoreToUnified("zh-Hans") // Returns "zh-Hans"
644
- * appStoreToUnified("es-MX") // Returns "es-419"
645
- */
646
- declare function appStoreToUnified(locale: string): UnifiedLocale;
647
- /**
648
- * Convert Google Play Console locale to unified locale
649
- * Returns the default locale if the Google Play locale is not recognized
650
- *
651
- * @param locale - Google Play locale code (e.g., "ar-SA", "zh-CN")
652
- * @returns Unified locale code (e.g., "ar", "zh-Hans")
653
- *
654
- * @example
655
- * googlePlayToUnified("ar-SA") // Returns "ar"
656
- * googlePlayToUnified("zh-CN") // Returns "zh-Hans"
657
- * googlePlayToUnified("zh-TW") // Returns "zh-Hant"
658
- */
659
- declare function googlePlayToUnified(locale: string): UnifiedLocale;
660
- /**
661
- * Convert multiple unified locales to App Store locales
662
- * Filters out locales not supported by App Store
663
- *
664
- * @param locales - Array of unified locale codes
665
- * @returns Array of App Store locale codes (excluding unsupported locales)
666
- *
667
- * @example
668
- * unifiedToAppStoreBatch(["ar", "zh-Hans", "en-IN"])
669
- * // Returns ["ar-SA", "zh-Hans"] (en-IN is not supported by App Store)
670
- */
671
- declare function unifiedToAppStoreBatch(locales: UnifiedLocale[]): string[];
672
- /**
673
- * Convert multiple unified locales to Google Play locales
674
- * Filters out locales not supported by Google Play
675
- *
676
- * @param locales - Array of unified locale codes
677
- * @returns Array of Google Play locale codes (excluding unsupported locales)
678
- *
679
- * @example
680
- * unifiedToGooglePlayBatch(["ar", "zh-Hans", "bg-BG"])
681
- * // Returns ["ar-SA", "zh-CN", "bg-BG"]
682
- */
683
- declare function unifiedToGooglePlayBatch(locales: UnifiedLocale[]): string[];
684
- /**
685
- * Convert multiple App Store locales to unified locales
686
- *
687
- * @param locales - Array of App Store locale codes
688
- * @returns Array of unified locale codes
689
- *
690
- * @example
691
- * appStoreToUnifiedBatch(["ar-SA", "zh-Hans", "es-MX"])
692
- * // Returns ["ar", "zh-Hans", "es-419"]
693
- */
694
- declare function appStoreToUnifiedBatch(locales: string[]): UnifiedLocale[];
695
- /**
696
- * Convert multiple Google Play locales to unified locales
697
- *
698
- * @param locales - Array of Google Play locale codes
699
- * @returns Array of unified locale codes
700
- *
701
- * @example
702
- * googlePlayToUnifiedBatch(["ar-SA", "zh-CN", "zh-TW"])
703
- * // Returns ["ar", "zh-Hans", "zh-Hant"]
704
- */
705
- declare function googlePlayToUnifiedBatch(locales: string[]): UnifiedLocale[];
706
- /**
707
- * Convert App Store locale to Google Play locale
708
- * Goes through unified locale as intermediate step
709
- *
710
- * @param locale - App Store locale code
711
- * @returns Google Play locale code or null if conversion not possible
712
- *
713
- * @example
714
- * appStoreToGooglePlay("ar-SA") // Returns "ar-SA"
715
- * appStoreToGooglePlay("zh-Hans") // Returns "zh-CN"
716
- * appStoreToGooglePlay("es-MX") // Returns "es-419"
717
- */
718
- declare function appStoreToGooglePlay(locale: string): string | null;
719
- /**
720
- * Convert Google Play locale to App Store locale
721
- * Goes through unified locale as intermediate step
722
- *
723
- * @param locale - Google Play locale code
724
- * @returns App Store locale code or null if conversion not possible
725
- *
726
- * @example
727
- * googlePlayToAppStore("ar-SA") // Returns "ar-SA"
728
- * googlePlayToAppStore("zh-CN") // Returns "zh-Hans"
729
- * googlePlayToAppStore("zh-TW") // Returns "zh-Hant"
730
- * googlePlayToAppStore("en-IN") // Returns null (not supported by App Store)
731
- */
732
- declare function googlePlayToAppStore(locale: string): string | null;
733
- /**
734
- * Convert an object with unified locale keys to App Store locale keys
735
- * Useful for converting locale-based data structures
736
- *
737
- * @param data - Object with unified locale keys
738
- * @returns Object with App Store locale keys (excluding unsupported locales)
739
- *
740
- * @example
741
- * convertObjectToAppStore({
742
- * "ar": "مرحبا",
743
- * "zh-Hans": "你好",
744
- * "en-IN": "Hello"
745
- * })
746
- * // Returns { "ar-SA": "مرحبا", "zh-Hans": "你好" }
747
- */
748
- declare function convertObjectToAppStore<T>(data: Record<UnifiedLocale, T>): Record<string, T>;
749
- /**
750
- * Convert an object with unified locale keys to Google Play locale keys
751
- * Useful for converting locale-based data structures
752
- *
753
- * @param data - Object with unified locale keys
754
- * @returns Object with Google Play locale keys (excluding unsupported locales)
755
- *
756
- * @example
757
- * convertObjectToGooglePlay({
758
- * "ar": "مرحبا",
759
- * "zh-Hans": "你好",
760
- * "zh-Hant": "你好"
761
- * })
762
- * // Returns { "ar-SA": "مرحبا", "zh-CN": "你好", "zh-TW": "你好" }
763
- */
764
- declare function convertObjectToGooglePlay<T>(data: Record<UnifiedLocale, T>): Record<string, T>;
765
- /**
766
- * Convert an object with App Store locale keys to unified locale keys
767
- * Useful for converting locale-based data structures from App Store
768
- *
769
- * @param data - Object with App Store locale keys
770
- * @returns Object with unified locale keys
771
- *
772
- * @example
773
- * convertObjectFromAppStore({
774
- * "ar-SA": "مرحبا",
775
- * "zh-Hans": "你好",
776
- * "es-MX": "Hola"
777
- * })
778
- * // Returns { "ar": "مرحبا", "zh-Hans": "你好", "es-419": "Hola" }
779
- */
780
- declare function convertObjectFromAppStore<T>(data: Record<string, T>): Record<UnifiedLocale, T>;
781
- /**
782
- * Convert an object with Google Play locale keys to unified locale keys
783
- * Useful for converting locale-based data structures from Google Play
784
- *
785
- * @param data - Object with Google Play locale keys
786
- * @returns Object with unified locale keys
787
- *
788
- * @example
789
- * convertObjectFromGooglePlay({
790
- * "ar-SA": "مرحبا",
791
- * "zh-CN": "你好",
792
- * "zh-TW": "你好"
793
- * })
794
- * // Returns { "ar": "مرحبا", "zh-Hans": "你好", "zh-Hant": "你好" }
795
- */
796
- declare function convertObjectFromGooglePlay<T>(data: Record<string, T>): Record<UnifiedLocale, T>;
1
+ import { w as AsoData, Z as ProductConfig } from './locale-converter-B_NCFuS8.js';
2
+ export { A as APP_STORE_TO_UNIFIED, F as AppMetaLinks, H as AppPageData, t as AppStoreAsoData, p as AppStoreInfoLocalization, d as AppStoreLocale, v as AppStoreMultilingualAsoData, o as AppStoreReleaseNote, r as AppStoreScreenshotDisplayType, s as AppStoreScreenshots, q as AppStoreVersionLocalization, $ as AsoLocaleContent, _ as AsoTemplate, C as BlogArticle, z as BlogMeta, B as BlogMetaBlock, a4 as BlogMetaOutput, E as BlogSummary, a5 as CreateBlogHtmlInput, a7 as CreateBlogHtmlResult, D as DEFAULT_LOCALE, R as DeepPartial, M as FeatureItem, G as GOOGLE_PLAY_TO_UNIFIED, a6 as GeneratedBlogFile, m as GooglePlayAsoData, j as GooglePlayImageType, h as GooglePlayListing, e as GooglePlayLocale, u as GooglePlayMultilingualAsoData, n as GooglePlayReleaseNote, k as GooglePlayScreenshotType, l as GooglePlayScreenshots, I as ImageAsset, P as LandingCta, N as LandingFeatures, J as LandingHero, Q as LandingPage, V as LandingPageLocale, O as LandingReviews, K as LandingScreenshots, L as LayoutColors, a2 as LocaleDisplayInfo, Y as ProductContent, a0 as ProductLocale, X as ProductMetadata, W as ProductScreenshots, a1 as SiteConfig, a3 as SiteData, S as SupportedLocale, T as Testimonial, U as UNIFIED_LOCALES, a as UNIFIED_TO_APP_STORE, b as UNIFIED_TO_GOOGLE_PLAY, c as UnifiedLocale, ah as appStoreToGooglePlay, ab as appStoreToUnified, af as appStoreToUnifiedBatch, al as convertObjectFromAppStore, am as convertObjectFromGooglePlay, aj as convertObjectToAppStore, ak as convertObjectToGooglePlay, ai as googlePlayToAppStore, ac as googlePlayToUnified, ag as googlePlayToUnifiedBatch, f as isAppStoreLocale, y as isAppStoreMultilingual, g as isGooglePlayLocale, x as isGooglePlayMultilingual, i as isSupportedLocale, a8 as unifiedToAppStore, ad as unifiedToAppStoreBatch, aa as unifiedToBothPlatforms, a9 as unifiedToGooglePlay, ae as unifiedToGooglePlayBatch } from './locale-converter-B_NCFuS8.js';
3
+ import '@googleapis/androidpublisher';
4
+ import 'appstore-connect-sdk/openapi';
797
5
 
798
6
  /**
799
7
  * ASO Data Converter
@@ -837,4 +45,4 @@ declare function getPublicDir(): string;
837
45
  */
838
46
  declare function getProductsDir(): string;
839
47
 
840
- export { APP_STORE_TO_UNIFIED, type AppMetaLinks, type AppPageData, type AppStoreAsoData, type AppStoreInfoLocalization, type AppStoreLocale, type AppStoreMultilingualAsoData, type AppStoreReleaseNote, type AppStoreScreenshotDisplayType, type AppStoreScreenshots, type AppStoreVersionLocalization, type AsoData, type AsoLocaleContent, type AsoTemplate, type BlogArticle, type BlogMeta, type BlogMetaBlock, type BlogMetaOutput, type BlogSummary, type CreateBlogHtmlInput, type CreateBlogHtmlResult, DEFAULT_LOCALE, type DeepPartial, type FeatureItem, GOOGLE_PLAY_TO_UNIFIED, type GeneratedBlogFile, type GooglePlayAsoData, type GooglePlayImageType, type GooglePlayListing, type GooglePlayLocale, type GooglePlayMultilingualAsoData, type GooglePlayReleaseNote, type GooglePlayScreenshotType, type GooglePlayScreenshots, type ImageAsset, type LandingCta, type LandingFeatures, type LandingHero, type LandingPage, type LandingPageLocale, type LandingReviews, type LandingScreenshots, type LayoutColors, type LocaleDisplayInfo, type ProductConfig, type ProductContent, type ProductLocale, type ProductMetadata, type ProductScreenshots, type SiteConfig, type SiteData, type SupportedLocale, type Testimonial, UNIFIED_LOCALES, UNIFIED_TO_APP_STORE, UNIFIED_TO_GOOGLE_PLAY, type UnifiedLocale, appStoreToGooglePlay, appStoreToUnified, appStoreToUnifiedBatch, convertObjectFromAppStore, convertObjectFromGooglePlay, convertObjectToAppStore, convertObjectToGooglePlay, getAsoDataDir, getProductsDir, getPublicDir, getPullDataDir, getPushDataDir, googlePlayToAppStore, googlePlayToUnified, googlePlayToUnifiedBatch, isAppStoreLocale, isAppStoreMultilingual, isGooglePlayLocale, isGooglePlayMultilingual, isSupportedLocale, loadAsoFromConfig, saveAsoToAsoDir, saveAsoToConfig, unifiedToAppStore, unifiedToAppStoreBatch, unifiedToBothPlatforms, unifiedToGooglePlay, unifiedToGooglePlayBatch };
48
+ export { AsoData, ProductConfig, getAsoDataDir, getProductsDir, getPublicDir, getPullDataDir, getPushDataDir, loadAsoFromConfig, saveAsoToAsoDir, saveAsoToConfig };