'; public function __construct(string|array $templateCandidates = []) { // no-op } public function setTemplate(string|array $templateCandidates): static { return $this; } public function hasTemplate(string|array $templateCandidates): bool { return true; } public function renderString(string $template, ViewLayerData $model, array $overlay = [], bool $cache = true): string { return $this->output; } public function render(ViewLayerData $model, array $overlay = []): string { return $this->output; } public function setOutput(string $output): void { $this->output = $output; } }