@xsolla/xui-core 0.184.0 → 0.185.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.
package/index.d.ts CHANGED
@@ -4,7 +4,7 @@ import React from 'react';
4
4
  * Typography token definitions for different product contexts.
5
5
  *
6
6
  * ProductContext determines typography scales — font sizes, line heights,
7
- * and font weights vary between B2B, B2C, Pay Station, and Presentation.
7
+ * and font weights vary between B2B, B2C, and Corpsite.
8
8
  *
9
9
  * Values are synced from the Figma "Theme / Typography" variable collection.
10
10
  * Each semantic token (e.g., heading/h1/font-size) aliases into the responsive
@@ -16,7 +16,7 @@ import React from 'react';
16
16
  * - Body default/accent use "compact" line-heights (moderate)
17
17
  * - Body paragraph uses "text" line-heights (generous, for reading)
18
18
  */
19
- type ProductContext = "b2c" | "b2b";
19
+ type ProductContext = "b2c" | "b2b" | "corpsite";
20
20
  interface TypographyVariant {
21
21
  fontSize: number;
22
22
  lineHeight: string;
@@ -2896,172 +2896,984 @@ declare const colors: {
2896
2896
  };
2897
2897
  };
2898
2898
  };
2899
- };
2900
- type ThemeColors = typeof pentagramDark;
2901
-
2902
- declare const spacing: {
2903
- xs: number;
2904
- s: number;
2905
- m: number;
2906
- l: number;
2907
- xl: number;
2908
- };
2909
- declare const radius: {
2910
- button: number;
2911
- card: number;
2912
- contextMenu: number;
2913
- input: number;
2914
- tagSmall: number;
2915
- tagMedium: number;
2916
- tagLarge: number;
2917
- avatarSmall: number;
2918
- avatarLarge: number;
2919
- avatarCircle: number;
2920
- };
2921
- /** Primitive radius scale. Mirrors Figma "Scale / radius/*" variables. */
2922
- declare const radiusScale: {
2923
- readonly "25": 2;
2924
- readonly "50": 4;
2925
- readonly "75": 6;
2926
- readonly "100": 8;
2927
- readonly "150": 12;
2928
- readonly "200": 16;
2929
- readonly "250": 20;
2930
- readonly "300": 24;
2931
- readonly "350": 28;
2932
- readonly "400": 32;
2933
- readonly "999": 999;
2934
- };
2935
- /** Primitive border-width scale. Mirrors Figma "Scale / stroke/*" variables. */
2936
- declare const stroke: {
2937
- readonly "1": 1;
2938
- readonly "2": 2;
2939
- readonly "3": 3;
2940
- };
2941
-
2942
- /**
2943
- * Semantic shape tokens. Mirrors Figma "Theme / Shape" variable collection,
2944
- * Xsolla Default mode. Values alias into the radiusScale and stroke primitives.
2945
- */
2946
- declare const shape: {
2947
- readonly button: {
2948
- readonly xl: {
2949
- readonly borderRadius: 8;
2950
- readonly borderWidth: 1;
2951
- };
2952
- readonly lg: {
2953
- readonly borderRadius: 8;
2954
- readonly borderWidth: 1;
2955
- };
2956
- readonly md: {
2957
- readonly borderRadius: 6;
2958
- readonly borderWidth: 1;
2959
- };
2960
- readonly sm: {
2961
- readonly borderRadius: 4;
2962
- readonly borderWidth: 1;
2963
- };
2964
- readonly xs: {
2965
- readonly borderRadius: 4;
2966
- readonly borderWidth: 1;
2967
- };
2968
- };
2969
- readonly checkbox: {
2970
- readonly xl: {
2971
- readonly borderRadius: 4;
2972
- readonly borderWidth: 1;
2973
- };
2974
- readonly lg: {
2975
- readonly borderRadius: 4;
2976
- readonly borderWidth: 1;
2977
- };
2978
- readonly md: {
2979
- readonly borderRadius: 4;
2980
- readonly borderWidth: 1;
2981
- };
2982
- readonly sm: {
2983
- readonly borderRadius: 4;
2984
- readonly borderWidth: 1;
2985
- };
2986
- };
2987
- readonly input: {
2988
- readonly xl: {
2989
- readonly borderRadius: 8;
2990
- readonly borderWidth: 1;
2991
- };
2992
- readonly lg: {
2993
- readonly borderRadius: 8;
2994
- readonly borderWidth: 1;
2995
- };
2996
- readonly md: {
2997
- readonly borderRadius: 8;
2998
- readonly borderWidth: 1;
2999
- };
3000
- readonly sm: {
3001
- readonly borderRadius: 4;
3002
- readonly borderWidth: 1;
3003
- };
3004
- readonly xs: {
3005
- readonly borderRadius: 4;
3006
- readonly borderWidth: 1;
3007
- };
3008
- };
3009
- readonly segmented: {
3010
- readonly xl: {
3011
- readonly borderRadius: 8;
3012
- readonly borderWidth: 1;
3013
- };
3014
- readonly lg: {
3015
- readonly borderRadius: 8;
3016
- readonly borderWidth: 1;
3017
- };
3018
- readonly md: {
3019
- readonly borderRadius: 8;
3020
- readonly borderWidth: 1;
3021
- };
3022
- readonly sm: {
3023
- readonly borderRadius: 4;
3024
- readonly borderWidth: 1;
3025
- };
3026
- };
3027
- readonly segmentedItem: {
3028
- readonly xl: {
3029
- readonly borderRadius: 4;
3030
- readonly borderWidth: 1;
3031
- };
3032
- readonly lg: {
3033
- readonly borderRadius: 4;
3034
- readonly borderWidth: 1;
3035
- };
3036
- readonly md: {
3037
- readonly borderRadius: 4;
3038
- readonly borderWidth: 1;
3039
- };
3040
- readonly sm: {
3041
- readonly borderRadius: 2;
3042
- readonly borderWidth: 1;
2899
+ "corpsite-dark": {
2900
+ background: {
2901
+ primary: string;
2902
+ secondary: string;
2903
+ brand: {
2904
+ primary: string;
2905
+ secondary: string;
2906
+ };
2907
+ brandExtra: {
2908
+ primary: string;
2909
+ secondary: string;
2910
+ };
2911
+ inverse: string;
2912
+ static: {
2913
+ dark: string;
2914
+ light: string;
2915
+ };
2916
+ success: {
2917
+ primary: string;
2918
+ secondary: string;
2919
+ };
2920
+ warning: {
2921
+ primary: string;
2922
+ secondary: string;
2923
+ };
2924
+ alert: {
2925
+ primary: string;
2926
+ secondary: string;
2927
+ };
2928
+ neutral: {
2929
+ primary: string;
2930
+ secondary: string;
2931
+ };
3043
2932
  };
3044
- };
3045
- readonly switch: {
3046
- readonly xl: {
3047
- readonly borderRadius: 4;
3048
- readonly borderWidth: 1;
2933
+ content: {
2934
+ primary: string;
2935
+ secondary: string;
2936
+ tertiary: string;
2937
+ brand: {
2938
+ primary: string;
2939
+ secondary: string;
2940
+ };
2941
+ brandExtra: {
2942
+ primary: string;
2943
+ secondary: string;
2944
+ };
2945
+ inverse: string;
2946
+ static: {
2947
+ light: string;
2948
+ dark: string;
2949
+ };
2950
+ success: {
2951
+ primary: string;
2952
+ secondary: string;
2953
+ };
2954
+ warning: {
2955
+ primary: string;
2956
+ secondary: string;
2957
+ };
2958
+ alert: {
2959
+ primary: string;
2960
+ secondary: string;
2961
+ };
2962
+ neutral: {
2963
+ primary: string;
2964
+ secondary: string;
2965
+ };
2966
+ on: {
2967
+ brand: string;
2968
+ brandExtra: string;
2969
+ success: string;
2970
+ warning: string;
2971
+ alert: string;
2972
+ neutral: string;
2973
+ };
3049
2974
  };
3050
- readonly lg: {
3051
- readonly borderRadius: 4;
3052
- readonly borderWidth: 1;
2975
+ border: {
2976
+ primary: string;
2977
+ secondary: string;
2978
+ brand: string;
2979
+ brandExtra: string;
2980
+ inverse: string;
2981
+ success: string;
2982
+ warning: string;
2983
+ alert: string;
2984
+ neutral: string;
3053
2985
  };
3054
- readonly md: {
3055
- readonly borderRadius: 4;
3056
- readonly borderWidth: 1;
2986
+ overlay: {
2987
+ mono: string;
2988
+ brand: string;
2989
+ brandExtra: string;
2990
+ success: string;
2991
+ warning: string;
2992
+ alert: string;
2993
+ neutral: string;
2994
+ monoHover: string;
3057
2995
  };
3058
- readonly sm: {
3059
- readonly borderRadius: 4;
3060
- readonly borderWidth: 1;
2996
+ layer: {
2997
+ scrim: string;
2998
+ float: string;
3061
2999
  };
3062
- };
3063
- readonly knob: {
3064
- readonly xl: {
3000
+ control: {
3001
+ brand: {
3002
+ primary: {
3003
+ bg: string;
3004
+ bgHover: string;
3005
+ bgPress: string;
3006
+ bgDisable: string;
3007
+ border: string;
3008
+ borderHover: string;
3009
+ borderPress: string;
3010
+ borderDisable: string;
3011
+ };
3012
+ secondary: {
3013
+ bg: string;
3014
+ bgHover: string;
3015
+ bgPress: string;
3016
+ border: string;
3017
+ borderHover: string;
3018
+ borderPress: string;
3019
+ };
3020
+ tertiary: {
3021
+ bg: string;
3022
+ bgHover: string;
3023
+ bgPress: string;
3024
+ border: string;
3025
+ borderHover: string;
3026
+ borderPress: string;
3027
+ };
3028
+ text: {
3029
+ primary: string;
3030
+ secondary: string;
3031
+ tertiary: string;
3032
+ disable: string;
3033
+ ghost: string;
3034
+ };
3035
+ ghost: {
3036
+ bg: string;
3037
+ bgHover: string;
3038
+ bgPress: string;
3039
+ border: string;
3040
+ borderHover: string;
3041
+ borderPress: string;
3042
+ };
3043
+ };
3044
+ mono: {
3045
+ primary: {
3046
+ bg: string;
3047
+ bgHover: string;
3048
+ bgPress: string;
3049
+ border: string;
3050
+ borderHover: string;
3051
+ borderPress: string;
3052
+ };
3053
+ secondary: {
3054
+ bg: string;
3055
+ bgHover: string;
3056
+ bgPress: string;
3057
+ border: string;
3058
+ borderHover: string;
3059
+ borderPress: string;
3060
+ };
3061
+ tertiary: {
3062
+ bg: string;
3063
+ bgHover: string;
3064
+ bgPress: string;
3065
+ border: string;
3066
+ borderHover: string;
3067
+ borderPress: string;
3068
+ };
3069
+ text: {
3070
+ primary: string;
3071
+ secondary: string;
3072
+ tertiary: string;
3073
+ ghost: string;
3074
+ };
3075
+ ghost: {
3076
+ bg: string;
3077
+ bgHover: string;
3078
+ bgPress: string;
3079
+ border: string;
3080
+ borderHover: string;
3081
+ borderPress: string;
3082
+ };
3083
+ };
3084
+ brandExtra: {
3085
+ primary: {
3086
+ bg: string;
3087
+ bgHover: string;
3088
+ bgPress: string;
3089
+ border: string;
3090
+ borderHover: string;
3091
+ borderPress: string;
3092
+ };
3093
+ secondary: {
3094
+ bg: string;
3095
+ bgHover: string;
3096
+ bgPress: string;
3097
+ border: string;
3098
+ borderHover: string;
3099
+ borderPress: string;
3100
+ };
3101
+ tertiary: {
3102
+ bg: string;
3103
+ bgHover: string;
3104
+ bgPress: string;
3105
+ border: string;
3106
+ borderHover: string;
3107
+ borderPress: string;
3108
+ };
3109
+ text: {
3110
+ primary: string;
3111
+ secondary: string;
3112
+ tertiary: string;
3113
+ ghost: string;
3114
+ };
3115
+ ghost: {
3116
+ bg: string;
3117
+ bgHover: string;
3118
+ bgPress: string;
3119
+ border: string;
3120
+ borderHover: string;
3121
+ borderPress: string;
3122
+ };
3123
+ };
3124
+ alert: {
3125
+ bg: string;
3126
+ border: string;
3127
+ primary: {
3128
+ bg: string;
3129
+ bgHover: string;
3130
+ bgPress: string;
3131
+ border: string;
3132
+ borderHover: string;
3133
+ borderPress: string;
3134
+ };
3135
+ secondary: {
3136
+ bg: string;
3137
+ bgHover: string;
3138
+ bgPress: string;
3139
+ border: string;
3140
+ borderHover: string;
3141
+ borderPress: string;
3142
+ };
3143
+ tertiary: {
3144
+ bg: string;
3145
+ bgHover: string;
3146
+ bgPress: string;
3147
+ border: string;
3148
+ borderHover: string;
3149
+ borderPress: string;
3150
+ };
3151
+ text: {
3152
+ primary: string;
3153
+ secondary: string;
3154
+ tertiary: string;
3155
+ ghost: string;
3156
+ };
3157
+ ghost: {
3158
+ bg: string;
3159
+ bgHover: string;
3160
+ bgPress: string;
3161
+ border: string;
3162
+ borderHover: string;
3163
+ borderPress: string;
3164
+ };
3165
+ };
3166
+ input: {
3167
+ bg: string;
3168
+ bgHover: string;
3169
+ bgDisable: string;
3170
+ border: string;
3171
+ borderHover: string;
3172
+ borderDisable: string;
3173
+ text: string;
3174
+ placeholder: string;
3175
+ textDisable: string;
3176
+ };
3177
+ focus: {
3178
+ bg: string;
3179
+ border: string;
3180
+ };
3181
+ check: {
3182
+ bg: string;
3183
+ bgHover: string;
3184
+ bgDisable: string;
3185
+ border: string;
3186
+ borderHover: string;
3187
+ borderDisable: string;
3188
+ icon: string;
3189
+ };
3190
+ faint: {
3191
+ bg: string;
3192
+ bgHover: string;
3193
+ border: string;
3194
+ borderHover: string;
3195
+ };
3196
+ slider: {
3197
+ bg: string;
3198
+ bgHover: string;
3199
+ bgDisable: string;
3200
+ };
3201
+ switch: {
3202
+ bg: string;
3203
+ bgHover: string;
3204
+ bgDisable: string;
3205
+ border: string;
3206
+ borderHover: string;
3207
+ borderDisable: string;
3208
+ };
3209
+ knob: {
3210
+ bg: string;
3211
+ bgHover: string;
3212
+ bgActive: string;
3213
+ bgActiveHover: string;
3214
+ bgInactive: string;
3215
+ bgInactiveHover: string;
3216
+ bgDisable: string;
3217
+ };
3218
+ text: {
3219
+ primary: string;
3220
+ disable: string;
3221
+ };
3222
+ link: {
3223
+ primary: string;
3224
+ primaryHover: string;
3225
+ secondary: string;
3226
+ secondaryHover: string;
3227
+ };
3228
+ segmented: {
3229
+ bg: string;
3230
+ bgHover: string;
3231
+ bgActive: string;
3232
+ border: string;
3233
+ borderHover: string;
3234
+ borderActive: string;
3235
+ text: string;
3236
+ textDisable: string;
3237
+ };
3238
+ tagLabel: {
3239
+ product: {
3240
+ bg: string;
3241
+ text: string;
3242
+ textCompact: string;
3243
+ };
3244
+ rarity: {
3245
+ bg: string;
3246
+ text: string;
3247
+ };
3248
+ name: {
3249
+ bg: string;
3250
+ text: string;
3251
+ };
3252
+ account: {
3253
+ bg: string;
3254
+ text: string;
3255
+ textCompact: string;
3256
+ };
3257
+ id: {
3258
+ bg: string;
3259
+ bgSeries: string;
3260
+ textSeries: string;
3261
+ textNumber: string;
3262
+ textCompact: string;
3263
+ };
3264
+ subentity: {
3265
+ bg: string;
3266
+ text: string;
3267
+ };
3268
+ item: {
3269
+ bg: string;
3270
+ text: string;
3271
+ textCompact: string;
3272
+ };
3273
+ };
3274
+ toast: {
3275
+ bg: string;
3276
+ };
3277
+ toggleButton: {
3278
+ bg: string;
3279
+ bgHover: string;
3280
+ bgActive: string;
3281
+ bgDisable: string;
3282
+ border: string;
3283
+ borderHover: string;
3284
+ borderActive: string;
3285
+ borderDisable: string;
3286
+ text: string;
3287
+ textActive: string;
3288
+ textDisable: string;
3289
+ };
3290
+ appButton: {
3291
+ bg: string;
3292
+ bgHover: string;
3293
+ bgPress: string;
3294
+ border: string;
3295
+ borderHover: string;
3296
+ borderPress: string;
3297
+ text: string;
3298
+ textDisable: string;
3299
+ };
3300
+ };
3301
+ };
3302
+ "corpsite-light": {
3303
+ background: {
3304
+ primary: string;
3305
+ secondary: string;
3306
+ brand: {
3307
+ primary: string;
3308
+ secondary: string;
3309
+ };
3310
+ brandExtra: {
3311
+ primary: string;
3312
+ secondary: string;
3313
+ };
3314
+ inverse: string;
3315
+ static: {
3316
+ dark: string;
3317
+ light: string;
3318
+ };
3319
+ success: {
3320
+ primary: string;
3321
+ secondary: string;
3322
+ };
3323
+ warning: {
3324
+ primary: string;
3325
+ secondary: string;
3326
+ };
3327
+ alert: {
3328
+ primary: string;
3329
+ secondary: string;
3330
+ };
3331
+ neutral: {
3332
+ primary: string;
3333
+ secondary: string;
3334
+ };
3335
+ };
3336
+ content: {
3337
+ primary: string;
3338
+ secondary: string;
3339
+ tertiary: string;
3340
+ brand: {
3341
+ primary: string;
3342
+ secondary: string;
3343
+ };
3344
+ brandExtra: {
3345
+ primary: string;
3346
+ secondary: string;
3347
+ };
3348
+ inverse: string;
3349
+ static: {
3350
+ light: string;
3351
+ dark: string;
3352
+ };
3353
+ success: {
3354
+ primary: string;
3355
+ secondary: string;
3356
+ };
3357
+ warning: {
3358
+ primary: string;
3359
+ secondary: string;
3360
+ };
3361
+ alert: {
3362
+ primary: string;
3363
+ secondary: string;
3364
+ };
3365
+ neutral: {
3366
+ primary: string;
3367
+ secondary: string;
3368
+ };
3369
+ on: {
3370
+ brand: string;
3371
+ brandExtra: string;
3372
+ success: string;
3373
+ warning: string;
3374
+ alert: string;
3375
+ neutral: string;
3376
+ };
3377
+ };
3378
+ border: {
3379
+ primary: string;
3380
+ secondary: string;
3381
+ brand: string;
3382
+ brandExtra: string;
3383
+ inverse: string;
3384
+ success: string;
3385
+ warning: string;
3386
+ alert: string;
3387
+ neutral: string;
3388
+ };
3389
+ overlay: {
3390
+ mono: string;
3391
+ brand: string;
3392
+ brandExtra: string;
3393
+ success: string;
3394
+ warning: string;
3395
+ alert: string;
3396
+ neutral: string;
3397
+ monoHover: string;
3398
+ };
3399
+ layer: {
3400
+ scrim: string;
3401
+ float: string;
3402
+ };
3403
+ control: {
3404
+ brand: {
3405
+ primary: {
3406
+ bg: string;
3407
+ bgHover: string;
3408
+ bgPress: string;
3409
+ bgDisable: string;
3410
+ border: string;
3411
+ borderHover: string;
3412
+ borderPress: string;
3413
+ borderDisable: string;
3414
+ };
3415
+ secondary: {
3416
+ bg: string;
3417
+ bgHover: string;
3418
+ bgPress: string;
3419
+ border: string;
3420
+ borderHover: string;
3421
+ borderPress: string;
3422
+ };
3423
+ tertiary: {
3424
+ bg: string;
3425
+ bgHover: string;
3426
+ bgPress: string;
3427
+ border: string;
3428
+ borderHover: string;
3429
+ borderPress: string;
3430
+ };
3431
+ text: {
3432
+ primary: string;
3433
+ secondary: string;
3434
+ tertiary: string;
3435
+ disable: string;
3436
+ ghost: string;
3437
+ };
3438
+ ghost: {
3439
+ bg: string;
3440
+ bgHover: string;
3441
+ bgPress: string;
3442
+ border: string;
3443
+ borderHover: string;
3444
+ borderPress: string;
3445
+ };
3446
+ };
3447
+ mono: {
3448
+ primary: {
3449
+ bg: string;
3450
+ bgHover: string;
3451
+ bgPress: string;
3452
+ border: string;
3453
+ borderHover: string;
3454
+ borderPress: string;
3455
+ };
3456
+ secondary: {
3457
+ bg: string;
3458
+ bgHover: string;
3459
+ bgPress: string;
3460
+ border: string;
3461
+ borderHover: string;
3462
+ borderPress: string;
3463
+ };
3464
+ tertiary: {
3465
+ bg: string;
3466
+ bgHover: string;
3467
+ bgPress: string;
3468
+ border: string;
3469
+ borderHover: string;
3470
+ borderPress: string;
3471
+ };
3472
+ text: {
3473
+ primary: string;
3474
+ secondary: string;
3475
+ tertiary: string;
3476
+ ghost: string;
3477
+ };
3478
+ ghost: {
3479
+ bg: string;
3480
+ bgHover: string;
3481
+ bgPress: string;
3482
+ border: string;
3483
+ borderHover: string;
3484
+ borderPress: string;
3485
+ };
3486
+ };
3487
+ brandExtra: {
3488
+ primary: {
3489
+ bg: string;
3490
+ bgHover: string;
3491
+ bgPress: string;
3492
+ border: string;
3493
+ borderHover: string;
3494
+ borderPress: string;
3495
+ };
3496
+ secondary: {
3497
+ bg: string;
3498
+ bgHover: string;
3499
+ bgPress: string;
3500
+ border: string;
3501
+ borderHover: string;
3502
+ borderPress: string;
3503
+ };
3504
+ tertiary: {
3505
+ bg: string;
3506
+ bgHover: string;
3507
+ bgPress: string;
3508
+ border: string;
3509
+ borderHover: string;
3510
+ borderPress: string;
3511
+ };
3512
+ text: {
3513
+ primary: string;
3514
+ secondary: string;
3515
+ tertiary: string;
3516
+ ghost: string;
3517
+ };
3518
+ ghost: {
3519
+ bg: string;
3520
+ bgHover: string;
3521
+ bgPress: string;
3522
+ border: string;
3523
+ borderHover: string;
3524
+ borderPress: string;
3525
+ };
3526
+ };
3527
+ alert: {
3528
+ bg: string;
3529
+ border: string;
3530
+ primary: {
3531
+ bg: string;
3532
+ bgHover: string;
3533
+ bgPress: string;
3534
+ border: string;
3535
+ borderHover: string;
3536
+ borderPress: string;
3537
+ };
3538
+ secondary: {
3539
+ bg: string;
3540
+ bgHover: string;
3541
+ bgPress: string;
3542
+ border: string;
3543
+ borderHover: string;
3544
+ borderPress: string;
3545
+ };
3546
+ tertiary: {
3547
+ bg: string;
3548
+ bgHover: string;
3549
+ bgPress: string;
3550
+ border: string;
3551
+ borderHover: string;
3552
+ borderPress: string;
3553
+ };
3554
+ text: {
3555
+ primary: string;
3556
+ secondary: string;
3557
+ tertiary: string;
3558
+ ghost: string;
3559
+ };
3560
+ ghost: {
3561
+ bg: string;
3562
+ bgHover: string;
3563
+ bgPress: string;
3564
+ border: string;
3565
+ borderHover: string;
3566
+ borderPress: string;
3567
+ };
3568
+ };
3569
+ input: {
3570
+ bg: string;
3571
+ bgHover: string;
3572
+ bgDisable: string;
3573
+ border: string;
3574
+ borderHover: string;
3575
+ borderDisable: string;
3576
+ text: string;
3577
+ placeholder: string;
3578
+ textDisable: string;
3579
+ };
3580
+ focus: {
3581
+ bg: string;
3582
+ border: string;
3583
+ };
3584
+ check: {
3585
+ bg: string;
3586
+ bgHover: string;
3587
+ bgDisable: string;
3588
+ border: string;
3589
+ borderHover: string;
3590
+ borderDisable: string;
3591
+ icon: string;
3592
+ };
3593
+ faint: {
3594
+ bg: string;
3595
+ bgHover: string;
3596
+ border: string;
3597
+ borderHover: string;
3598
+ };
3599
+ slider: {
3600
+ bg: string;
3601
+ bgHover: string;
3602
+ bgDisable: string;
3603
+ };
3604
+ switch: {
3605
+ bg: string;
3606
+ bgHover: string;
3607
+ bgDisable: string;
3608
+ border: string;
3609
+ borderHover: string;
3610
+ borderDisable: string;
3611
+ };
3612
+ knob: {
3613
+ bg: string;
3614
+ bgHover: string;
3615
+ bgActive: string;
3616
+ bgActiveHover: string;
3617
+ bgInactive: string;
3618
+ bgInactiveHover: string;
3619
+ bgDisable: string;
3620
+ };
3621
+ text: {
3622
+ primary: string;
3623
+ disable: string;
3624
+ };
3625
+ link: {
3626
+ primary: string;
3627
+ primaryHover: string;
3628
+ secondary: string;
3629
+ secondaryHover: string;
3630
+ };
3631
+ segmented: {
3632
+ bg: string;
3633
+ bgHover: string;
3634
+ bgActive: string;
3635
+ border: string;
3636
+ borderHover: string;
3637
+ borderActive: string;
3638
+ text: string;
3639
+ textDisable: string;
3640
+ };
3641
+ tagLabel: {
3642
+ product: {
3643
+ bg: string;
3644
+ text: string;
3645
+ textCompact: string;
3646
+ };
3647
+ rarity: {
3648
+ bg: string;
3649
+ text: string;
3650
+ };
3651
+ name: {
3652
+ bg: string;
3653
+ text: string;
3654
+ };
3655
+ account: {
3656
+ bg: string;
3657
+ text: string;
3658
+ textCompact: string;
3659
+ };
3660
+ id: {
3661
+ bg: string;
3662
+ bgSeries: string;
3663
+ textSeries: string;
3664
+ textNumber: string;
3665
+ textCompact: string;
3666
+ };
3667
+ subentity: {
3668
+ bg: string;
3669
+ text: string;
3670
+ };
3671
+ item: {
3672
+ bg: string;
3673
+ text: string;
3674
+ textCompact: string;
3675
+ };
3676
+ };
3677
+ toast: {
3678
+ bg: string;
3679
+ };
3680
+ toggleButton: {
3681
+ bg: string;
3682
+ bgHover: string;
3683
+ bgActive: string;
3684
+ bgDisable: string;
3685
+ border: string;
3686
+ borderHover: string;
3687
+ borderActive: string;
3688
+ borderDisable: string;
3689
+ text: string;
3690
+ textActive: string;
3691
+ textDisable: string;
3692
+ };
3693
+ appButton: {
3694
+ bg: string;
3695
+ bgHover: string;
3696
+ bgPress: string;
3697
+ border: string;
3698
+ borderHover: string;
3699
+ borderPress: string;
3700
+ text: string;
3701
+ textDisable: string;
3702
+ };
3703
+ };
3704
+ };
3705
+ };
3706
+ type ThemeColors = typeof pentagramDark;
3707
+
3708
+ declare const spacing: {
3709
+ xs: number;
3710
+ sm: number;
3711
+ md: number;
3712
+ lg: number;
3713
+ xl: number;
3714
+ /** @deprecated Use `sm` instead (same 8px). Kept for backwards compatibility. */
3715
+ s: number;
3716
+ /** @deprecated Use `md` instead (same 16px). Kept for backwards compatibility. */
3717
+ m: number;
3718
+ /** @deprecated Use `lg` instead (same 24px). Kept for backwards compatibility. */
3719
+ l: number;
3720
+ };
3721
+ declare const radius: {
3722
+ button: number;
3723
+ card: number;
3724
+ contextMenu: number;
3725
+ input: number;
3726
+ tagSmall: number;
3727
+ tagMedium: number;
3728
+ tagLarge: number;
3729
+ avatarSmall: number;
3730
+ avatarLarge: number;
3731
+ avatarCircle: number;
3732
+ };
3733
+ /** Primitive radius scale. Mirrors Figma "Scale / radius/*" variables. */
3734
+ declare const radiusScale: {
3735
+ readonly "25": 2;
3736
+ readonly "50": 4;
3737
+ readonly "75": 6;
3738
+ readonly "100": 8;
3739
+ readonly "150": 12;
3740
+ readonly "200": 16;
3741
+ readonly "250": 20;
3742
+ readonly "300": 24;
3743
+ readonly "350": 28;
3744
+ readonly "400": 32;
3745
+ readonly "999": 999;
3746
+ };
3747
+ /** Primitive border-width scale. Mirrors Figma "Scale / stroke/*" variables. */
3748
+ declare const stroke: {
3749
+ readonly "1": 1;
3750
+ readonly "2": 2;
3751
+ readonly "3": 3;
3752
+ };
3753
+
3754
+ /**
3755
+ * Semantic shape tokens. Mirrors Figma "Theme / Shape" variable collection,
3756
+ * Xsolla Default mode. Values alias into the radiusScale and stroke primitives.
3757
+ */
3758
+ declare const shape: {
3759
+ readonly button: {
3760
+ readonly xl: {
3761
+ readonly borderRadius: 8;
3762
+ readonly borderWidth: 1;
3763
+ };
3764
+ readonly lg: {
3765
+ readonly borderRadius: 8;
3766
+ readonly borderWidth: 1;
3767
+ };
3768
+ readonly md: {
3769
+ readonly borderRadius: 6;
3770
+ readonly borderWidth: 1;
3771
+ };
3772
+ readonly sm: {
3773
+ readonly borderRadius: 4;
3774
+ readonly borderWidth: 1;
3775
+ };
3776
+ readonly xs: {
3777
+ readonly borderRadius: 4;
3778
+ readonly borderWidth: 1;
3779
+ };
3780
+ };
3781
+ readonly checkbox: {
3782
+ readonly xl: {
3783
+ readonly borderRadius: 4;
3784
+ readonly borderWidth: 1;
3785
+ };
3786
+ readonly lg: {
3787
+ readonly borderRadius: 4;
3788
+ readonly borderWidth: 1;
3789
+ };
3790
+ readonly md: {
3791
+ readonly borderRadius: 4;
3792
+ readonly borderWidth: 1;
3793
+ };
3794
+ readonly sm: {
3795
+ readonly borderRadius: 4;
3796
+ readonly borderWidth: 1;
3797
+ };
3798
+ };
3799
+ readonly input: {
3800
+ readonly xl: {
3801
+ readonly borderRadius: 8;
3802
+ readonly borderWidth: 1;
3803
+ };
3804
+ readonly lg: {
3805
+ readonly borderRadius: 8;
3806
+ readonly borderWidth: 1;
3807
+ };
3808
+ readonly md: {
3809
+ readonly borderRadius: 6;
3810
+ readonly borderWidth: 1;
3811
+ };
3812
+ readonly sm: {
3813
+ readonly borderRadius: 4;
3814
+ readonly borderWidth: 1;
3815
+ };
3816
+ readonly xs: {
3817
+ readonly borderRadius: 4;
3818
+ readonly borderWidth: 1;
3819
+ };
3820
+ };
3821
+ readonly segmented: {
3822
+ readonly xl: {
3823
+ readonly borderRadius: 8;
3824
+ readonly borderWidth: 1;
3825
+ };
3826
+ readonly lg: {
3827
+ readonly borderRadius: 8;
3828
+ readonly borderWidth: 1;
3829
+ };
3830
+ readonly md: {
3831
+ readonly borderRadius: 8;
3832
+ readonly borderWidth: 1;
3833
+ };
3834
+ readonly sm: {
3835
+ readonly borderRadius: 4;
3836
+ readonly borderWidth: 1;
3837
+ };
3838
+ };
3839
+ readonly segmentedItem: {
3840
+ readonly xl: {
3841
+ readonly borderRadius: 4;
3842
+ readonly borderWidth: 1;
3843
+ };
3844
+ readonly lg: {
3845
+ readonly borderRadius: 4;
3846
+ readonly borderWidth: 1;
3847
+ };
3848
+ readonly md: {
3849
+ readonly borderRadius: 4;
3850
+ readonly borderWidth: 1;
3851
+ };
3852
+ readonly sm: {
3853
+ readonly borderRadius: 2;
3854
+ readonly borderWidth: 1;
3855
+ };
3856
+ };
3857
+ readonly switch: {
3858
+ readonly xl: {
3859
+ readonly borderRadius: 4;
3860
+ readonly borderWidth: 1;
3861
+ };
3862
+ readonly lg: {
3863
+ readonly borderRadius: 4;
3864
+ readonly borderWidth: 1;
3865
+ };
3866
+ readonly md: {
3867
+ readonly borderRadius: 4;
3868
+ readonly borderWidth: 1;
3869
+ };
3870
+ readonly sm: {
3871
+ readonly borderRadius: 4;
3872
+ readonly borderWidth: 1;
3873
+ };
3874
+ };
3875
+ readonly knob: {
3876
+ readonly xl: {
3065
3877
  readonly borderRadius: 2;
3066
3878
  };
3067
3879
  readonly lg: {
@@ -3127,293 +3939,1120 @@ declare const shape: {
3127
3939
  readonly borderRadius: 4;
3128
3940
  };
3129
3941
  };
3130
- readonly radio: {
3942
+ readonly radio: {
3943
+ readonly xl: {
3944
+ readonly borderRadius: 999;
3945
+ readonly borderWidth: 1;
3946
+ };
3947
+ readonly lg: {
3948
+ readonly borderRadius: 999;
3949
+ readonly borderWidth: 1;
3950
+ };
3951
+ readonly md: {
3952
+ readonly borderRadius: 999;
3953
+ readonly borderWidth: 1;
3954
+ };
3955
+ readonly sm: {
3956
+ readonly borderRadius: 999;
3957
+ readonly borderWidth: 1;
3958
+ };
3959
+ };
3960
+ readonly contextMenu: {
3961
+ readonly xl: {
3962
+ readonly borderRadius: 8;
3963
+ };
3964
+ readonly lg: {
3965
+ readonly borderRadius: 8;
3966
+ };
3967
+ readonly md: {
3968
+ readonly borderRadius: 8;
3969
+ };
3970
+ readonly sm: {
3971
+ readonly borderRadius: 4;
3972
+ };
3973
+ readonly xs: {
3974
+ readonly borderRadius: 4;
3975
+ };
3976
+ };
3977
+ readonly avatar: {
3131
3978
  readonly xl: {
3132
- readonly borderRadius: 999;
3979
+ readonly borderRadius: 8;
3133
3980
  readonly borderWidth: 1;
3134
3981
  };
3135
3982
  readonly lg: {
3136
- readonly borderRadius: 999;
3983
+ readonly borderRadius: 6;
3137
3984
  readonly borderWidth: 1;
3138
3985
  };
3139
3986
  readonly md: {
3140
- readonly borderRadius: 999;
3987
+ readonly borderRadius: 6;
3141
3988
  readonly borderWidth: 1;
3142
3989
  };
3143
3990
  readonly sm: {
3144
- readonly borderRadius: 999;
3991
+ readonly borderRadius: 4;
3992
+ readonly borderWidth: 1;
3993
+ };
3994
+ readonly xs: {
3995
+ readonly borderRadius: 4;
3996
+ readonly borderWidth: 1;
3997
+ };
3998
+ readonly xxs: {
3999
+ readonly borderRadius: 2;
3145
4000
  readonly borderWidth: 1;
3146
4001
  };
3147
4002
  };
3148
- readonly contextMenu: {
4003
+ readonly cell: {
4004
+ readonly borderRadius: 8;
4005
+ readonly borderWidth: 1;
4006
+ };
4007
+ readonly modal: {
4008
+ readonly borderRadius: 8;
4009
+ };
4010
+ readonly toast: {
4011
+ readonly borderRadius: 4;
4012
+ };
4013
+ readonly toggleButtonGroup: {
3149
4014
  readonly xl: {
3150
4015
  readonly borderRadius: 8;
4016
+ readonly borderWidth: 1;
3151
4017
  };
3152
4018
  readonly lg: {
3153
4019
  readonly borderRadius: 8;
4020
+ readonly borderWidth: 1;
3154
4021
  };
3155
4022
  readonly md: {
3156
- readonly borderRadius: 8;
4023
+ readonly borderRadius: 6;
4024
+ readonly borderWidth: 1;
3157
4025
  };
3158
4026
  readonly sm: {
3159
4027
  readonly borderRadius: 4;
4028
+ readonly borderWidth: 1;
3160
4029
  };
3161
4030
  readonly xs: {
3162
4031
  readonly borderRadius: 4;
4032
+ readonly borderWidth: 1;
4033
+ };
4034
+ };
4035
+ readonly tagLabel: {
4036
+ readonly borderRadius: 0;
4037
+ };
4038
+ };
4039
+
4040
+ declare const shadow: {
4041
+ active: string;
4042
+ surface: string;
4043
+ surfaceHover: string;
4044
+ popover: string;
4045
+ modal: string;
4046
+ contextMenu: string;
4047
+ };
4048
+
4049
+ /**
4050
+ * Font family definitions per ProductContext.
4051
+ *
4052
+ * Figma "Font" variable collection defines 3 roles:
4053
+ * - display: heading/display font (Pilat or Pilat Wide)
4054
+ * - compact: body/UI font (Aktiv Grotesk or Montserrat)
4055
+ * - text: paragraph/reading font (same families as compact)
4056
+ *
4057
+ * The `heading` and `body` exports map to these Figma roles:
4058
+ * heading → display
4059
+ * body → compact (also used for text contexts)
4060
+ */
4061
+
4062
+ /** Static fonts object (defaults to B2B for backwards compatibility) */
4063
+ declare const fonts: {
4064
+ heading: string;
4065
+ body: string;
4066
+ /** Paragraph/reading font — Figma `text` role */
4067
+ text: string;
4068
+ /** @deprecated Use `heading` or `body` instead */
4069
+ primary: string;
4070
+ };
4071
+ /** Returns context-aware font families */
4072
+ declare const getFonts: (productContext?: ProductContext) => {
4073
+ heading: string;
4074
+ body: string;
4075
+ /** Paragraph/reading font — Figma `text` role (differs from `body` for corpsite) */
4076
+ text: string;
4077
+ /** @deprecated Use `heading` or `body` instead */
4078
+ primary: string;
4079
+ };
4080
+ declare const typography: {
4081
+ button: {
4082
+ fontFamily: string;
4083
+ fontWeight: string;
4084
+ };
4085
+ };
4086
+
4087
+ /**
4088
+ * Responsive breakpoint definitions for the design system.
4089
+ *
4090
+ * Derived from the Figma "Responsive / Typography" variable collection,
4091
+ * which has three modes: Common, Mobile, Desktop.
4092
+ * Common and Desktop share identical values; Mobile scales down.
4093
+ *
4094
+ * Usage (CSS):
4095
+ * @media (max-width: 767px) { ... } // Mobile
4096
+ * @media (min-width: 768px) { ... } // Desktop
4097
+ *
4098
+ * Usage (JS):
4099
+ * import { breakpoints } from '@xsolla/xui-core';
4100
+ * const isMobile = window.innerWidth < breakpoints.desktop;
4101
+ */
4102
+ declare const breakpoints: {
4103
+ /** Mobile: 0 – 767px */
4104
+ readonly mobile: 0;
4105
+ /** Desktop: 768px and above */
4106
+ readonly desktop: 768;
4107
+ };
4108
+ type BreakpointKey = keyof typeof breakpoints;
4109
+ /**
4110
+ * Max-width media query value for targeting mobile devices.
4111
+ * Use in CSS: `@media (max-width: ${MOBILE_MAX_WIDTH}px)`
4112
+ */
4113
+ declare const MOBILE_MAX_WIDTH: number;
4114
+
4115
+ /**
4116
+ * Responsive typography scale tokens sourced from the Figma
4117
+ * "Responsive / Typography" variable collection.
4118
+ *
4119
+ * Three device modes: Common (default), Mobile, Desktop.
4120
+ * Common and Desktop have identical values. Mobile scales down.
4121
+ *
4122
+ * These are the raw building blocks. Semantic tokens in typography.ts
4123
+ * alias into this scale (e.g., B2B heading/h1/font-size → font-size/650).
4124
+ *
4125
+ * On web, these are injected as CSS custom properties (--xui-font-size-*, --xui-lh-*)
4126
+ * with @media overrides for mobile. Components consume a single CSS variable
4127
+ * and scale automatically by viewport.
4128
+ *
4129
+ * @see {@link ../styles/typography-css.ts} for CSS generation
4130
+ * @see {@link ./breakpoints.ts} for breakpoint definitions
4131
+ */
4132
+ interface ResponsiveValue {
4133
+ common: number;
4134
+ mobile: number;
4135
+ }
4136
+ type ScaleStep = "75" | "100" | "125" | "150" | "175" | "200" | "250" | "300" | "350" | "450" | "550" | "650" | "750";
4137
+ declare const SCALE_STEPS: ScaleStep[];
4138
+ /**
4139
+ * The display/font-size axis extends the base scale with three larger steps
4140
+ * (800/850/900) used by Corpsite display typography. Only `fontSize` and
4141
+ * `lineHeightDisplay` define these — `lineHeightCompact`/`lineHeightText` stop
4142
+ * at 750, mirroring the Figma "Responsive / Typography" collection.
4143
+ */
4144
+ type DisplayScaleStep = ScaleStep | "800" | "850" | "900";
4145
+ declare const DISPLAY_SCALE_STEPS: DisplayScaleStep[];
4146
+ /** Font-size scale: 16 steps from 10px to 96px */
4147
+ declare const fontSize: Record<DisplayScaleStep, ResponsiveValue>;
4148
+ /** Line-height/display: tight line-heights for headings (roughly 1:1 with font-size) */
4149
+ declare const lineHeightDisplay: Record<DisplayScaleStep, ResponsiveValue>;
4150
+ /** Line-height/compact: moderate line-heights for UI body text */
4151
+ declare const lineHeightCompact: Record<ScaleStep, ResponsiveValue>;
4152
+ /** Line-height/text: generous line-heights for paragraphs and reading text */
4153
+ declare const lineHeightText: Record<ScaleStep, ResponsiveValue>;
4154
+ declare const responsiveTypographyScale: {
4155
+ readonly fontSize: Record<DisplayScaleStep, ResponsiveValue>;
4156
+ readonly lineHeightDisplay: Record<DisplayScaleStep, ResponsiveValue>;
4157
+ readonly lineHeightCompact: Record<ScaleStep, ResponsiveValue>;
4158
+ readonly lineHeightText: Record<ScaleStep, ResponsiveValue>;
4159
+ };
4160
+
4161
+ declare const isWeb: boolean;
4162
+ declare const isNative: boolean;
4163
+ declare const isIOS: boolean;
4164
+ declare const isAndroid: boolean;
4165
+
4166
+ /**
4167
+ * React component that loads the toolkit's font-face declarations.
4168
+ * Drop-in for any framework — works in Next.js, Vite, CRA, etc.
4169
+ *
4170
+ * Renders nothing to the DOM. Injects a single `<style>` tag into `<head>` on mount.
4171
+ */
4172
+ declare const FontLoader: React.FC;
4173
+
4174
+ /**
4175
+ * @font-face CSS for all toolkit fonts, loaded from Xsolla CDN.
4176
+ *
4177
+ * Pilat Wide — B2C heading/display font, weights 600, 700, 800.
4178
+ * Pilat — B2B heading/display font, weights 300, 400, 500, 600, 700, 800.
4179
+ * Aktiv Grotesk — body font for all contexts, weights 400, 500, 600.
4180
+ * Four editions loaded via unicode-range: Latin, CN/SG, JP, KR.
4181
+ * The browser downloads only the subset needed for characters on the page.
4182
+ *
4183
+ * Weight coverage notes (intentional gaps — licensing constraint, Xsolla
4184
+ * does not hold rights to the omitted cuts):
4185
+ * - Pilat Wide 400 — not licensed. Components using weight 400 on Pilat
4186
+ * Wide will render at 600 via browser substitution (heavier).
4187
+ * - Aktiv Grotesk 300 — not licensed. (No component currently requests it.)
4188
+ * - Aktiv Grotesk 700 — not licensed. Substitutes to 600 (lighter).
4189
+ * - CJK editions (cn-sg, jp, kr) — 400/500/600 only; no 700/800.
4190
+ * Heavy weights on CJK text fall back to the Latin file (no glyphs)
4191
+ * and then to the system fallback stack.
4192
+ *
4193
+ * Do not add @font-face entries for the omitted weights without first
4194
+ * confirming the licence has been extended.
4195
+ */
4196
+ declare const fontFacesCSS = "\n /* \u2500\u2500 Pilat Wide (B2C headings) \u2500\u2500 */\n\n @font-face {\n font-family: 'Pilat Wide';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/pilat-wide/pilat-wide-600.woff2') format('woff2');\n font-weight: 600;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat Wide';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/pilat-wide/pilat-wide-700.woff2') format('woff2');\n font-weight: 700;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat Wide';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/pilat-wide/pilat-wide-800.woff2') format('woff2');\n font-weight: 800;\n font-style: normal;\n font-display: swap;\n }\n\n /* \u2500\u2500 Pilat (B2B headings) \u2500\u2500 */\n\n @font-face {\n font-family: 'Pilat';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/pilat/pilat-300.woff2') format('woff2');\n font-weight: 300;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/pilat/pilat-400.woff2') format('woff2');\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/pilat/pilat-500.woff2') format('woff2');\n font-weight: 500;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/pilat/pilat-600.woff2') format('woff2');\n font-weight: 600;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/pilat/pilat-700.woff2') format('woff2');\n font-weight: 700;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/pilat/pilat-800.woff2') format('woff2');\n font-weight: 800;\n font-style: normal;\n font-display: swap;\n }\n\n /* \u2500\u2500 Aktiv Grotesk (body) \u2014 Latin \u2500\u2500 */\n\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/latin/aktiv-grotesk-latin-400.woff2') format('woff2');\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n unicode-range: U+0000-024F, U+0250-02AF, U+0300-036F, U+0370-03FF, U+0400-04FF, U+2000-206F, U+20A0-20CF, U+2100-214F;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/latin/aktiv-grotesk-latin-500.woff2') format('woff2');\n font-weight: 500;\n font-style: normal;\n font-display: swap;\n unicode-range: U+0000-024F, U+0250-02AF, U+0300-036F, U+0370-03FF, U+0400-04FF, U+2000-206F, U+20A0-20CF, U+2100-214F;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/latin/aktiv-grotesk-latin-600.woff2') format('woff2');\n font-weight: 600;\n font-style: normal;\n font-display: swap;\n unicode-range: U+0000-024F, U+0250-02AF, U+0300-036F, U+0370-03FF, U+0400-04FF, U+2000-206F, U+20A0-20CF, U+2100-214F;\n }\n\n /* \u2500\u2500 Aktiv Grotesk (body) \u2014 Chinese / SG \u2500\u2500 */\n\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/cn-sg/aktiv-grotesk-cn-sg-400.woff2') format('woff2');\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n unicode-range: U+3000-303F, U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+FE30-FE4F, U+FF00-FFEF;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/cn-sg/aktiv-grotesk-cn-sg-500.woff2') format('woff2');\n font-weight: 500;\n font-style: normal;\n font-display: swap;\n unicode-range: U+3000-303F, U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+FE30-FE4F, U+FF00-FFEF;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/cn-sg/aktiv-grotesk-cn-sg-600.woff2') format('woff2');\n font-weight: 600;\n font-style: normal;\n font-display: swap;\n unicode-range: U+3000-303F, U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+FE30-FE4F, U+FF00-FFEF;\n }\n\n /* \u2500\u2500 Aktiv Grotesk (body) \u2014 Japanese \u2500\u2500 */\n\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/jp/aktiv-grotesk-jp-400.woff2') format('woff2');\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n unicode-range: U+3000-303F, U+3040-309F, U+30A0-30FF, U+31F0-31FF, U+FF65-FF9F;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/jp/aktiv-grotesk-jp-500.woff2') format('woff2');\n font-weight: 500;\n font-style: normal;\n font-display: swap;\n unicode-range: U+3000-303F, U+3040-309F, U+30A0-30FF, U+31F0-31FF, U+FF65-FF9F;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/jp/aktiv-grotesk-jp-600.woff2') format('woff2');\n font-weight: 600;\n font-style: normal;\n font-display: swap;\n unicode-range: U+3000-303F, U+3040-309F, U+30A0-30FF, U+31F0-31FF, U+FF65-FF9F;\n }\n\n /* \u2500\u2500 Aktiv Grotesk (body) \u2014 Korean \u2500\u2500 */\n\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/kr/aktiv-grotesk-kr-400.woff2') format('woff2');\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n unicode-range: U+1100-11FF, U+3130-318F, U+A960-A97F, U+AC00-D7A3, U+D7B0-D7FF, U+FFA0-FFDC;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/kr/aktiv-grotesk-kr-500.woff2') format('woff2');\n font-weight: 500;\n font-style: normal;\n font-display: swap;\n unicode-range: U+1100-11FF, U+3130-318F, U+A960-A97F, U+AC00-D7A3, U+D7B0-D7FF, U+FFA0-FFDC;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/kr/aktiv-grotesk-kr-600.woff2') format('woff2');\n font-weight: 600;\n font-style: normal;\n font-display: swap;\n unicode-range: U+1100-11FF, U+3130-318F, U+A960-A97F, U+AC00-D7A3, U+D7B0-D7FF, U+FFA0-FFDC;\n }\n";
4197
+
4198
+ declare const TypographyStyleLoader: React.FC;
4199
+
4200
+ /**
4201
+ * Generates the CSS custom properties string for responsive typography.
4202
+ *
4203
+ * Produces two blocks:
4204
+ * 1. :root — Desktop/Common values (the default)
4205
+ * 2. @media (max-width: 767px) :root — Mobile overrides
4206
+ *
4207
+ * CSS variable naming convention (mirrors Figma variable names):
4208
+ * --xui-font-size-{step} → e.g. --xui-font-size-150: 16px
4209
+ * --xui-lh-display-{step} → e.g. --xui-lh-display-150: 16px
4210
+ * --xui-lh-compact-{step} → e.g. --xui-lh-compact-150: 20px
4211
+ * --xui-lh-text-{step} → e.g. --xui-lh-text-150: 22px
4212
+ *
4213
+ * Consumers can use these in CSS or styled-components:
4214
+ * font-size: var(--xui-font-size-350);
4215
+ * line-height: var(--xui-lh-compact-350);
4216
+ *
4217
+ * @see {@link ../tokens/responsive-typography.ts} for raw token data
4218
+ * @see {@link ../tokens/breakpoints.ts} for breakpoint definitions
4219
+ */
4220
+ /**
4221
+ * Returns the full CSS string for responsive typography custom properties.
4222
+ * The result is memoized — safe to call multiple times.
4223
+ */
4224
+ declare function generateTypographyCSS(): string;
4225
+ /**
4226
+ * Returns the CSS variable name for a given font-size scale step.
4227
+ * Useful when the Typography component needs to reference a CSS variable.
4228
+ *
4229
+ * @example cssVar.fontSize("350") → "var(--xui-font-size-350)"
4230
+ */
4231
+ declare const cssVar: {
4232
+ readonly fontSize: (step: string) => string;
4233
+ readonly lhDisplay: (step: string) => string;
4234
+ readonly lhCompact: (step: string) => string;
4235
+ readonly lhText: (step: string) => string;
4236
+ };
4237
+
4238
+ type ThemeMode = "dark" | "light" | "pentagram-dark" | "pentagram-light" | "ltg-dark" | "blueprints" | "corpsite-dark" | "corpsite-light";
4239
+ /**
4240
+ * Shared component size scale used across the toolkit (button, avatar, input,
4241
+ * select, tag, badge, …). Import this instead of re-declaring the union inline.
4242
+ *
4243
+ * ```tsx
4244
+ * import type { ComponentSize } from "@xsolla/xui-core";
4245
+ *
4246
+ * interface MyProps { size?: ComponentSize; }
4247
+ * ```
4248
+ */
4249
+ type ComponentSize = "xs" | "sm" | "md" | "lg" | "xl";
4250
+ declare const themeConfig: (mode?: ThemeMode, productContext?: ProductContext) => {
4251
+ colors: {
4252
+ background: {
4253
+ primary: string;
4254
+ secondary: string;
4255
+ brand: {
4256
+ primary: string;
4257
+ secondary: string;
4258
+ };
4259
+ brandExtra: {
4260
+ primary: string;
4261
+ secondary: string;
4262
+ };
4263
+ inverse: string;
4264
+ static: {
4265
+ dark: string;
4266
+ light: string;
4267
+ };
4268
+ success: {
4269
+ primary: string;
4270
+ secondary: string;
4271
+ };
4272
+ warning: {
4273
+ primary: string;
4274
+ secondary: string;
4275
+ };
4276
+ alert: {
4277
+ primary: string;
4278
+ secondary: string;
4279
+ };
4280
+ neutral: {
4281
+ primary: string;
4282
+ secondary: string;
4283
+ };
3163
4284
  };
3164
- };
3165
- readonly avatar: {
3166
- readonly xl: {
3167
- readonly borderRadius: 8;
3168
- readonly borderWidth: 2;
4285
+ content: {
4286
+ primary: string;
4287
+ secondary: string;
4288
+ tertiary: string;
4289
+ brand: {
4290
+ primary: string;
4291
+ secondary: string;
4292
+ };
4293
+ brandExtra: {
4294
+ primary: string;
4295
+ secondary: string;
4296
+ };
4297
+ inverse: string;
4298
+ static: {
4299
+ light: string;
4300
+ dark: string;
4301
+ };
4302
+ success: {
4303
+ primary: string;
4304
+ secondary: string;
4305
+ };
4306
+ warning: {
4307
+ primary: string;
4308
+ secondary: string;
4309
+ };
4310
+ alert: {
4311
+ primary: string;
4312
+ secondary: string;
4313
+ };
4314
+ neutral: {
4315
+ primary: string;
4316
+ secondary: string;
4317
+ };
4318
+ on: {
4319
+ brand: string;
4320
+ brandExtra: string;
4321
+ success: string;
4322
+ warning: string;
4323
+ alert: string;
4324
+ neutral: string;
4325
+ };
3169
4326
  };
3170
- readonly lg: {
3171
- readonly borderRadius: 6;
3172
- readonly borderWidth: 2;
4327
+ border: {
4328
+ primary: string;
4329
+ secondary: string;
4330
+ brand: string;
4331
+ brandExtra: string;
4332
+ inverse: string;
4333
+ success: string;
4334
+ warning: string;
4335
+ alert: string;
4336
+ neutral: string;
3173
4337
  };
3174
- readonly md: {
3175
- readonly borderRadius: 6;
3176
- readonly borderWidth: 2;
4338
+ overlay: {
4339
+ mono: string;
4340
+ brand: string;
4341
+ brandExtra: string;
4342
+ success: string;
4343
+ warning: string;
4344
+ alert: string;
4345
+ neutral: string;
4346
+ monoHover: string;
3177
4347
  };
3178
- readonly sm: {
3179
- readonly borderRadius: 4;
3180
- readonly borderWidth: 2;
4348
+ layer: {
4349
+ scrim: string;
4350
+ float: string;
3181
4351
  };
3182
- readonly xs: {
3183
- readonly borderRadius: 4;
3184
- readonly borderWidth: 2;
4352
+ control: {
4353
+ brand: {
4354
+ primary: {
4355
+ bg: string;
4356
+ bgHover: string;
4357
+ bgPress: string;
4358
+ bgDisable: string;
4359
+ border: string;
4360
+ borderHover: string;
4361
+ borderPress: string;
4362
+ borderDisable: string;
4363
+ };
4364
+ secondary: {
4365
+ bg: string;
4366
+ bgHover: string;
4367
+ bgPress: string;
4368
+ border: string;
4369
+ borderHover: string;
4370
+ borderPress: string;
4371
+ };
4372
+ tertiary: {
4373
+ bg: string;
4374
+ bgHover: string;
4375
+ bgPress: string;
4376
+ border: string;
4377
+ borderHover: string;
4378
+ borderPress: string;
4379
+ };
4380
+ text: {
4381
+ primary: string;
4382
+ secondary: string;
4383
+ tertiary: string;
4384
+ disable: string;
4385
+ ghost: string;
4386
+ };
4387
+ ghost: {
4388
+ bg: string;
4389
+ bgHover: string;
4390
+ bgPress: string;
4391
+ border: string;
4392
+ borderHover: string;
4393
+ borderPress: string;
4394
+ };
4395
+ };
4396
+ mono: {
4397
+ primary: {
4398
+ bg: string;
4399
+ bgHover: string;
4400
+ bgPress: string;
4401
+ border: string;
4402
+ borderHover: string;
4403
+ borderPress: string;
4404
+ };
4405
+ secondary: {
4406
+ bg: string;
4407
+ bgHover: string;
4408
+ bgPress: string;
4409
+ border: string;
4410
+ borderHover: string;
4411
+ borderPress: string;
4412
+ };
4413
+ tertiary: {
4414
+ bg: string;
4415
+ bgHover: string;
4416
+ bgPress: string;
4417
+ border: string;
4418
+ borderHover: string;
4419
+ borderPress: string;
4420
+ };
4421
+ text: {
4422
+ primary: string;
4423
+ secondary: string;
4424
+ tertiary: string;
4425
+ ghost: string;
4426
+ };
4427
+ ghost: {
4428
+ bg: string;
4429
+ bgHover: string;
4430
+ bgPress: string;
4431
+ border: string;
4432
+ borderHover: string;
4433
+ borderPress: string;
4434
+ };
4435
+ };
4436
+ brandExtra: {
4437
+ primary: {
4438
+ bg: string;
4439
+ bgHover: string;
4440
+ bgPress: string;
4441
+ border: string;
4442
+ borderHover: string;
4443
+ borderPress: string;
4444
+ };
4445
+ secondary: {
4446
+ bg: string;
4447
+ bgHover: string;
4448
+ bgPress: string;
4449
+ border: string;
4450
+ borderHover: string;
4451
+ borderPress: string;
4452
+ };
4453
+ tertiary: {
4454
+ bg: string;
4455
+ bgHover: string;
4456
+ bgPress: string;
4457
+ border: string;
4458
+ borderHover: string;
4459
+ borderPress: string;
4460
+ };
4461
+ text: {
4462
+ primary: string;
4463
+ secondary: string;
4464
+ tertiary: string;
4465
+ ghost: string;
4466
+ };
4467
+ ghost: {
4468
+ bg: string;
4469
+ bgHover: string;
4470
+ bgPress: string;
4471
+ border: string;
4472
+ borderHover: string;
4473
+ borderPress: string;
4474
+ };
4475
+ };
4476
+ alert: {
4477
+ bg: string;
4478
+ border: string;
4479
+ primary: {
4480
+ bg: string;
4481
+ bgHover: string;
4482
+ bgPress: string;
4483
+ border: string;
4484
+ borderHover: string;
4485
+ borderPress: string;
4486
+ };
4487
+ secondary: {
4488
+ bg: string;
4489
+ bgHover: string;
4490
+ bgPress: string;
4491
+ border: string;
4492
+ borderHover: string;
4493
+ borderPress: string;
4494
+ };
4495
+ tertiary: {
4496
+ bg: string;
4497
+ bgHover: string;
4498
+ bgPress: string;
4499
+ border: string;
4500
+ borderHover: string;
4501
+ borderPress: string;
4502
+ };
4503
+ text: {
4504
+ primary: string;
4505
+ secondary: string;
4506
+ tertiary: string;
4507
+ ghost: string;
4508
+ };
4509
+ ghost: {
4510
+ bg: string;
4511
+ bgHover: string;
4512
+ bgPress: string;
4513
+ border: string;
4514
+ borderHover: string;
4515
+ borderPress: string;
4516
+ };
4517
+ };
4518
+ input: {
4519
+ bg: string;
4520
+ bgHover: string;
4521
+ bgDisable: string;
4522
+ border: string;
4523
+ borderHover: string;
4524
+ borderDisable: string;
4525
+ text: string;
4526
+ placeholder: string;
4527
+ textDisable: string;
4528
+ };
4529
+ focus: {
4530
+ bg: string;
4531
+ border: string;
4532
+ };
4533
+ check: {
4534
+ bg: string;
4535
+ bgHover: string;
4536
+ bgDisable: string;
4537
+ border: string;
4538
+ borderHover: string;
4539
+ borderDisable: string;
4540
+ icon: string;
4541
+ };
4542
+ faint: {
4543
+ bg: string;
4544
+ bgHover: string;
4545
+ border: string;
4546
+ borderHover: string;
4547
+ };
4548
+ slider: {
4549
+ bg: string;
4550
+ bgHover: string;
4551
+ bgDisable: string;
4552
+ };
4553
+ switch: {
4554
+ bg: string;
4555
+ bgHover: string;
4556
+ bgDisable: string;
4557
+ border: string;
4558
+ borderHover: string;
4559
+ borderDisable: string;
4560
+ };
4561
+ knob: {
4562
+ bg: string;
4563
+ bgHover: string;
4564
+ bgActive: string;
4565
+ bgActiveHover: string;
4566
+ bgInactive: string;
4567
+ bgInactiveHover: string;
4568
+ bgDisable: string;
4569
+ };
4570
+ text: {
4571
+ primary: string;
4572
+ disable: string;
4573
+ };
4574
+ link: {
4575
+ primary: string;
4576
+ primaryHover: string;
4577
+ secondary: string;
4578
+ secondaryHover: string;
4579
+ };
4580
+ segmented: {
4581
+ bg: string;
4582
+ bgHover: string;
4583
+ bgActive: string;
4584
+ border: string;
4585
+ borderHover: string;
4586
+ borderActive: string;
4587
+ text: string;
4588
+ textDisable: string;
4589
+ };
4590
+ tagLabel: {
4591
+ product: {
4592
+ bg: string;
4593
+ text: string;
4594
+ textCompact: string;
4595
+ };
4596
+ rarity: {
4597
+ bg: string;
4598
+ text: string;
4599
+ };
4600
+ name: {
4601
+ bg: string;
4602
+ text: string;
4603
+ };
4604
+ account: {
4605
+ bg: string;
4606
+ text: string;
4607
+ textCompact: string;
4608
+ };
4609
+ id: {
4610
+ bg: string;
4611
+ bgSeries: string;
4612
+ textSeries: string;
4613
+ textNumber: string;
4614
+ textCompact: string;
4615
+ };
4616
+ subentity: {
4617
+ bg: string;
4618
+ text: string;
4619
+ };
4620
+ item: {
4621
+ bg: string;
4622
+ text: string;
4623
+ textCompact: string;
4624
+ };
4625
+ };
4626
+ toast: {
4627
+ bg: string;
4628
+ };
4629
+ toggleButton: {
4630
+ bg: string;
4631
+ bgHover: string;
4632
+ bgActive: string;
4633
+ bgDisable: string;
4634
+ border: string;
4635
+ borderHover: string;
4636
+ borderActive: string;
4637
+ borderDisable: string;
4638
+ text: string;
4639
+ textActive: string;
4640
+ textDisable: string;
4641
+ };
4642
+ appButton: {
4643
+ bg: string;
4644
+ bgHover: string;
4645
+ bgPress: string;
4646
+ border: string;
4647
+ borderHover: string;
4648
+ borderPress: string;
4649
+ text: string;
4650
+ textDisable: string;
4651
+ };
3185
4652
  };
3186
- readonly xxs: {
3187
- readonly borderRadius: 2;
3188
- readonly borderWidth: 2;
4653
+ } | {
4654
+ background: {
4655
+ primary: string;
4656
+ secondary: string;
4657
+ brand: {
4658
+ primary: string;
4659
+ secondary: string;
4660
+ };
4661
+ brandExtra: {
4662
+ primary: string;
4663
+ secondary: string;
4664
+ };
4665
+ inverse: string;
4666
+ static: {
4667
+ dark: string;
4668
+ light: string;
4669
+ };
4670
+ success: {
4671
+ primary: string;
4672
+ secondary: string;
4673
+ };
4674
+ warning: {
4675
+ primary: string;
4676
+ secondary: string;
4677
+ };
4678
+ alert: {
4679
+ primary: string;
4680
+ secondary: string;
4681
+ };
4682
+ neutral: {
4683
+ primary: string;
4684
+ secondary: string;
4685
+ };
3189
4686
  };
3190
- };
3191
- readonly modal: {
3192
- readonly borderRadius: 8;
3193
- };
3194
- readonly toast: {
3195
- readonly borderRadius: 4;
3196
- };
3197
- readonly toggleButtonGroup: {
3198
- readonly xl: {
3199
- readonly borderRadius: 8;
3200
- readonly borderWidth: 1;
4687
+ content: {
4688
+ primary: string;
4689
+ secondary: string;
4690
+ tertiary: string;
4691
+ brand: {
4692
+ primary: string;
4693
+ secondary: string;
4694
+ };
4695
+ brandExtra: {
4696
+ primary: string;
4697
+ secondary: string;
4698
+ };
4699
+ inverse: string;
4700
+ static: {
4701
+ light: string;
4702
+ dark: string;
4703
+ };
4704
+ success: {
4705
+ primary: string;
4706
+ secondary: string;
4707
+ };
4708
+ warning: {
4709
+ primary: string;
4710
+ secondary: string;
4711
+ };
4712
+ alert: {
4713
+ primary: string;
4714
+ secondary: string;
4715
+ };
4716
+ neutral: {
4717
+ primary: string;
4718
+ secondary: string;
4719
+ };
4720
+ on: {
4721
+ brand: string;
4722
+ brandExtra: string;
4723
+ success: string;
4724
+ warning: string;
4725
+ alert: string;
4726
+ neutral: string;
4727
+ };
3201
4728
  };
3202
- readonly lg: {
3203
- readonly borderRadius: 8;
3204
- readonly borderWidth: 1;
4729
+ border: {
4730
+ primary: string;
4731
+ secondary: string;
4732
+ brand: string;
4733
+ brandExtra: string;
4734
+ inverse: string;
4735
+ success: string;
4736
+ warning: string;
4737
+ alert: string;
4738
+ neutral: string;
3205
4739
  };
3206
- readonly md: {
3207
- readonly borderRadius: 6;
3208
- readonly borderWidth: 1;
4740
+ overlay: {
4741
+ mono: string;
4742
+ brand: string;
4743
+ brandExtra: string;
4744
+ success: string;
4745
+ warning: string;
4746
+ alert: string;
4747
+ neutral: string;
4748
+ monoHover: string;
3209
4749
  };
3210
- readonly sm: {
3211
- readonly borderRadius: 4;
3212
- readonly borderWidth: 1;
4750
+ layer: {
4751
+ scrim: string;
4752
+ float: string;
3213
4753
  };
3214
- readonly xs: {
3215
- readonly borderRadius: 4;
3216
- readonly borderWidth: 1;
4754
+ control: {
4755
+ brand: {
4756
+ primary: {
4757
+ bg: string;
4758
+ bgHover: string;
4759
+ bgPress: string;
4760
+ bgDisable: string;
4761
+ border: string;
4762
+ borderHover: string;
4763
+ borderPress: string;
4764
+ borderDisable: string;
4765
+ };
4766
+ secondary: {
4767
+ bg: string;
4768
+ bgHover: string;
4769
+ bgPress: string;
4770
+ border: string;
4771
+ borderHover: string;
4772
+ borderPress: string;
4773
+ };
4774
+ tertiary: {
4775
+ bg: string;
4776
+ bgHover: string;
4777
+ bgPress: string;
4778
+ border: string;
4779
+ borderHover: string;
4780
+ borderPress: string;
4781
+ };
4782
+ text: {
4783
+ primary: string;
4784
+ secondary: string;
4785
+ tertiary: string;
4786
+ disable: string;
4787
+ ghost: string;
4788
+ };
4789
+ ghost: {
4790
+ bg: string;
4791
+ bgHover: string;
4792
+ bgPress: string;
4793
+ border: string;
4794
+ borderHover: string;
4795
+ borderPress: string;
4796
+ };
4797
+ };
4798
+ mono: {
4799
+ primary: {
4800
+ bg: string;
4801
+ bgHover: string;
4802
+ bgPress: string;
4803
+ border: string;
4804
+ borderHover: string;
4805
+ borderPress: string;
4806
+ };
4807
+ secondary: {
4808
+ bg: string;
4809
+ bgHover: string;
4810
+ bgPress: string;
4811
+ border: string;
4812
+ borderHover: string;
4813
+ borderPress: string;
4814
+ };
4815
+ tertiary: {
4816
+ bg: string;
4817
+ bgHover: string;
4818
+ bgPress: string;
4819
+ border: string;
4820
+ borderHover: string;
4821
+ borderPress: string;
4822
+ };
4823
+ text: {
4824
+ primary: string;
4825
+ secondary: string;
4826
+ tertiary: string;
4827
+ ghost: string;
4828
+ };
4829
+ ghost: {
4830
+ bg: string;
4831
+ bgHover: string;
4832
+ bgPress: string;
4833
+ border: string;
4834
+ borderHover: string;
4835
+ borderPress: string;
4836
+ };
4837
+ };
4838
+ brandExtra: {
4839
+ primary: {
4840
+ bg: string;
4841
+ bgHover: string;
4842
+ bgPress: string;
4843
+ border: string;
4844
+ borderHover: string;
4845
+ borderPress: string;
4846
+ };
4847
+ secondary: {
4848
+ bg: string;
4849
+ bgHover: string;
4850
+ bgPress: string;
4851
+ border: string;
4852
+ borderHover: string;
4853
+ borderPress: string;
4854
+ };
4855
+ tertiary: {
4856
+ bg: string;
4857
+ bgHover: string;
4858
+ bgPress: string;
4859
+ border: string;
4860
+ borderHover: string;
4861
+ borderPress: string;
4862
+ };
4863
+ text: {
4864
+ primary: string;
4865
+ secondary: string;
4866
+ tertiary: string;
4867
+ ghost: string;
4868
+ };
4869
+ ghost: {
4870
+ bg: string;
4871
+ bgHover: string;
4872
+ bgPress: string;
4873
+ border: string;
4874
+ borderHover: string;
4875
+ borderPress: string;
4876
+ };
4877
+ };
4878
+ alert: {
4879
+ bg: string;
4880
+ border: string;
4881
+ primary: {
4882
+ bg: string;
4883
+ bgHover: string;
4884
+ bgPress: string;
4885
+ border: string;
4886
+ borderHover: string;
4887
+ borderPress: string;
4888
+ };
4889
+ secondary: {
4890
+ bg: string;
4891
+ bgHover: string;
4892
+ bgPress: string;
4893
+ border: string;
4894
+ borderHover: string;
4895
+ borderPress: string;
4896
+ };
4897
+ tertiary: {
4898
+ bg: string;
4899
+ bgHover: string;
4900
+ bgPress: string;
4901
+ border: string;
4902
+ borderHover: string;
4903
+ borderPress: string;
4904
+ };
4905
+ text: {
4906
+ primary: string;
4907
+ secondary: string;
4908
+ tertiary: string;
4909
+ ghost: string;
4910
+ };
4911
+ ghost: {
4912
+ bg: string;
4913
+ bgHover: string;
4914
+ bgPress: string;
4915
+ border: string;
4916
+ borderHover: string;
4917
+ borderPress: string;
4918
+ };
4919
+ };
4920
+ input: {
4921
+ bg: string;
4922
+ bgHover: string;
4923
+ bgDisable: string;
4924
+ border: string;
4925
+ borderHover: string;
4926
+ borderDisable: string;
4927
+ text: string;
4928
+ placeholder: string;
4929
+ textDisable: string;
4930
+ };
4931
+ focus: {
4932
+ bg: string;
4933
+ border: string;
4934
+ };
4935
+ check: {
4936
+ bg: string;
4937
+ bgHover: string;
4938
+ bgDisable: string;
4939
+ border: string;
4940
+ borderHover: string;
4941
+ borderDisable: string;
4942
+ icon: string;
4943
+ };
4944
+ faint: {
4945
+ bg: string;
4946
+ bgHover: string;
4947
+ border: string;
4948
+ borderHover: string;
4949
+ };
4950
+ slider: {
4951
+ bg: string;
4952
+ bgHover: string;
4953
+ bgDisable: string;
4954
+ };
4955
+ switch: {
4956
+ bg: string;
4957
+ bgHover: string;
4958
+ bgDisable: string;
4959
+ border: string;
4960
+ borderHover: string;
4961
+ borderDisable: string;
4962
+ };
4963
+ knob: {
4964
+ bg: string;
4965
+ bgHover: string;
4966
+ bgActive: string;
4967
+ bgActiveHover: string;
4968
+ bgInactive: string;
4969
+ bgInactiveHover: string;
4970
+ bgDisable: string;
4971
+ };
4972
+ text: {
4973
+ primary: string;
4974
+ disable: string;
4975
+ };
4976
+ link: {
4977
+ primary: string;
4978
+ primaryHover: string;
4979
+ secondary: string;
4980
+ secondaryHover: string;
4981
+ };
4982
+ segmented: {
4983
+ bg: string;
4984
+ bgHover: string;
4985
+ bgActive: string;
4986
+ border: string;
4987
+ borderHover: string;
4988
+ borderActive: string;
4989
+ text: string;
4990
+ textDisable: string;
4991
+ };
4992
+ tagLabel: {
4993
+ product: {
4994
+ bg: string;
4995
+ text: string;
4996
+ textCompact: string;
4997
+ };
4998
+ rarity: {
4999
+ bg: string;
5000
+ text: string;
5001
+ };
5002
+ name: {
5003
+ bg: string;
5004
+ text: string;
5005
+ };
5006
+ account: {
5007
+ bg: string;
5008
+ text: string;
5009
+ textCompact: string;
5010
+ };
5011
+ id: {
5012
+ bg: string;
5013
+ bgSeries: string;
5014
+ textSeries: string;
5015
+ textNumber: string;
5016
+ textCompact: string;
5017
+ };
5018
+ subentity: {
5019
+ bg: string;
5020
+ text: string;
5021
+ };
5022
+ item: {
5023
+ bg: string;
5024
+ text: string;
5025
+ textCompact: string;
5026
+ };
5027
+ };
5028
+ toast: {
5029
+ bg: string;
5030
+ };
5031
+ toggleButton: {
5032
+ bg: string;
5033
+ bgHover: string;
5034
+ bgActive: string;
5035
+ bgDisable: string;
5036
+ border: string;
5037
+ borderHover: string;
5038
+ borderActive: string;
5039
+ borderDisable: string;
5040
+ text: string;
5041
+ textActive: string;
5042
+ textDisable: string;
5043
+ };
5044
+ appButton: {
5045
+ bg: string;
5046
+ bgHover: string;
5047
+ bgPress: string;
5048
+ border: string;
5049
+ borderHover: string;
5050
+ borderPress: string;
5051
+ text: string;
5052
+ textDisable: string;
5053
+ };
3217
5054
  };
3218
- };
3219
- readonly tagLabel: {
3220
- readonly borderRadius: 0;
3221
- };
3222
- };
3223
-
3224
- declare const shadow: {
3225
- active: string;
3226
- surface: string;
3227
- surfaceHover: string;
3228
- popover: string;
3229
- modal: string;
3230
- contextMenu: string;
3231
- };
3232
-
3233
- /**
3234
- * Font family definitions per ProductContext.
3235
- *
3236
- * Figma "Font" variable collection defines 3 roles:
3237
- * - display: heading/display font (Pilat or Pilat Wide)
3238
- * - compact: body/UI font (Aktiv Grotesk or Montserrat)
3239
- * - text: paragraph/reading font (same families as compact)
3240
- *
3241
- * The `heading` and `body` exports map to these Figma roles:
3242
- * heading → display
3243
- * body → compact (also used for text contexts)
3244
- */
3245
-
3246
- /** Static fonts object (defaults to B2B for backwards compatibility) */
3247
- declare const fonts: {
3248
- heading: string;
3249
- body: string;
3250
- /** Paragraph/reading font — same families as body */
3251
- text: string;
3252
- /** @deprecated Use `heading` or `body` instead */
3253
- primary: string;
3254
- };
3255
- /** Returns context-aware font families */
3256
- declare const getFonts: (productContext?: ProductContext) => {
3257
- heading: string;
3258
- body: string;
3259
- /** Paragraph/reading font — same families as body */
3260
- text: string;
3261
- /** @deprecated Use `heading` or `body` instead */
3262
- primary: string;
3263
- };
3264
- declare const typography: {
3265
- button: {
3266
- fontFamily: string;
3267
- fontWeight: string;
3268
- };
3269
- };
3270
-
3271
- /**
3272
- * Responsive breakpoint definitions for the design system.
3273
- *
3274
- * Derived from the Figma "Responsive / Typography" variable collection,
3275
- * which has three modes: Common, Mobile, Desktop.
3276
- * Common and Desktop share identical values; Mobile scales down.
3277
- *
3278
- * Usage (CSS):
3279
- * @media (max-width: 767px) { ... } // Mobile
3280
- * @media (min-width: 768px) { ... } // Desktop
3281
- *
3282
- * Usage (JS):
3283
- * import { breakpoints } from '@xsolla/xui-core';
3284
- * const isMobile = window.innerWidth < breakpoints.desktop;
3285
- */
3286
- declare const breakpoints: {
3287
- /** Mobile: 0 – 767px */
3288
- readonly mobile: 0;
3289
- /** Desktop: 768px and above */
3290
- readonly desktop: 768;
3291
- };
3292
- type BreakpointKey = keyof typeof breakpoints;
3293
- /**
3294
- * Max-width media query value for targeting mobile devices.
3295
- * Use in CSS: `@media (max-width: ${MOBILE_MAX_WIDTH}px)`
3296
- */
3297
- declare const MOBILE_MAX_WIDTH: number;
3298
-
3299
- /**
3300
- * Responsive typography scale tokens sourced from the Figma
3301
- * "Responsive / Typography" variable collection.
3302
- *
3303
- * Three device modes: Common (default), Mobile, Desktop.
3304
- * Common and Desktop have identical values. Mobile scales down.
3305
- *
3306
- * These are the raw building blocks. Semantic tokens in typography.ts
3307
- * alias into this scale (e.g., B2B heading/h1/font-size → font-size/650).
3308
- *
3309
- * On web, these are injected as CSS custom properties (--xui-font-size-*, --xui-lh-*)
3310
- * with @media overrides for mobile. Components consume a single CSS variable
3311
- * and scale automatically by viewport.
3312
- *
3313
- * @see {@link ../styles/typography-css.ts} for CSS generation
3314
- * @see {@link ./breakpoints.ts} for breakpoint definitions
3315
- */
3316
- interface ResponsiveValue {
3317
- common: number;
3318
- mobile: number;
3319
- }
3320
- type ScaleStep = "75" | "100" | "125" | "150" | "175" | "200" | "250" | "300" | "350" | "450" | "550" | "650" | "750";
3321
- declare const SCALE_STEPS: ScaleStep[];
3322
- /** Font-size scale: 13 steps from 10px to 64px */
3323
- declare const fontSize: Record<ScaleStep, ResponsiveValue>;
3324
- /** Line-height/display: tight line-heights for headings (roughly 1:1 with font-size) */
3325
- declare const lineHeightDisplay: Record<ScaleStep, ResponsiveValue>;
3326
- /** Line-height/compact: moderate line-heights for UI body text */
3327
- declare const lineHeightCompact: Record<ScaleStep, ResponsiveValue>;
3328
- /** Line-height/text: generous line-heights for paragraphs and reading text */
3329
- declare const lineHeightText: Record<ScaleStep, ResponsiveValue>;
3330
- declare const responsiveTypographyScale: {
3331
- readonly fontSize: Record<ScaleStep, ResponsiveValue>;
3332
- readonly lineHeightDisplay: Record<ScaleStep, ResponsiveValue>;
3333
- readonly lineHeightCompact: Record<ScaleStep, ResponsiveValue>;
3334
- readonly lineHeightText: Record<ScaleStep, ResponsiveValue>;
3335
- };
3336
-
3337
- declare const isWeb: boolean;
3338
- declare const isNative: boolean;
3339
- declare const isIOS: boolean;
3340
- declare const isAndroid: boolean;
3341
-
3342
- /**
3343
- * React component that loads the toolkit's font-face declarations.
3344
- * Drop-in for any framework — works in Next.js, Vite, CRA, etc.
3345
- *
3346
- * Renders nothing to the DOM. Injects a single `<style>` tag into `<head>` on mount.
3347
- */
3348
- declare const FontLoader: React.FC;
3349
-
3350
- /**
3351
- * @font-face CSS for all toolkit fonts, loaded from Xsolla CDN.
3352
- *
3353
- * Pilat Wide — B2C heading/display font, weights 600, 700, 800.
3354
- * Pilat — B2B heading/display font, weights 300, 400, 500, 600, 700, 800.
3355
- * Aktiv Grotesk — body font for all contexts, weights 400, 500, 600.
3356
- * Four editions loaded via unicode-range: Latin, CN/SG, JP, KR.
3357
- * The browser downloads only the subset needed for characters on the page.
3358
- *
3359
- * Weight coverage notes (intentional gaps — licensing constraint, Xsolla
3360
- * does not hold rights to the omitted cuts):
3361
- * - Pilat Wide 400 — not licensed. Components using weight 400 on Pilat
3362
- * Wide will render at 600 via browser substitution (heavier).
3363
- * - Aktiv Grotesk 300 — not licensed. (No component currently requests it.)
3364
- * - Aktiv Grotesk 700 — not licensed. Substitutes to 600 (lighter).
3365
- * - CJK editions (cn-sg, jp, kr) — 400/500/600 only; no 700/800.
3366
- * Heavy weights on CJK text fall back to the Latin file (no glyphs)
3367
- * and then to the system fallback stack.
3368
- *
3369
- * Do not add @font-face entries for the omitted weights without first
3370
- * confirming the licence has been extended.
3371
- */
3372
- declare const fontFacesCSS = "\n /* \u2500\u2500 Pilat Wide (B2C headings) \u2500\u2500 */\n\n @font-face {\n font-family: 'Pilat Wide';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/pilat-wide/pilat-wide-600.woff2') format('woff2');\n font-weight: 600;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat Wide';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/pilat-wide/pilat-wide-700.woff2') format('woff2');\n font-weight: 700;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat Wide';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/pilat-wide/pilat-wide-800.woff2') format('woff2');\n font-weight: 800;\n font-style: normal;\n font-display: swap;\n }\n\n /* \u2500\u2500 Pilat (B2B headings) \u2500\u2500 */\n\n @font-face {\n font-family: 'Pilat';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/pilat/pilat-300.woff2') format('woff2');\n font-weight: 300;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/pilat/pilat-400.woff2') format('woff2');\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/pilat/pilat-500.woff2') format('woff2');\n font-weight: 500;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/pilat/pilat-600.woff2') format('woff2');\n font-weight: 600;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/pilat/pilat-700.woff2') format('woff2');\n font-weight: 700;\n font-style: normal;\n font-display: swap;\n }\n @font-face {\n font-family: 'Pilat';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/pilat/pilat-800.woff2') format('woff2');\n font-weight: 800;\n font-style: normal;\n font-display: swap;\n }\n\n /* \u2500\u2500 Aktiv Grotesk (body) \u2014 Latin \u2500\u2500 */\n\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/latin/aktiv-grotesk-latin-400.woff2') format('woff2');\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n unicode-range: U+0000-024F, U+0250-02AF, U+0300-036F, U+0370-03FF, U+0400-04FF, U+2000-206F, U+20A0-20CF, U+2100-214F;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/latin/aktiv-grotesk-latin-500.woff2') format('woff2');\n font-weight: 500;\n font-style: normal;\n font-display: swap;\n unicode-range: U+0000-024F, U+0250-02AF, U+0300-036F, U+0370-03FF, U+0400-04FF, U+2000-206F, U+20A0-20CF, U+2100-214F;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/latin/aktiv-grotesk-latin-600.woff2') format('woff2');\n font-weight: 600;\n font-style: normal;\n font-display: swap;\n unicode-range: U+0000-024F, U+0250-02AF, U+0300-036F, U+0370-03FF, U+0400-04FF, U+2000-206F, U+20A0-20CF, U+2100-214F;\n }\n\n /* \u2500\u2500 Aktiv Grotesk (body) \u2014 Chinese / SG \u2500\u2500 */\n\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/cn-sg/aktiv-grotesk-cn-sg-400.woff2') format('woff2');\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n unicode-range: U+3000-303F, U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+FE30-FE4F, U+FF00-FFEF;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/cn-sg/aktiv-grotesk-cn-sg-500.woff2') format('woff2');\n font-weight: 500;\n font-style: normal;\n font-display: swap;\n unicode-range: U+3000-303F, U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+FE30-FE4F, U+FF00-FFEF;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/cn-sg/aktiv-grotesk-cn-sg-600.woff2') format('woff2');\n font-weight: 600;\n font-style: normal;\n font-display: swap;\n unicode-range: U+3000-303F, U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+FE30-FE4F, U+FF00-FFEF;\n }\n\n /* \u2500\u2500 Aktiv Grotesk (body) \u2014 Japanese \u2500\u2500 */\n\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/jp/aktiv-grotesk-jp-400.woff2') format('woff2');\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n unicode-range: U+3000-303F, U+3040-309F, U+30A0-30FF, U+31F0-31FF, U+FF65-FF9F;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/jp/aktiv-grotesk-jp-500.woff2') format('woff2');\n font-weight: 500;\n font-style: normal;\n font-display: swap;\n unicode-range: U+3000-303F, U+3040-309F, U+30A0-30FF, U+31F0-31FF, U+FF65-FF9F;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/jp/aktiv-grotesk-jp-600.woff2') format('woff2');\n font-weight: 600;\n font-style: normal;\n font-display: swap;\n unicode-range: U+3000-303F, U+3040-309F, U+30A0-30FF, U+31F0-31FF, U+FF65-FF9F;\n }\n\n /* \u2500\u2500 Aktiv Grotesk (body) \u2014 Korean \u2500\u2500 */\n\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/kr/aktiv-grotesk-kr-400.woff2') format('woff2');\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n unicode-range: U+1100-11FF, U+3130-318F, U+A960-A97F, U+AC00-D7A3, U+D7B0-D7FF, U+FFA0-FFDC;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/kr/aktiv-grotesk-kr-500.woff2') format('woff2');\n font-weight: 500;\n font-style: normal;\n font-display: swap;\n unicode-range: U+1100-11FF, U+3130-318F, U+A960-A97F, U+AC00-D7A3, U+D7B0-D7FF, U+FFA0-FFDC;\n }\n @font-face {\n font-family: 'Aktiv Grotesk';\n src: url('https://cdn.xsolla.net/xsolla-ui-toolkit-prod/fonts/v1/aktiv-grotesk/kr/aktiv-grotesk-kr-600.woff2') format('woff2');\n font-weight: 600;\n font-style: normal;\n font-display: swap;\n unicode-range: U+1100-11FF, U+3130-318F, U+A960-A97F, U+AC00-D7A3, U+D7B0-D7FF, U+FFA0-FFDC;\n }\n";
3373
-
3374
- declare const TypographyStyleLoader: React.FC;
3375
-
3376
- /**
3377
- * Generates the CSS custom properties string for responsive typography.
3378
- *
3379
- * Produces two blocks:
3380
- * 1. :root — Desktop/Common values (the default)
3381
- * 2. @media (max-width: 767px) :root — Mobile overrides
3382
- *
3383
- * CSS variable naming convention (mirrors Figma variable names):
3384
- * --xui-font-size-{step} → e.g. --xui-font-size-150: 16px
3385
- * --xui-lh-display-{step} → e.g. --xui-lh-display-150: 16px
3386
- * --xui-lh-compact-{step} → e.g. --xui-lh-compact-150: 20px
3387
- * --xui-lh-text-{step} → e.g. --xui-lh-text-150: 22px
3388
- *
3389
- * Consumers can use these in CSS or styled-components:
3390
- * font-size: var(--xui-font-size-350);
3391
- * line-height: var(--xui-lh-compact-350);
3392
- *
3393
- * @see {@link ../tokens/responsive-typography.ts} for raw token data
3394
- * @see {@link ../tokens/breakpoints.ts} for breakpoint definitions
3395
- */
3396
- /**
3397
- * Returns the full CSS string for responsive typography custom properties.
3398
- * The result is memoized — safe to call multiple times.
3399
- */
3400
- declare function generateTypographyCSS(): string;
3401
- /**
3402
- * Returns the CSS variable name for a given font-size scale step.
3403
- * Useful when the Typography component needs to reference a CSS variable.
3404
- *
3405
- * @example cssVar.fontSize("350") → "var(--xui-font-size-350)"
3406
- */
3407
- declare const cssVar: {
3408
- readonly fontSize: (step: string) => string;
3409
- readonly lhDisplay: (step: string) => string;
3410
- readonly lhCompact: (step: string) => string;
3411
- readonly lhText: (step: string) => string;
3412
- };
3413
-
3414
- type ThemeMode = "dark" | "light" | "pentagram-dark" | "pentagram-light" | "ltg-dark" | "blueprints";
3415
- declare const themeConfig: (mode?: ThemeMode, productContext?: ProductContext) => {
3416
- colors: {
5055
+ } | {
3417
5056
  background: {
3418
5057
  primary: string;
3419
5058
  secondary: string;
@@ -5024,10 +6663,13 @@ declare const themeConfig: (mode?: ThemeMode, productContext?: ProductContext) =
5024
6663
  };
5025
6664
  spacing: {
5026
6665
  xs: number;
6666
+ sm: number;
6667
+ md: number;
6668
+ lg: number;
6669
+ xl: number;
5027
6670
  s: number;
5028
6671
  m: number;
5029
6672
  l: number;
5030
- xl: number;
5031
6673
  };
5032
6674
  shape: {
5033
6675
  readonly button: {
@@ -5080,7 +6722,7 @@ declare const themeConfig: (mode?: ThemeMode, productContext?: ProductContext) =
5080
6722
  readonly borderWidth: 1;
5081
6723
  };
5082
6724
  readonly md: {
5083
- readonly borderRadius: 8;
6725
+ readonly borderRadius: 6;
5084
6726
  readonly borderWidth: 1;
5085
6727
  };
5086
6728
  readonly sm: {
@@ -5251,29 +6893,33 @@ declare const themeConfig: (mode?: ThemeMode, productContext?: ProductContext) =
5251
6893
  readonly avatar: {
5252
6894
  readonly xl: {
5253
6895
  readonly borderRadius: 8;
5254
- readonly borderWidth: 2;
6896
+ readonly borderWidth: 1;
5255
6897
  };
5256
6898
  readonly lg: {
5257
6899
  readonly borderRadius: 6;
5258
- readonly borderWidth: 2;
6900
+ readonly borderWidth: 1;
5259
6901
  };
5260
6902
  readonly md: {
5261
6903
  readonly borderRadius: 6;
5262
- readonly borderWidth: 2;
6904
+ readonly borderWidth: 1;
5263
6905
  };
5264
6906
  readonly sm: {
5265
6907
  readonly borderRadius: 4;
5266
- readonly borderWidth: 2;
6908
+ readonly borderWidth: 1;
5267
6909
  };
5268
6910
  readonly xs: {
5269
6911
  readonly borderRadius: 4;
5270
- readonly borderWidth: 2;
6912
+ readonly borderWidth: 1;
5271
6913
  };
5272
6914
  readonly xxs: {
5273
6915
  readonly borderRadius: 2;
5274
- readonly borderWidth: 2;
6916
+ readonly borderWidth: 1;
5275
6917
  };
5276
6918
  };
6919
+ readonly cell: {
6920
+ readonly borderRadius: 8;
6921
+ readonly borderWidth: 1;
6922
+ };
5277
6923
  readonly modal: {
5278
6924
  readonly borderRadius: 8;
5279
6925
  };
@@ -5521,7 +7167,7 @@ declare const themeConfig: (mode?: ThemeMode, productContext?: ProductContext) =
5521
7167
  paddingHorizontal: number;
5522
7168
  fontSize: number;
5523
7169
  iconSize: number;
5524
- radius: 8;
7170
+ radius: 6;
5525
7171
  borderWidth: number;
5526
7172
  fieldGap: number;
5527
7173
  lineHeight: number;
@@ -5589,7 +7235,7 @@ declare const themeConfig: (mode?: ThemeMode, productContext?: ProductContext) =
5589
7235
  errorFontSize: number;
5590
7236
  errorLineHeight: number;
5591
7237
  errorGap: number;
5592
- radius: 8;
7238
+ radius: 6;
5593
7239
  borderWidth: number;
5594
7240
  } | {
5595
7241
  box: number;
@@ -5781,7 +7427,7 @@ declare const themeConfig: (mode?: ThemeMode, productContext?: ProductContext) =
5781
7427
  size: number;
5782
7428
  gap: number;
5783
7429
  fontSize: number;
5784
- radius: 8;
7430
+ radius: 6;
5785
7431
  borderWidth: number;
5786
7432
  fieldGap: number;
5787
7433
  } | {
@@ -5816,7 +7462,7 @@ declare const themeConfig: (mode?: ThemeMode, productContext?: ProductContext) =
5816
7462
  padding: number;
5817
7463
  fontSize: number;
5818
7464
  iconSize: number;
5819
- radius: 8;
7465
+ radius: 6;
5820
7466
  } | {
5821
7467
  height: number;
5822
7468
  padding: number;
@@ -6762,4 +8408,4 @@ declare const ModalIdContext: React.Context<string | null>;
6762
8408
  */
6763
8409
  declare const useModalId: () => string | null;
6764
8410
 
6765
- export { type BreakpointKey, type DesignSystemContextType, FontLoader, MOBILE_MAX_WIDTH, ModalIdContext, type ProductContext, type ResponsiveValue, SCALE_STEPS, type ScaleStep, type Theme, type ThemeColorScheme, type ThemeColors, type ThemeFonts, type ThemeMode, type ThemeOverrideProps, type ThemeShadow, type ThemeShape, type ThemeSizing, type ThemeSpacing, type ThemeTypographyRoles, type TypographyBodyVariant, TypographyStyleLoader, type TypographyTokens, type TypographyVariant, XUIProvider, breakpoints, colors, cssVar, defaultProductContext, fontFacesCSS, fontSize, fonts, generateTypographyCSS, getFonts, getTypographyTokens, getTypographyVariant, isAndroid, isIOS, isNative, isWeb, lineHeightCompact, lineHeightDisplay, lineHeightText, radius, radiusScale, responsiveTypographyScale, shadow, shape, spacing, stroke, themeConfig, typography, typographyTokens, useDesignSystem, useId, useModalId, useResolvedTheme };
8411
+ export { type BreakpointKey, type ComponentSize, DISPLAY_SCALE_STEPS, type DesignSystemContextType, type DisplayScaleStep, FontLoader, MOBILE_MAX_WIDTH, ModalIdContext, type ProductContext, type ResponsiveValue, SCALE_STEPS, type ScaleStep, type Theme, type ThemeColorScheme, type ThemeColors, type ThemeFonts, type ThemeMode, type ThemeOverrideProps, type ThemeShadow, type ThemeShape, type ThemeSizing, type ThemeSpacing, type ThemeTypographyRoles, type TypographyBodyVariant, TypographyStyleLoader, type TypographyTokens, type TypographyVariant, XUIProvider, breakpoints, colors, cssVar, defaultProductContext, fontFacesCSS, fontSize, fonts, generateTypographyCSS, getFonts, getTypographyTokens, getTypographyVariant, isAndroid, isIOS, isNative, isWeb, lineHeightCompact, lineHeightDisplay, lineHeightText, radius, radiusScale, responsiveTypographyScale, shadow, shape, spacing, stroke, themeConfig, typography, typographyTokens, useDesignSystem, useId, useModalId, useResolvedTheme };