Indicates a public API that is stable for callers to use, but has no guarantee of stability for
extension. Consequently, the API should only be extended within the package containing the API.
For example:
An interface marked with this annotation can have new methods added to it.
A non-final class with this annotation can be marked final.
A class with this annotation can have new abstract methods added.
a non-final method with this annotation can be marked final.
The list above is just for illustration purposes and is not exhaustive.
Adding this annotation to an API is considered API-breaking.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-04-09 UTC."],[[["This webpage documents the `InternalExtensionOnly` interface across multiple versions, ranging from 2.1.2 to the latest version, 2.46.1."],["The `InternalExtensionOnly` interface signifies a public API that is stable for use but not for extension outside of its package."],["The API may undergo changes that break compatibility for extensions, such as adding new methods or finalizing classes, even though it is stable for direct use."],["This library is currently in a pre-GA stage, which means it may have limited support and potential compatibility issues between versions."],["The `value()` method within the `InternalExtensionOnly` interface returns a string providing context on why this interface/class has been annotated."]]],[]]