registerPreprocessor($cleanupPreprocessor); $this->registerPreprocessor($topLevelPreprocessor); $this->registerPreprocessor($blocksWidthPreprocessor); $this->registerPreprocessor($typographyPreprocessor); } /** * @param array $parsedBlocks * @param array{width: string, background: string, padding: array{bottom: string, left: string, right: string, top: string}} $layoutStyles * @return array */ public function preprocess(array $parsedBlocks, array $layoutStyles): array { foreach ($this->preprocessors as $preprocessor) { $parsedBlocks = $preprocessor->preprocess($parsedBlocks, $layoutStyles); } return $parsedBlocks; } public function registerPreprocessor(Preprocessor $preprocessor): void { $this->preprocessors[] = $preprocessor; } }