move interface into header