public function __construct(Signer $signer, string $signatureKey, string $verificationKey, SetCookie $defaultCookie, Parser $tokenParser, int $expirationTime, CurrentTimeProviderInterface $currentTimeProvider, int $refreshTime = self::DEFAULT_REFRESH_TIME)
{
$this->signer = $signer;
$this->signatureKey = $signatureKey;
$this->verificationKey = $verificationKey;
$this->tokenParser = $tokenParser;
$this->defaultCookie = clone $defaultCookie;
$this->expirationTime = $expirationTime;
$this->currentTimeProvider = $currentTimeProvider;
$this->refreshTime = $refreshTime;
}