* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace League\CommonMark\Environment; use League\CommonMark\Delimiter\Processor\DelimiterProcessorCollection; use League\CommonMark\Extension\ExtensionInterface; use League\CommonMark\Node\Node; use League\CommonMark\Normalizer\TextNormalizerInterface; use League\CommonMark\Parser\Block\BlockStartParserInterface; use League\CommonMark\Parser\Inline\InlineParserInterface; use League\CommonMark\Renderer\NodeRendererInterface; use League\Config\ConfigurationProviderInterface; use Psr\EventDispatcher\EventDispatcherInterface; interface EnvironmentInterface extends ConfigurationProviderInterface, EventDispatcherInterface { /** * Get all registered extensions * * @return ExtensionInterface[] */ public function getExtensions(): iterable; /** * @return iterable */ public function getBlockStartParsers(): iterable; /** * @return iterable */ public function getInlineParsers(): iterable; public function getDelimiterProcessors(): DelimiterProcessorCollection; /** * @psalm-param class-string $nodeClass * * @return iterable */ public function getRenderersForClass(string $nodeClass): iterable; public function getSlugNormalizer(): TextNormalizerInterface; }