The OT spec is the definitive document: https://www.microsoft.com/typography/otspec/otff.htm Look at the list of font tables, OpenType supports everything, but the individual formats are (to oversimplify), as follows:
- TTF = Required Tables + Tables Related to TrueType Outlines
- PostScript Flavor OTF = Required Tables + Tables Related to PostScript Outlines + Advanced Typographic Tables
- TrueType Flavor OTF = Required Tables + Tables Related to TrueType Outlines + Advanced Typographic Tables
Note that in a PostScript flavor OTF the glyph outlines are simply an entire Adobe CFF font embedded in a table. CFF is in turn a compact representation of a PostScript Type 1 font. There's an entire CFF spec too: https://partners.adobe.com/public/developer/en/font/5176.CFF...
I know close to nothing about them.