Registers a descriptor, making it the active entry for its id.
Optional context: ExtensionLifecycleContextRemoves the active descriptor for an id. If older descriptors exist in the stack, they become active again.
Optional context: ExtensionLifecycleContextReturns the active descriptor for the provided id.
Lists all currently active descriptors for this registry.
Returns the full stack history for a descriptor id.
Clears all stacks, calling deactivate hooks for active descriptors.
Optional context: ExtensionLifecycleContext
Maintains layered stacks of descriptors for a particular extension kind. New registrations push onto the stack, allowing later descriptors to override earlier ones while maintaining history for fallbacks or debugging.