from typing import Dict, Tuple, List
import time

_nav_cache: dict = {}
_nav_cache_ts: float = 0.0
_nav_ttl_seconds = 60 * 60 * 6

_detail_cache: Dict[str, Dict] = {}
_detail_cache_ts: Dict[str, float] = {}
_detail_ttl_seconds = 60 * 60 * 6

KNOWN_PRODUCT_SLUGS: set[str] = set()

_listing_variant_cache: Dict[str, Tuple[str, float]] = {}
_listing_variant_ttl = 60 * 60 * 6

_listing_page_cache: Dict[str, Tuple[Tuple[List[Dict], int], float]] = {}
_listing_page_ttl = 60 * 30

def now() -> float:
    return time.time()
