 
         return urls
     }
+    
+    private func remove(fileAtURL url: URL, size: UInt64) throws {
+        do {
+            try self.fileManager.removeItem(at: url)
+            
+            usedDiskSize -= size // Update used size if item removed with success
+        } catch let error {
+            throw PersistenceError.other(Error.failedToRemoveFile(error))
+        }
+    }
 
     // MARK: - Operations
 

    }

    private func directoryContents(with keys: [URLResourceKey]) -> [URL] {
        guard let url = URL(string: configuration.path) else {
            assertionFailure("💥 failed to create url with path 👉 `\(configuration.path)`")
            return []
        }

        guard let urls = try? fileManager.contentsOfDirectory(at: url,
                                                              includingPropertiesForKeys: keys,

                                            attributes: nil)
        }
        catch let error {
            assertionFailure("💥 failed to create directory `\(configuration.path)` with error: \n\(error)")
            return false
        }

