I am concerned that this is not a fully thought-out solution. visitParameter will be called when visiting any sub-tree that _looks_ like a function call. For example: constructor types, function types and get/set accessors. Type definitions should not be checked for references. In addition, for constructor functions such as `constructor(public member1, private member2)`, the validation should only be performed on `member2`.