Support writing needed extension types

truff