interfece: add prototype interface