---
title: "Модели React Native SDK"
description: "Модели данных и типы для React Native Adapty SDK."
---

> **AI agents**: to search Adapty docs faster and with fewer tokens, install the Adapty skill. Claude Code (self-updating via plugin): `claude plugin marketplace add adaptyteam/adapty-skills && claude plugin install adapty-skills@adapty` — other tools: `npx skills add adaptyteam/adapty-skills --all`

:::danger
Эта страница устарела. Модели SDK можно найти в [этом справочнике](https://react-native.adapty.io/modules).
:::
## Интерфейсы \{#interfaces\}
### AdaptyOnboarding

Информация об [онбординге](onboardings).
| Название | Тип | Описание |
|-------------------|---------------------------------------------------------------------|--------------------------------------------------------|
| id | string | Идентификатор онбординга, настроенный в дашборде Adapty |
| placement | [AdaptyPlacement](#adaptyplacement) | Плейсмент, настроенный в дашборде Adapty |
| hasViewConfiguration | boolean | Если true, можно получить объект представления и использовать его с библиотекой AdaptyUI |
| name | string | Название онбординг-флоу |
| remoteConfig | [AdaptyRemoteConfig](#adaptyremoteconfig) (optional) | Remote Config, настроенный в дашборде Adapty для данного онбординга |
| variationId | string | Идентификатор варианта, используемый для атрибуции покупок к данному онбордингу |
| version | number (optional) | Версия конфигурации онбординга |
| payloadData | string (optional) | Дополнительные данные полезной нагрузки |
| requestLocale | string | Запрошенная локаль для онбординга |
| onboardingBuilder | [AdaptyOnboardingBuilder](#adaptyonboardingbuilder) (optional) | Конфигурация Builder для онбординга |
### AdaptyOnboardingBuilder

| Название | Тип | Описание |
|----|----|-----------|
| url | string | URL для конструктора онбординга |
| lang | string | Язык для конструктора онбординга |
### AdaptyPaywallProduct

Информация о [продукте.](https://swift.adapty.io/documentation/adapty/adaptypaywallproduct)
| Название | Тип | Описание |
|:-----------------------------------------|:------------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| vendorProductId | string | Уникальный идентификатор продукта из App Store Connect или Google Play Console |
| adaptyId | string | Уникальный идентификатор продукта в Adapty |
| paywallVariationId | string | Аналог свойства variationId родительского AdaptyPaywall |
| paywallABTestName | string | Аналог свойства abTestName родительского AdaptyPaywall |
| paywallName | string | Аналог свойства name родительского AdaptyPaywall |
| paywallProductIndex | number | Индекс продукта в пейволе |
| localizedDescription | string | Описание продукта |
| localizedTitle | string | Название продукта |
| regionCode | string (optional) | Код региона локали, используемой для форматирования цены продукта. ISO 3166 ALPHA-2 (US, DE) |
| price | [AdaptyPrice](#adaptyprice) (optional) | Стоимость продукта в местной валюте |
| subscription | [AdaptySubscriptionDetails](#adaptysubscriptiondetails) (optional) | Подробная информация о подписке (introductory offer, офферы и т.д.) |
| webPurchaseUrl | string (optional) | URL для веб-покупки |
| payloadData | string (optional) | Дополнительные данные payload |
| ios | object (optional) | Свойства, специфичные для iOS |
| ios.isFamilyShareable | boolean | Булево значение, указывающее, доступен ли продукт для семейного доступа в App Store Connect. Будет равно false для iOS ниже 14.0 и macOS ниже 11.0. Только iOS. |
### AdaptyPrice

```typescript
type AdaptyPrice = {
  amount: number;
  localizedString: string | null;
  currencyCode: string | null;
  currencySymbol: string | null;
};
```

| Поле | Тип | Описание |
|---|---|---|
| `amount` | `number` | Числовое значение цены продукта. |
| `localizedString` | `string` \| `null` | Локализованная строка с ценой продукта. |
| `currencyCode` | `string` \| `null` | Буквенный код валюты по стандарту ISO 4217. Например, `USD`. |
| `currencySymbol` | `string` \| `null` | Символ валюты. Например, `$`. |
| Название | Тип | Описание |
| :---------------- | :--------------- | :------------------------------------------------------------------------------------------------------------------------------- |
| amount | number | Цена в виде числа |
| currencyCode | string (optional) | Код валюты локали, используемой для форматирования цены продукта. ISO 4217 (USD, EUR) |
| currencySymbol | string (optional) | Символ валюты локали, используемой для форматирования цены продукта. ($, €) |
| localizedString | string (optional) | Язык цены определяется предпочтительным языком, заданным на устройстве. На Android — форматированная цена из Google Play в исходном виде |
### AdaptySubscriptionDetails

```kotlin
data class AdaptySubscriptionDetails(
    val isAutoRenewEnabled: Boolean,
    val isSandbox: Boolean,
    val activatedAt: Date,
    val renewedAt: Date?,
    val expiresAt: Date?,
    val startsAt: Date?,
    val cancellationReason: AdaptyCancellationReason?,
    val billingIssueDetectedAt: Date?,
    val vendorProductId: String,
    val vendorTransactionId: String?,
    val vendorOriginalTransactionId: String?,
    val offer: AdaptySubscriptionOffer?,
    val category: AdaptySubscriptionPeriod.Unit,
)
```
| Название                        | Тип                                                                                                                     | Описание                                                                                                                                                                          |
|:--------------------------------|:------------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| subscriptionPeriod              | [AdaptySubscriptionPeriod](#adaptysubscriptionperiod)                                                                   | Детали периода для продуктов, являющихся подписками. Будет null для iOS версии ниже 11.2 и macOS версии ниже 10.14.4.                                                              |
| localizedSubscriptionPeriod     | string (optional)                                                                                                       | Язык периода определяется предпочтительным языком, установленным на устройстве                                                                                                    |
| offer                           | [AdaptySubscriptionOfferId](#adaptysubscriptionofferid) (optional)                                                          | Предложение по подписке, если доступно для автообновляемой подписки                                                                                                               |
| ios                             | object (optional)                                                                                                       | Свойства, специфичные для iOS                                                                                                                                                     |
| ios.subscriptionGroupIdentifier | string (optional)                                                                                                       | Идентификатор группы подписок, к которой относится подписка. Будет null для iOS версии ниже 12.0 и macOS версии ниже 10.14. Только iOS.                                           |
| android                         | object (optional)                                                                                                       | Свойства, специфичные для Android                                                                                                                                                 |
| android.basePlanId              | string                                                                                                                  | Идентификатор базового плана. Только Android.                                                                                                                                     |
| android.renewalType             | string (optional)                                                                                                       | Тип продления. Возможные значения: `'prepaid'`, `'autorenewable'`. Только Android.                                                                                                |
### AdaptySubscriptionPeriod

`AdaptySubscriptionPeriod` — это объект, описывающий длительность периода подписки. Он содержит следующие свойства:

| Параметр | Тип | Описание |
|--------|-----|---------|
| `unit` | `AdaptyPeriodUnit` | Единица измерения длительности: `.day`, `.week`, `.month`, `.year`, `.unknown` |
| `numberOfUnits` | `Int` | Количество единиц в периоде |
| Name          | Type             | Description                                                                                                                      |
| :------------ | :--------------- | :------------------------------------------------------------------------------------------------------------------------------- |
| numberOfUnits | number           | Количество единиц периода                                                                                                        |
| unit          | ProductPeriod    | Единица времени, в которой задан период подписки. Возможные значения: `day`, `week`, `month`, `year` |
### AdaptySubscriptionOffer

Модель подписочного предложения для продуктов.

| Название | Тип | Описание |
|----|----|-----------|
| identifier | [AdaptySubscriptionOfferId](#adaptysubscriptionofferid) | Идентификатор подписочного предложения |
| phases | массив [AdaptyDiscountPhase](#adaptydiscountphase) | Массив фаз скидки |
| android | object (optional) | Свойства, специфичные для Android |
| android.offerTags | массив строк (optional) | Теги, связанные с этим предложением |
### AdaptySubscriptionOfferId

| Название | Тип | Описание |
|----|----|-----------|
| id | string (optional) | Идентификатор promotional offer или win-back offer |
| type | string | Тип offer. Возможные значения: `introductory`, `promotional`, `win_back` |
### AdaptyDiscountPhase
| Название | Тип | Описание |
|:------------------------------|:------------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| localizedNumberOfPeriods | string (optional) | Форматированное количество периодов скидки для локали пользователя |
| localizedSubscriptionPeriod | string (optional) | Форматированный период подписки скидки для локали пользователя |
| numberOfPeriods | number | Количество периодов, в течение которых доступна скидка на продукт |
| price | [AdaptyPrice](#adaptyprice) | Цена скидки на продукт в местной валюте |
| subscriptionPeriod | [AdaptySubscriptionPeriod](#adaptysubscriptionperiod) | Информация о периоде скидки на продукт |
| paymentMode | OfferType | Способ оплаты для данной скидки на продукт. Возможные значения: `free_trial`, `pay_as_you_go`, `pay_up_front` |
### AdaptyPaywall

Информация о [пейволе.](https://swift.adapty.io/documentation/adapty/adaptypaywall)
| Название | Тип | Описание |
|--------------------|-----------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| placement | [AdaptyPlacement](#adaptyplacement) | Плейсмент, настроенный в дашборде Adapty |
| hasViewConfiguration | boolean | Если `true`, можно получить объект представления и использовать его с библиотекой AdaptyUI |
| name | string | Название пейвола |
| remoteConfig | [AdaptyRemoteConfig](#adaptyremoteconfig) (optional) | Remote Config, настроенный в дашборде Adapty для этого пейвола |
| variationId | string | Идентификатор варианта, используемый для атрибуции покупок к этому пейволу |
| products | array of [ProductReference](#productreference) (deprecated) | Массив базовой информации о продуктах (устарело, используйте `productIdentifiers`) |
| productIdentifiers | array of [AdaptyProductIdentifier](#adaptyproductidentifier) | Массив идентификаторов продуктов для этого пейвола |
| id | string | Идентификатор пейвола, настроенный в дашборде Adapty |
| version | number (optional) | Версия конфигурации пейвола |
| webPurchaseUrl | string (optional) | URL для веб-покупок |
| payloadData | string (optional) | Дополнительные данные полезной нагрузки |
| requestLocale | string | Запрошенная локаль для пейвола |
| paywallBuilder | [AdaptyPaywallBuilder](#adaptypaywallbuilder) (optional) | Конфигурация Paywall Builder для пейвола |
### AdaptyPaywallBuilder

| Name | Type | Description |
|----|----|-----------|
| id | string | ID пейвола в Paywall Builder |
| lang | string | Язык пейвола в Paywall Builder |
### AdaptyPlacement

```typescript
type AdaptyPlacement = {
  id: string;
  name: string;
  abTestName: string | undefined;
  audienceName: string | undefined;
  revision: number;
  variationId: string;
};
```
| Название | Тип | Описание |
| :------------ | :--------------- | :------------------------------------------------------------------------------------------------------------------------------- |
| abTestName | string | Название родительского A/B-теста |
| audienceName | string | Название аудитории, к которой относится пейвол |
| id | string | ID плейсмента, настроенного в дашборде Adapty |
| revision | number | Текущая ревизия (версия) пейвола. Каждое изменение пейвола создаёт новую ревизию |
| isTrackingPurchases | boolean (optional) | Отслеживает ли плейсмент покупки |
| audienceVersionId | string | ID версии аудитории |
### AdaptyRemoteConfig
| Name          | Type             | Description                                                                                                                      |
| :------------ | :--------------- | :------------------------------------------------------------------------------------------------------------------------------- |
| lang          | string           | Идентификатор локали пейвола                                                                                                |
| data          | object           | Произвольный словарь, настроенный в дашборде Adapty для этого пейвола                                                             |
| dataString    | string           | Произвольная JSON-строка, настроенная в дашборде Adapty для этого пейвола                                                |
### AdaptyProfile

Информация о [статусе подписки и истории покупок пользователя](https://swift.adapty.io/documentation/adapty/adaptyprofile).
| Название             | Тип                                                                                       | Описание                                                                                                                                       |
| :--------------- | :---------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------- |
| profileId        | string                                                                                    | Идентификатор пользователя в Adapty                                                                                                             |
| customerUserId   | string (optional)                                                                         | Идентификатор пользователя в вашей системе                                                                                                      |
| customAttributes | object                                                                                    | Ранее установленные пользовательские атрибуты через метод updateProfile                                                                        |
| accessLevels     | object\<string, [AdaptyProfile.AccessLevel](#adaptyprofileaccesslevel)>                   | Ключи — идентификаторы уровней доступа, настроенные вами в дашборде Adapty. Значения — объекты AccessLevel. Может быть null, если у пользователя нет уровней доступа  |
| subscriptions    | object\<string, [AdaptyProfile.Subscription](#adaptyprofilesubscription)>                 | Ключи — идентификаторы продуктов из App Store Connect. Значения — объекты Subscription. Может быть null, если у пользователя нет подписок        |
| nonSubscriptions | object\<string, array of [AdaptyProfile.NonSubscription](#adaptyprofilenonsubscription)>  | Ключи — идентификаторы продуктов из App Store Connect. Значения — массивы объектов NonSubscription. Может быть null, если у пользователя нет покупок |
### AdaptyProfile.AccessLevel

Информация об [уровне доступа пользователя.](https://swift.adapty.io/documentation/adapty/adaptyprofile/accesslevel)
| Название | Тип | Описание |
|----|----|-----------|
| id | string | Уникальный идентификатор уровня доступа, настроенный вами в дашборде Adapty |
| isActive | boolean | Активен ли уровень доступа. Как правило, достаточно проверить только это свойство, чтобы определить, есть ли у пользователя доступ к премиум-функциям |
| vendorProductId | string | Идентификатор продукта в App Store Connect, который открыл данный уровень доступа |
| store | string | Стор, в котором была совершена покупка, открывшая данный уровень доступа. Возможные значения: app_store, play_store, adapty |
| activatedAt | Date | Время активации уровня доступа |
| renewedAt | Date (optional) | Время последнего продления уровня доступа |
| expiresAt | Date (optional) | Время истечения уровня доступа (может быть в прошлом или равно null для пожизненного доступа) |
| isLifetime | boolean | Активен ли уровень доступа бессрочно (без даты истечения). Если значение равно true, проверять expires_at не нужно — можно просто проверить isActive |
| activeIntroductoryOfferType | string (optional) | Тип активного introductory offer. Возможные значения: free_trial, pay_as_you_go, pay_up_front. Если значение не равно null, это означает, что оффер был применён в течение текущего периода подписки |
| activePromotionalOfferType | string (optional) | Тип активного promotional offer. Возможные значения: free_trial, pay_as_you_go, pay_up_front. Если значение не равно null, это означает, что оффер был применён в течение текущего периода подписки |
| activePromotionalOfferId | string (optional) | Идентификатор активного promotional offer |
| offerId | string (optional) | Идентификатор оффера |
| willRenew | boolean | Настроено ли автоматическое продление подписки |
| isInGracePeriod | boolean | Находится ли автообновляемая подписка в льготном периоде |
| unsubscribedAt | Date (optional) | Время отмены автообновляемой подписки. Подписка при этом может оставаться активной — это лишь означает, что автопродление отключено. Сбрасывается в null, если пользователь повторно активирует подписку |
| billingIssueDetectedAt | Date (optional) | Время обнаружения проблемы с оплатой. Подписка при этом может оставаться активной. Сбрасывается в null после успешного списания |
| startsAt | Date (optional) | Время начала действия данного уровня доступа (может быть в будущем) |
| cancellationReason | string (optional) | Причина отмены подписки. Возможные значения: voluntarily_cancelled, billing_error, refund, price_increase, product_was_not_available, unknown |
| isRefund | boolean | Был ли выполнен возврат средств за покупку |
| android | object (optional) | Свойства, специфичные для Android |
| android.offerId | string (optional) | Идентификатор оффера |
### AdaptyProfile.Subscription

Информация о [подписке пользователя.](https://swift.adapty.io/documentation/adapty/adaptyprofile/subscription)
| Название | Тип | Описание |
|----|----|-----------|
| store | string | Стор, в котором была совершена покупка. Возможные значения: app_store, play_store, adapty |
| vendorProductId | string | Идентификатор продукта в App Store Connect |
| vendorTransactionId | string | Идентификатор транзакции из App Store |
| vendorOriginalTransactionId | string | Идентификатор исходной транзакции из App Store. Для автовозобновляемой подписки это будет идентификатор первой транзакции в подписке |
| isActive | boolean | Активна ли подписка |
| isLifetime | boolean | Активна ли подписка бессрочно (без даты истечения). Если установлено значение true, проверять expires_at не нужно — достаточно проверить isActive |
| activatedAt | Date | Время активации подписки |
| renewedAt | Date (optional) | Время продления подписки |
| expiresAt | Date (optional) | Время истечения подписки (может быть в прошлом или равно null для пожизненного доступа) |
| startsAt | Date (optional) | Время начала подписки (может быть в будущем) |
| unsubscribedAt | Date (optional) | Время отмены автовозобновляемой подписки. Подписка при этом может оставаться активной — это означает лишь отключение автопродления. Принимает значение null, если пользователь повторно активирует подписку |
| billingIssueDetectedAt | Date (optional) | Время обнаружения проблемы с оплатой (Apple не удалось списать средства с карты). Подписка при этом может оставаться активной. Принимает значение null при успешном списании |
| isInGracePeriod | boolean | Находится ли автовозобновляемая подписка в льготном периоде |
| isSandbox | boolean | Была ли покупка совершена в среде песочницы |
| isRefund | boolean | Был ли произведён возврат средств за покупку |
| willRenew | boolean | Настроено ли автопродление подписки |
| activeIntroductoryOfferType | string (optional) | Тип активного introductory offer. Возможные значения: free_trial, pay_as_you_go, pay_up_front. Если значение не равно null, предложение было применено в течение текущего периода подписки |
| activePromotionalOfferType | string (optional) | Тип активного promotional offer. Возможные значения: free_trial, pay_as_you_go, pay_up_front. Если значение не равно null, предложение было применено в течение текущего периода подписки |
| activePromotionalOfferId | string (optional) | Идентификатор активного promotional offer |
| offerId | string (optional) | Идентификатор предложения |
| cancellationReason | string (optional) | Причина отмены подписки. Возможные значения: voluntarily_cancelled, billing_error, refund, price_increase, product_was_not_available, unknown |
### AdaptyProfile.NonSubscription

Информация о разовых покупках пользователя (не подписках).
| Название | Тип | Описание |
|----|----|-----------|
| purchaseId | string | Идентификатор покупки в Adapty. Используйте его, чтобы убедиться, что эта покупка уже обработана (например, для отслеживания разовых покупок) |
| store | string | Стор, в котором совершена покупка. Возможные значения: app_store, play_store, adapty |
| vendorProductId | string | Идентификатор продукта в App Store Connect |
| vendorTransactionId | string (optional) | Идентификатор транзакции из App Store |
| purchasedAt | Date | Время покупки продукта |
| isSandbox | boolean | Признак того, что продукт был куплен в среде песочницы |
| isRefund | boolean | Признак того, что покупка была возвращена |
| isConsumable | boolean | Признак того, что продукт должен быть обработан только один раз. Если `true`, Adapty API вернёт эту покупку лишь однажды |
### ProductReference

| Название | Тип | Описание |
|----|----|-----------|
| vendorId | string | Vendor ID продукта |
| adaptyId | string | Adapty ID продукта |
| ios | object (optional) | iOS-специфичные свойства |
| ios.promotionalOfferId | string (optional) | ID promotional offer. Только для iOS. |
| ios.winBackOfferId | string (optional) | ID win-back offer. Только для iOS. |
| android | object (optional) | Android-специфичные свойства |
| android.basePlanId | string (optional) | ID базового плана. Только для Android. |
| android.offerId | string (optional) | ID оффера. Только для Android. |
### AdaptyProductIdentifier

Интерфейс, представляющий идентификатор продукта с информацией о вендоре и платформе.

| Название | Тип | Описание |
|----|----|-----------|
| vendorProductId | string | Идентификатор продукта, специфичный для вендора (например, ID продукта в App Store или Google Play) |
| basePlanId | string (optional) | Идентификатор базового плана для подписок Google Play (только Android) |
| adaptyProductId | string | Внутренний идентификатор продукта Adapty |
### AdaptyProfileParameters

Параметры для обновления профиля пользователя.
| Название | Тип | Описание |
|----|----|-----------|
| analyticsDisabled | boolean (optional) | Отключить ли аналитику |
| codableCustomAttributes | object (optional) | Пользовательские атрибуты для установки |
| appTrackingTransparencyStatus | [AppTrackingTransparencyStatus](#apptrackingtransparencystatus) (optional) | Статус App Tracking Transparency |
| firstName | string (optional) | Имя пользователя |
| lastName | string (optional) | Фамилия пользователя |
| gender | [Gender](#gender) (optional) | Пол пользователя |
| birthday | string (optional) | Дата рождения пользователя |
| email | string (optional) | Email пользователя |
| phoneNumber | string (optional) | Номер телефона пользователя |
### AdaptyPurchaseResult

Union-тип, представляющий результат покупки.

| Название | Тип | Описание |
|----|----|-----------|
| type | string | Тип результата. Возможные значения: `pending`, `user_cancelled`, `success` |
| profile | [AdaptyProfile](#adaptyprofile) (optional) | Обновлённый профиль пользователя (присутствует только когда type равен `success`) |
### AdaptyAndroidPurchaseParams

Структура параметров покупки для Android.
| Название | Тип | Описание |
|----|----|-----------|
| subscriptionUpdateParams | object (optional) | Параметры обновления подписки для Android |
| subscriptionUpdateParams.oldSubVendorProductId | string | Идентификатор продукта текущей подписки, которую нужно изменить |
| subscriptionUpdateParams.prorationMode | [AdaptyAndroidSubscriptionUpdateReplacementMode](#adaptyandroidsubscriptionupdatereplacementmode) | Режим пересчёта при обновлении подписки |
| isOfferPersonalized | boolean (optional) | Является ли предложение персонализированным |
| obfuscatedAccountId | string (optional) | Обфусцированный идентификатор аккаунта |
| obfuscatedProfileId | string (optional) | Обфусцированный идентификатор профиля |
### AdaptyAndroidSubscriptionUpdateParameters

Параметры обновления подписки на Android (устарело).

| Название | Тип | Описание |
|----|----|-----------|
| oldSubVendorProductId | string | Идентификатор продукта текущей подписки, которую нужно заменить |
| prorationMode | [AdaptyAndroidSubscriptionUpdateReplacementMode](#adaptyandroidsubscriptionupdatereplacementmode) | Режим пропорциональной замены при обновлении подписки |
| isOfferPersonalized | boolean (необязательно) | Является ли предложение персонализированным (устарело, используйте AdaptyAndroidPurchaseParams) |
### Перечисления

#### VendorStore
- `app_store` - Apple App Store
- `play_store` - Google Play Store
- `adapty` - Adapty

#### OfferType
- `free_trial` - Бесплатный пробный период
- `pay_as_you_go` - Оплата по мере использования
- `pay_up_front` - Оплата вперёд

#### CancellationReason
- `voluntarily_cancelled` - Пользователь отменил добровольно
- `billing_error` - Ошибка при оплате
- `refund` - Покупка возвращена
- `price_increase` - Цена была повышена
- `product_was_not_available` - Продукт был недоступен
- `unknown` - Неизвестная причина
#### ProductPeriod
- `day` - Период: день
- `week` - Период: неделя
- `month` - Период: месяц
- `year` - Период: год

#### AdaptyAndroidSubscriptionUpdateReplacementMode
- `charge_full_price` - Списать полную стоимость
- `deferred` - Отложенный
- `without_proration` - Без пропорционального расчёта
- `charge_prorated_price` - Списать пропорциональную стоимость
- `with_time_proration` - С пропорциональным расчётом по времени
#### FetchPolicy
- `reload_revalidating_cache_data` - Всегда загружать данные с сервера
- `return_cache_data_else_load` - Возвращать кэшированные данные, если они доступны, иначе загружать с сервера
- `return_cache_data_if_not_expired_else_load` - Возвращать кэшированные данные, если они не устарели, иначе загружать с сервера

#### LogLevel
- `verbose` - Логирует любую дополнительную информацию, которая может быть полезна при отладке
- `error` - Логирует только ошибки
- `warn` - Логирует сообщения от SDK, не вызывающие критических ошибок
- `info` - Логирует различные информационные сообщения

#### Gender
- `f` - Женский
- `m` - Мужской
- `o` - Другой
#### AppTrackingTransparencyStatus
- `0` - Не определено
- `1` - Ограничено
- `2` - Отклонено
- `3` - Разрешено
- `4` - Неизвестно

#### RefundPreference
- `no_preference` - Без предпочтений
- `grant` - Одобрить возврат
- `decline` - Отклонить возврат