What is the actual structure inside a ROOT file?

Dear experts

Maybe this is a newbie question

I have read the structure of a ROOT file in a user-side view, TTrees, TBranches, etc. But I’m curious that how does root store data into a root file exactly? I mean, normal binary file has headers and data chunks, is root file just the same as them? If so is there a page that explains what is written in the header and what is the length (number of bits) of every parameters?

https://root.cern/doc/master/rootio.html

This is helpful…Thank you!