         }
     }
     
+    /**
+     Notifications
+     
+     This sub-procedure is used when a server is configured to notify a Characteristic Value to a client without expecting any Attribute Protocol layer acknowledgment that the notification was successfully received.
+     
+     ![Image](https://github.com/PureSwift/BluetoothLinux/raw/master/Assets/Notifications.png)
+     */
+    public func registerNotifications() {
+        
+        
+    }
+    
     // MARK: - Private Methods
     
     @inline(__always)

    ///
    /// This sub-procedure is used to read a Characteristic Value from a server when the client knows
    /// the Characteristic Value Handle.
    private func readCharacteristicValue(_ handle: UInt16, completion: @escaping (GATTClientResponse<Data>) -> ()) {
        
        // The Attribute Protocol Read Request is used with the

    ///
    /// This sub-procedure is used to read a Characteristic Value from a server when the client
    /// only knows the characteristic UUID and does not know the handle of the characteristic.
    ///
    /// ![Image](https://github.com/PureSwift/BluetoothLinux/raw/master/Assets/ReadUsingCharacteristicUUID.png)
    public func readCharacteristics(using uuid: BluetoothUUID,
                                    handleRange: (start: UInt16, end: UInt16) = (.min, .max),
                                    completion: @escaping (GATTClientResponse<[UInt16: Data]>) -> ()) {
