{% import '@lib/di.twig' as di %}
<?php

declare(strict_types=1);

namespace Drupal\{{ machine_name }}\PageCache;

{% apply sort_namespaces %}
use Drupal\Core\PageCache\ResponsePolicyInterface;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
  {% if services %}
{{ di.use(services) }}
  {% endif %}
{% endapply %}

/**
 * @todo Add policy description here.
 */
final class {{ class }} implements ResponsePolicyInterface {
{% if services %}

  /**
   * Constructs {{ class|article }} object.
   */
  public function __construct(
{{ di.signature(services) }}
  ) {}
{% endif %}

  /**
   * {@inheritdoc}
   */
  public function check(Response $response, Request $request): ?string {
    // @DCG
    // Return self::DENY to indicate that the response should not be stored in
    // the cache. Return NULL if the policy does not apply to the given request.
    return NULL;
  }

}
