```python
from typing import Dict

def fresh_value(entry: Dict[str, int], now: int) -> str:
    if not isinstance(entry, dict):
        raise ValueError("entry must be a dictionary")
    if not isinstance(now, int):
        raise ValueError("now must be an integer")
    
    if "value" not in entry or not isinstance(entry["value"], str):
        raise ValueError("entry must contain a string value")
    
    if "stored" not in entry or not isinstance(entry["stored"], int) or entry["stored"] < 0:
        raise ValueError("entry stored must be a non-negative integer")
    
    if "ttl" not in entry or not isinstance(entry["ttl"], int) or entry["ttl"] <= 0:
        raise ValueError("entry ttl must be a positive integer")
    
    if now < entry["stored"]:
        raise ValueError("now cannot be before the stored time of the record")
    
    return entry["value"]
```