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-07-01 UTC."],[[["The latest version available is 2.46.1, representing the most recent update in the listed API versions."],["The document provides a list of API versions, ranging from 2.46.1 down to 2.1.2, showcasing the history of updates for the `com.google.api.core.InternalExtensionOnly` interface."],["`InternalExtensionOnly` is an annotation indicating that a public API is stable for use, but not for extension outside its package, meaning that while it is safe to call, adding new methods or changing functionality in an extended fashion outside of the package it is in is not stable."],["Adding the `InternalExtensionOnly` annotation to an API is considered a breaking change, impacting how the API can be utilized or modified."],["The `InternalExtensionOnly` interface includes an abstract method, `value()`, which returns a String providing context for the annotation's use."]]],[]]