 
 import Foundation
 import CoreBluetooth
+import CoreBluetooth.CBPeripheral
 
 class BLEManager : NSObject, CBCentralManagerDelegate, CBPeripheralDelegate
 {

  {
  }

  func peripheral(_ peripheral: CBPeripheral, didUpdateNotificationStateFor characteristic: CBCharacteristic, error: Error?) {
  }

  func peripheral(_ peripheral: CBPeripheral, didDiscoverDescriptorsFor characteristic: CBCharacteristic, error: Error?) {
  }

  func peripheral(_ peripheral: CBPeripheral, didUpdateValueFor descriptor: CBDescriptor, error: Error?) {
  }

  func peripheral(_ peripheral: CBPeripheral, didWriteValueFor descriptor: CBDescriptor, error: Error?) {
  }
}


  //MARK: -
  //MARK: - Private methods
  
  func convertCBCharacteristicProperties(_ properties: CBCharacteristicProperties) -> String
  {
    var result = "";

    if (properties.contains(.broadcast))
    {
      result += "Broadcast; "
    }
    
    if (properties.contains(.read))
    {
      result += "Read; "
    }

    if (properties.contains(.writeWithoutResponse))
    {
      result += "WriteWithoutResponse; ";
    }
    
    if (properties.contains(.write))
    {
      result += "Write; "
    }
    
    if (properties.contains(.notify))
    {
      result += "Notify; "
    }
    
    if (properties.contains(.indicate))
    {
      result += "Indicate; "
    }
    
    if (properties.contains(.authenticatedSignedWrites))
    {
      result += "SignedWrites; "
    }
    
    if (properties.contains(.extendedProperties))
    {
      result += "ExtendedProperties; "
    }
    
    if (properties.contains(.notifyEncryptionRequired))
    {
      result += "EncryptionRequired; "
    }
    
    if (properties.contains(.indicateEncryptionRequired))
    {
      result += "IndicateEncryptionRequired"
    }
    
    return result
  }


  //MARK: -
