TYPO3s source code is well documented and allows you to understand many internals just by browsing through the various classes and methods. Because we use JavaDoc style documentation, it is possible to automatically create a complete documentation of the TYPO3 core.
Additionally a document exists which describes important parts of the API and gives many examples how to use it. This document is called "TYPO3 Core APIs" and is accessible through the documentation library.
You can find the TYPO3 phpDoc API at api.typo3.org.