TypeScript posts