formatters = [ new BbvaFormatter, ]; } /** * @return array{description: string, original_description: string|null} */ public function format(string $description, ?string $bankName): array { if ($bankName) { foreach ($this->formatters as $formatter) { if ($formatter->matches($bankName)) { $formatted = $formatter->format($description); return [ 'description' => $formatted, 'original_description' => $formatted !== $description ? $description : null, ]; } } } return ['description' => $description, 'original_description' => null]; } }