move template type to definitions