conditional typing issue in typescript + react?

I am getting below error

Type ‘{ error: false; }’ is not assignable to type ‘x’.
Type ‘{ error: false; }’ is missing the following properties from type ‘ErrorWithMessage2’: name, message

I am trying to add conditional tying error: true then errorMessage is required
else error: false errorMessage is non mandatory

interface Error {
  error: boolean;
}

interface ErrorWithMessage extends Error {
  error: true;
  errorMessage: string;
}

interface ErrorWithMessage2 extends Error {
  error: false;
  errorMessage?: string;
}

type x = ErrorWithMessage | ErrorWithMessage2;

const abc: x = {
  error: false,
};   

if you see abc is type “x” still giving error why ?