type-safe create method in TableData