*/ public function getCacheKeys( array $formats ): array; /** * Expand messages in the diff text using the current MessageLocalizer. * * Perform any other necessary post-cache transformations. * * @param string $format * @param string $diff * @param array $options An associative array of options, may contain: * - reducedLineNumbers: If true, remove "line 1" but allow other line numbers * @return string */ public function localize( string $format, string $diff, array $options = [] ): string; /** * Get table prefixes for the specified format. These are HTML fragments * placed above all slot diffs. The key should be a string, used for sorting * and deduplication. * * @param string $format * @return array */ public function getTablePrefixes( string $format ): array; /** * Given a format, get a list of formats which can be generated at the same * time with minimal additional CPU cost. * * @param string $format * @return string[] */ public function getPreferredFormatBatch( string $format ): array; }