typescript check which union type code example

Example 1: typescript union

// Union Type: function reacts depending on x type (array of string OR string)
function welcomePeople(x: string[] | string) {
  if (Array.isArray(x)) {
    console.log("Hello, " + x.join(" and "));  		// 'x' is 'string[]'
  } else {										
    console.log("Welcome lone traveler " + x);		// 'x' is 'string'
  }
}

Example 2: typescript union types

type Cow = {
  name: string;
  moo: () => void;
};

type Dog = {
  name: string;
  bark: () => void;
};

type Cat = {
  name: string;
  meow: () => void;
};

// union type
type Animals = Cow | Dog | Cat;