@extends support for Functions, see
https://developers.google.com/closure/compiler/docs/js-for-compiler?hl=nl

the ThisValue declared type of a functions will be set to this type if
@type is not set