go to definitionとかそのへん使えばできるんじゃね
LSPとかなんかの仕様読めば良さそう