Goal: Use conditional types with `infer` to extract the return type from different parser shapes (`parse`, `extract`, or callable).