Well any query that contains a string which comes from parsing some file content can be variable size by definition... and the size of the content shown depends on the content of the file/the state of the system. It's not really possible, unless you know for sure that nothing changes.
I mean take /etc/hosts for example and a table that shows it. Sure the lines are not normally that long, so it would take a lot of entries to reach the 1MB limit, but there's no limit to the /etc/hosts size, so you cannot know before hand unless that file never changes.
Now think of something that has more data embedded (maybe curl certificates), it's even worse.
What you can maybe do (which we don't have) is calculate the max size of a single row; though I suspect that in many cases it can easily go over 1MB.