<?php

namespace App\Framework\View\Caching\Strategies;

use App\Framework\View\Caching\TemplateContext;

interface ViewCacheStrategy
{
    public function shouldCache(TemplateContext $context): bool;
    public function generateKey(TemplateContext $context): string;
    public function getTtl(TemplateContext $context): int;
    public function canInvalidate(string $template): bool;
}
