Declared API
means an API declared as such, either in a component.xml file, or by virtue of having a "@since" tag in the JavaDoc. Technically, an API should be both in the component.xml file, and have a @since tag, but if only one of those conditions is true, we assume the omission is the error.
Provisional API
means a non-API that was documented as, basically, "we'd like this to be API someday, but have not had the time or resources or experience to officially declare it as such". The significance being, that anyone who uses it is accepting the risk of having to adjust to future changes (whereas APIs never change).
Internal non-API
is the case where some adopter has used some class clearly designated as "internal". While we still will use care to not capriciously break adopters who do that, its less clear we could accommodate, but we will work to figure out why they were, if there is a better way, etc.