Является ли "тип" ключевым словом в JavaScript?

Я просто наткнулся на кого-то, использующего "тип" в части кода ES6.

export type Action =
  {
    type: 'todo/complete',
    id: string,
  } |
  {
    type: 'todo/create',
    text: string,
  } |
  {
    type: 'todo/destroy',
    id: string,
  } |
  {
    type: 'todo/destroy-completed',
  } |
  {
    type: 'todo/toggle-complete-all',
  } |
  {
    type: 'todo/undo-complete',
    id: string,
  } |
  {
    type: 'todo/update-text',
    id: string,
    text: string,
  };

Не мог найти ничего, что проливает свет на него. Это ключевое слово? Что он делает?

Ответ 2

Насколько мне известно, спецификация ES6 не отображает его как зарезервированное ключевое слово.

Следующие жетоны являются ключевыми словами ECMAScript и не могут использоваться как идентификаторы в программах ECMAScript.

break do in typeof case else instanceof var catch export new void class extends return while const finally super with continue for switch yield debugger function this default if throw delete import try try

Ответ 3

Вы можете отключить это

export interface Body {
   a: string
   b: string
   c: string
   // tslint:disable-next-line:no-reserved-keywords
   type: string
   f: string
   e: string
}