Ошибки

BLEController

enum BLEControllerError
{
   NoError, //Без ошибок
   UnknownError, //Неизвестная ошибка
   UnknownRemoteDeviceError, //Неизвестная ошибка на удаленном устройстве
   NetworkError, //Ошибка чтения/записи на удаленное устройство
   InvalidBluetoothAdapterError, //Bluetooth адаптер с заданным адресом не найден
   ConnectionError, //Ошибка подключения к удаленному устройству
   AdvertisingError, //Ошибка оповещения о службах
   RemoteHostClosedError, //Удаленное устройство закрыло соединение
   AuthorizationError, //Ошибка авторизации
   MissingPermissionsError, //Недостаточно прав
}

BLEInit

enum BLEInitError
{
   NoError, //Без ошибок
   CreateServiceObjectFailed, //На удаленном устройстве не найдена служба с указанным serviceUuid
   ServiceNotFound, //Не удалось найти подходящую службу на удаленном устройстве
   ValidCharacteristicNotFound //Не удалось найти подходящую характеристику для найденной службы на удаленном устройстве
}

BLEService

enum BLEServiceError
{
   NoError, //Без ошибок
   OperationError, //Попытка выполнить операцию, когда сервис не был готов
   CharacteristicReadError, //Ошибка чтения характеристики
   CharacteristicWriteError, //Ошибка записи характеристики
   DescriptorReadError, //Ошибка чтения дескриптора
   DescriptorWriteError, //Ошибка записи дескриптора
   UnknownError //Неизвестная ошибка
}

DriverSettings

enum DriverSettingsError
{
   NoError, //Без ошибок
   IsNotConfigured, //Драйвер терминала не настроен
   MissingDeviceConnection, //Отсутствует deviceConnection
   MissingBankProfile, //Отсутствует bankProfile
   MissingBankProfiles, //Отсутствует bankProfiles
   BankProfileNotFound, //Отсутствует указанный bankProfile в bankProfiles
   MissingDeviceConnectionType, //Отсутствует connectionType в deviceConnection
   UnknownDeviceConnectionType, //Неизвестный connectionType
   MissingDeviceConnectionSerialPortName, //Отсутствует portName в deviceConnection с connectionType: Serial
   MissingDeviceConnectionBLEDeviceName, //Отсутствует deviceName в deviceConnection с connectionType: BLE
   MissingDeviceConnectionBLEDeviceAddress, //Отсутствует deviceAddress в deviceConnection с connectionType: BLE
   MissingBankProfileBankName, //Отсутствует bankName в выбранном профиле банка
   UnknownBankProfileBankName //Неизвестный bankName
}

File

enum FileError
{
   NoError, //Без ошибок
   ReadError, //Ошибка чтения
   WriteError, //Ошибка записи
   FatalError, //Фатальная ошибка
   ResourceError, //Недостаточно ресурсов
   OpenError, //Не удалось открыть файл
   AbortError, //Операция была прервана
   TimeOutError, //Время ожидания истекло
   UnspecifiedError, //Неизвестная ошибка
   RemoveError, //Не удалось удалить файл
   RenameError, //Не удалось переименовать файл
   PositionError, //Не удалось изменить позицию в файле
   ResizeError, //Не удалось изменить размер файла
   PermissionsError, //Недостаточно прав
   CopyError //Не удалось скопировать файл
}

JsonParse

enum JsonParseError
{
   NoError, //Без ошибок
   UnterminatedObject, //Объект некорректно завершается закрывающей фигурной скобкой
   MissingNameSeparator, //Запятая, разделяющая разные элементы, отсутствует
   UnterminatedArray, //Массив неправильно завершается закрывающей квадратной скобкой
   MissingValueSeparator, //Двоеточие, отделяющее ключи от значений внутри объектов, отсутствует
   IllegalValue, //Значение является недопустимым
   TerminationByNumber, //Входной поток завершился во время разбора числа
   IllegalNumber, //Номер плохо сформирован
   IllegalEscapeSequence, //Во входных данных возникла недопустимая последовательность символов
   IllegalUTF8String, //Во входных данных встретилась недопустимая последовательность UTF8
   UnterminatedString, //Строка не была завершена кавычками
   MissingObject, //Объект ожидался, но не был найден
   DeepNesting, //Документ JSON слишком глубоко вложен, чтобы синтаксический анализатор мог его разобрать
   DocumentTooLarge, //Документ JSON слишком велик, чтобы синтаксический анализатор мог его разобрать
   GarbageAtEnd //Разобранный документ содержит дополнительные мусорные символы в конце
}

RequestParams

enum RequestParamsError
{
   NoError, //Без ошибок
   MissingAmount, //Отсутствует amount
   InvalidAmount, //amount должен быть > 1
   PurposeSizeIsTooLarge, //purpose должен быть <= 140
   InvalidTtlRange, //ttl должен быть в диапазоне [1, 129600]
   MissingInfoQR, //Отсутствует infoQR
   MissingPath, //Отсутствует path
   MissingStatus, //Отсутствует status
   InvalidStatus, //status должен быть в диапазоне [0, 6]
   MissingSettings //Отсутствует settings
}

SerialPort

enum SerialPortError
{
   NoError, //Без ошибок
   DeviceNotFoundError, //Девайс не найден
   PermissionError, //Недостаточно прав
   OpenError, //Девайс занят
   NotOpenError, //Девайс не открыт
   WriteError, //Ошибка записи
   ReadError, //Ошибка чтения
   ResourceError, //Девайс недоступен
   UnsupportedOperationError, //Операция не поддерждивается
   TimeoutError, //Время ожидания истекло
   UnknownError //Неизвестная ошибка
}

AlfaBankSettings

enum AlfaBankSettingsError
{
   NoError, //Без ошибок
   MissingKeyName, //Отсутствует keyName
   MissingTermNo, //Отсутствует termNo
   PrivateKeyNotFound //Не удалось загрузить приватный ключ keys/Alfabank.key
}

GazprombankSettings

enum GazprombankSettingsError
{
   NoError, //Без ошибок
   MissingAccount, //Отсутствует account
   MissingMerchantId //Отсутствует merchantId
}

RaiffeisenbankSettings

enum RaiffeisenbankSettingsError
{
   NoError, //Без ошибок
   MissingPublicID, //Отсутствует publicID
   MissingSecretKey //Отсутствует secretKey
}

TinkoffBankSettings

enum TinkoffBankSettingsError
{
   NoError, //Без ошибок
   MissingTerminalKey, //Отсутствует terminalKey
   MissingPassword //Отсутствует password
}

CFTBankSettings

enum CFTBankSettingsError
{
   NoError, //Без ошибок
   MissingMerchantId, //Отсутствует merchantId
   MissingAccAlias, //Отсутствует accAlias
   MissingExtEntityId, //Отсутствует extEntityId
   MissingPassword //Отсутствует password
}

YooKassaBankSettings

enum YooKassaBankSettingsError
{
   NoError, //Без ошибок
   MissingLogin, //Отсутствует login
   MissingPassword //Отсутствует password
}

StaticBankSettings

enum StaticBankSettingsError
{
   NoError, //Без ошибок
   MissingStaticQR, //Отсутствует staticQR
   InvalidUrlBase, //Ссылка статического QR должна начинаться с https://qr.nspk.ru/
   InvalidQrId //QR_ID, идущий после "https://qr.nspk.ru/", должен быть в формате строки из 32 букв
}