Matt PocockMatt is a well-regarded TypeScript expert known for his ability to demystify complex TypeScript concepts. You might have noticed that there are two ways you can annotate a function on an object in TypeScript. interface Obj { // Method shorthand syntax version1(param: string): void; // Object property syntax version2: (param: string) => void; } They look very innocuous. But there's a sub