# PHP Extension Point and Listener List Overview of Extension Points and Listeners for PHP. **Product-Specific Plugin Development**: [PhpStorm](phpstorm.md) > See [](intellij_platform_extension_point_list.md) for IntelliJ Platform. 63 Extension Points and 11 Listeners ## PhpStorm ### PhpStorm – Listeners | Topic | Listener | |-------|----------| | [`ComposerInstalledPackagesService#PACKAGE_MANAGER_TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.composer.actions.update.ComposerInstalledPackagesService.ComposerUpdateListener) ![Project-Level][project-level] | `ComposerUpdateListener` | | [`RepositoriesComposerConfig#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.composer.json.cache.ComposerRepositoriesChangedListener) | `ComposerRepositoriesChangedListener` | | [`StateChangedListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.config.PhpProjectSharedConfiguration.StateChangedListener) | `StateChangedListener` | | [`StateChangedListener#LANGUAGE_LEVEL_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.config.PhpProjectSharedConfiguration.StateChangedListener) | `StateChangedListener` | | [`PhpProjectWorkspaceConfiguration#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.config.PhpProjectWorkspaceConfigurationListener) | `PhpProjectWorkspaceConfigurationListener` | | [`DefaultStubsPathListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.config.PhpRuntimeConfiguration.DefaultStubsPathListener) | `DefaultStubsPathListener` | | [`PhpInterpreterConflictResolveListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.config.interpreters.PhpInterpretersManagerImpl.PhpInterpreterConflictResolveListener) | `PhpInterpreterConflictResolveListener` | | [`StateChangedListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.debug.listener.PhpDebugExternalConnectionsAccepter.StateChangedListener) | `StateChangedListener` | | [`RectorChangesListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.rector.RectorChangesListener) | `RectorChangesListener` | | [`PhpRemoteInterpreterChangedListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.remote.interpreter.ui.PhpRemoteInterpreterConfigurationForm.PhpRemoteInterpreterChangedListener) | `PhpRemoteInterpreterChangedListener` | | [`CustomExpectationNotifier.Companion#TOPIC`](https://jb.gg/ipe/listeners?topics=com.pestphp.pest.features.customExpectations.CustomExpectationNotifier) ![Project-Level][project-level] | `CustomExpectationNotifier` | ### com.intellij.phing | Extension Point | Implementation | |-----------------|----------------| | ![Non-Dynamic][non-dynamic] | `PhingPhpFileDescriptionProvider` | | ![Non-Dynamic][non-dynamic] | `PropertyFilesManager` | ### com.intellij.php.psalm | Extension Point | Implementation | |-----------------|----------------| | ![Non-Dynamic][non-dynamic] | `PsalmConfigurationProvider` | ### com.intellij.php.tools.quality.phpstan | Extension Point | Implementation | |-----------------|----------------| | ![Non-Dynamic][non-dynamic] | `PhpStanConfigurationProvider` | ### com.jetbrains.php | Extension Point | Implementation | |-----------------|----------------| | ![Internal][internal] ![Project-Level][project-level] | `PhpTemplateDebugConfigurable` | | ![Internal][internal] | `PhpTemplateLanguagePathMapper` | | ![Deprecated][deprecated] | `PhpTypeProvider2` | | | [`EntryPoint`](%gh-ic%/platform/analysis-api/src/com/intellij/codeInspection/reference/EntryPoint.java) | | | `PhpRunConfigurationExtension` | | | `PhpArrayShapesProvider` | | ![Internal][internal] | `PhpBaseLexerProvider` | | | `PhpClassAliasProvider` | | | `ComposerExecutionProvider` | | ![Internal][internal] | `ComposerConfigClient` | | | `PhpCustomFormatFunctionsProvider` | | | `PhpInterpreterFormProvider` | | | `PhpInterpretersStateListener` | | ![Internal][internal] | `PhpCoreHandler` | | | `PhpCustomFunctionIndex` | | ![Internal][internal] | `PhpCustomFunctionPredicateIndex` | | ![Experimental][experimental] | `PhpCustomTemplatesNamesProvider` | | | `PhpLocalPathFixer` | | | `PhpDeprecationQuickFixesProvider` | | | `PhpDeprecationProvider` | | ![Internal][internal] | `PhpDfaStateFromAssertionProvider` | | ![Internal][internal] | `PhpDocPrefixProvider` | | | `PhpCustomDocTagValuesStubProvider` | | ![Internal][internal] | `PhpExpressionClassNamesProvider` | | | `PhpExternalUsagesSearcher` | | | `PhpFrameworkConfigurableProvider` | | | `PhpFrameworkUsageProvider` | | | `PhpIncludedPathsContributor` | | ![Project-Level][project-level] | `PhpInjectionExternalFragmentSubstProvider` | | ![Internal][internal] | `PhpKeyTypeProvider` | | ![Internal][internal] | `PhpLibraryRootProvider` | | ![Internal][internal] | `PhpMagicHandler` | | ![Internal][internal] | `PhpMetaSignatureResolver` | | ![Internal][internal] | `PhpMetaTableProvider` | | | `PhpNoReturnProvider` | | | `Settings` | | ![Internal][internal] | `PhpUnitSettingsLoader` | | | `PhpPredefinedVariableProvider` | | | `PhpMultipleDeclarationFilter` | | ![Experimental][experimental] | `PhpReferenceScopeExtension` | | | `RelatedToPhpFilesContributor` | | | `PhpRemoteInterpreterManager` | | ![Internal][internal] | `TemplateLanguageBackgroundColorProvider` | | ![Deprecated][deprecated] ![Internal][internal] | `PhpTestFrameworkOldConfigHolder` | | | `PhpTestFrameworkType` | | | `LaravelPintConfigurationProvider` | | | `MessDetectorConfigurationProvider` | | | `PhpCSFixerConfigurationProvider` | | | `PhpCSConfigurationProvider` | | | `QualityToolType` | | ![Deprecated][deprecated] | `PhpTypeProvider3` | | | `PhpTypeProvider4` | ### com.jetbrains.php.behat | Extension Point | Implementation | |-----------------|----------------| | | `ContextInterfaceProvider` | ### com.jetbrains.php.blade | Extension Point | Implementation | |-----------------|----------------| | ![Experimental][experimental] | `BladeDirectiveContributor` | ### com.jetbrains.php.framework | Extension Point | Implementation | |-----------------|----------------| | ![Internal][internal] | `FrameworkDescriptionProvider` | ### intellij.php.frontback.impl.xml | Extension Point | Implementation | |-----------------|----------------| | ![Internal][internal] | `PhpDocTagParser` | ### phpstorm-remote-interpreter-plugin.xml | Extension Point | Implementation | |-----------------|----------------| | | `PhpProjectConfigComponentProvider` | | | `PhpHelperScriptProvider` | | | `PhpRemoteProcessManager` | [deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square [removal]: https://img.shields.io/badge/-Removal-red?style=flat-square [obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square [experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square [internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square [project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square [non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square [dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square