downloadFileToDisk
abstract suspend fun downloadFileToDisk(url: String, headers: Map<String, String>? = null, body: Any?, httpMethod: HttpMethod, targetFileName: String, onProgress: suspend (Float) -> Unit = {}, onDownloadFinished: suspend () -> Unit = {}, onDownloadFailure: suspend (Throwable) -> Unit = {}): Result<Unit>
Streams the response body straight to targetFileName, without ever holding the full file in memory.