// Field
Dictionary<string, List<(int Age, string Name)>> _userLookupDict = new(); // No need to re-iterate the type "Dictionary<string, List<(int Age, string Name)>>"!
void Test() {
// Locals
List<string> names = new(_userLookupDict.Keys); // Can still pass constructor parameters as usual
User u = new() { Name = "Ben", Age = 31 }; // Can use object initialization syntax as usual
}