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 lists the different versions of the `com.google.api.core.InternalExtensionOnly` Java API, ranging from version 2.46.1 (latest) down to 2.1.2."],["`InternalExtensionOnly` is a public Java API designed for stable use by callers, but with no stability guarantees for extension, meaning it's meant to only be extended within its own package."],["Modifications like adding new methods to an interface, marking a class as final, or adding new abstract methods are allowed and it is not considered breaking to the API."],["Adding this `InternalExtensionOnly` annotation to an existing API is considered a breaking change."],["The interface `InternalExtensionOnly` has one method `value()` which provides context information on why it has been annotated."]]],[]]