News for hackers. Stuff that matters.
Re:TypeScript’s quirks: How inconsistencies make the languag... by jahewson on Saturday February 01, 2020 @12:08AM (#22208820)
Nope. This is not how casting works in TypeScript. To get an unsafe cast you have to go via the ‘any’ or ‘unknown’ types.

e.g.

‘foo as unknown as Dog’

Re:TypeScript’s quirks: How inconsistencies make the languag... by okbake on Saturday February 01, 2020 @03:15PM (#22212943)
There are a few casts that are allowed that I would consider unsafe, particularly around unions of literals or using empty object literals:

  // No error here
  type Animal = 'dog' | 'cat';
  const notAnimal = 'couch' as Animal;

  // No error here either
  type Food = { isSpicy: boolean };
  const empty = {} as Food;

https://www.typescriptlang.org/play/index.html#code/C4TwDgpg...