TS18047

'user' is possibly 'null'.

Broken Code ❌

function logName(user: unknown) {
  if (typeof user === 'object') {
    console.log(user.props.name);
  }
}

Solution:

This TypeScript error occurs because typeof user === "object" does not exclude the possibility of user being null, which is also considered an object in TypeScript/JavaScript.

Add an additional check to ensure that user is not null before accessing its properties.

Fixed Code ✔️

function logName(user: unknown) {
  if (user !== null && typeof user === 'object') {
    console.log((user as any).props.name);
  }
}