pushScope() {
      // popVariables is not copied until first write.
      stack.push({ propVariables, hasBeenWritten: false });
    }
@type {Map<string, string[]>} Maps the variable to its definition. `props.a.b` is stored as `['a', 'b']`