full typespec, stubbed out functions / template