# Extension hooks Overview of all the extension hooks available in Django Components. Read more on [Extensions](../../concepts/advanced/extensions). ## Hooks ::: django_components.extension.ComponentExtension.on_component_class_created options: heading_level: 3 show_root_heading: true show_signature: true separate_signature: true show_symbol_type_heading: false show_symbol_type_toc: false show_if_no_docstring: true show_labels: false **Available data:** name | type | description --|--|-- `component_cls` | [`Type[Component]`](../api#django_components.Component) | The created Component class ::: django_components.extension.ComponentExtension.on_component_class_deleted options: heading_level: 3 show_root_heading: true show_signature: true separate_signature: true show_symbol_type_heading: false show_symbol_type_toc: false show_if_no_docstring: true show_labels: false **Available data:** name | type | description --|--|-- `component_cls` | [`Type[Component]`](../api#django_components.Component) | The to-be-deleted Component class ::: django_components.extension.ComponentExtension.on_component_data options: heading_level: 3 show_root_heading: true show_signature: true separate_signature: true show_symbol_type_heading: false show_symbol_type_toc: false show_if_no_docstring: true show_labels: false **Available data:** name | type | description --|--|-- `component` | [`Component`](../api#django_components.Component) | The Component instance that is being rendered `component_cls` | [`Type[Component]`](../api#django_components.Component) | The Component class `component_id` | `str` | The unique identifier for this component instance `context_data` | `Dict` | Dictionary of context data from `Component.get_context_data()` `css_data` | `Dict` | Dictionary of CSS data from `Component.get_css_data()` `js_data` | `Dict` | Dictionary of JavaScript data from `Component.get_js_data()` ::: django_components.extension.ComponentExtension.on_component_input options: heading_level: 3 show_root_heading: true show_signature: true separate_signature: true show_symbol_type_heading: false show_symbol_type_toc: false show_if_no_docstring: true show_labels: false **Available data:** name | type | description --|--|-- `args` | `List` | List of positional arguments passed to the component `component` | [`Component`](../api#django_components.Component) | The Component instance that received the input and is being rendered `component_cls` | [`Type[Component]`](../api#django_components.Component) | The Component class `component_id` | `str` | The unique identifier for this component instance `context` | [`Context`](https://docs.djangoproject.com/en/5.1/ref/templates/api/#django.template.Context) | The Django template Context object `kwargs` | `Dict` | Dictionary of keyword arguments passed to the component `slots` | `Dict` | Dictionary of slot definitions ::: django_components.extension.ComponentExtension.on_component_registered options: heading_level: 3 show_root_heading: true show_signature: true separate_signature: true show_symbol_type_heading: false show_symbol_type_toc: false show_if_no_docstring: true show_labels: false **Available data:** name | type | description --|--|-- `component_cls` | [`Type[Component]`](../api#django_components.Component) | The registered Component class `name` | `str` | The name the component was registered under `registry` | [`ComponentRegistry`](../api#django_components.ComponentRegistry) | The registry the component was registered to ::: django_components.extension.ComponentExtension.on_component_rendered options: heading_level: 3 show_root_heading: true show_signature: true separate_signature: true show_symbol_type_heading: false show_symbol_type_toc: false show_if_no_docstring: true show_labels: false **Available data:** name | type | description --|--|-- `component` | [`Component`](../api#django_components.Component) | The Component instance that is being rendered `component_cls` | [`Type[Component]`](../api#django_components.Component) | The Component class `component_id` | `str` | The unique identifier for this component instance `result` | `str` | The rendered component ::: django_components.extension.ComponentExtension.on_component_unregistered options: heading_level: 3 show_root_heading: true show_signature: true separate_signature: true show_symbol_type_heading: false show_symbol_type_toc: false show_if_no_docstring: true show_labels: false **Available data:** name | type | description --|--|-- `component_cls` | [`Type[Component]`](../api#django_components.Component) | The unregistered Component class `name` | `str` | The name the component was registered under `registry` | [`ComponentRegistry`](../api#django_components.ComponentRegistry) | The registry the component was unregistered from ::: django_components.extension.ComponentExtension.on_registry_created options: heading_level: 3 show_root_heading: true show_signature: true separate_signature: true show_symbol_type_heading: false show_symbol_type_toc: false show_if_no_docstring: true show_labels: false **Available data:** name | type | description --|--|-- `registry` | [`ComponentRegistry`](../api#django_components.ComponentRegistry) | The created ComponentRegistry instance ::: django_components.extension.ComponentExtension.on_registry_deleted options: heading_level: 3 show_root_heading: true show_signature: true separate_signature: true show_symbol_type_heading: false show_symbol_type_toc: false show_if_no_docstring: true show_labels: false **Available data:** name | type | description --|--|-- `registry` | [`ComponentRegistry`](../api#django_components.ComponentRegistry) | The to-be-deleted ComponentRegistry instance ## Objects ::: django_components.extension.OnComponentClassCreatedContext options: heading_level: 3 show_if_no_docstring: true ::: django_components.extension.OnComponentClassDeletedContext options: heading_level: 3 show_if_no_docstring: true ::: django_components.extension.OnComponentDataContext options: heading_level: 3 show_if_no_docstring: true ::: django_components.extension.OnComponentInputContext options: heading_level: 3 show_if_no_docstring: true ::: django_components.extension.OnComponentRegisteredContext options: heading_level: 3 show_if_no_docstring: true ::: django_components.extension.OnComponentUnregisteredContext options: heading_level: 3 show_if_no_docstring: true ::: django_components.extension.OnRegistryCreatedContext options: heading_level: 3 show_if_no_docstring: true ::: django_components.extension.OnRegistryDeletedContext options: heading_level: 3 show_if_no_docstring: true