     }
     
     public var isScanning: Bool {
-        
+         
         if #available(macOS 10.13, iOS 9.0, *) {
             return internalManager.isScanning
         } else {
             return accessQueue.sync { [unowned self] in self.internalState.scan.foundDevice != nil }
         }
     }
+    
+    public var scanningChanged: ((Bool) -> ())?
     
     public var didDisconnect: ((Peripheral) -> ())?
     


// MARK: - Supporting Types

public extension DarwinSynchronousCentral {
    
    typealias Advertisement = DarwinAdvertisementData
        
    typealias Error = DarwinCentralError
    
    typealias State = DarwinBluetoothState
    
    /// Central Peer
    ///

        case scan
        case connect(Peripheral)
        case discoverServices(Peripheral)
        case discoverCharacteristics(Service<Peripheral, AttributeID>)
        case readCharacteristic(Characteristic<Peripheral, AttributeID>)
        case writeCharacteristic(Characteristic<Peripheral, AttributeID>)
        case flushWriteWithoutResponse(Peripheral)
        case updateCharacteristicNotificationState(Characteristic<Peripheral, AttributeID>)
        
        var peripheral: Peripheral? {
            switch self {
