Reading text line by line from SD
The error has nothing to do with what readStringUntil returns. It has to do with what parameters it accepts.

The function expects a single character to look for. Instead you are passing it a string (C string) containing one character.

In C you represent a string (char *) using "", and a single character (char) using ''.

Since readStringUntil expects a char, not a char *, you need to use '':

String line = offline.readStringUntil('\n');