Допустим, есть функция, которая может вернуть либо SomeType1, либо SomeType2.
Внутри этой функции выполняется Http запрос и возвращается JSON.
Вроде бы, все хорошо, но до тех пор, пока я не попытаюсь обратиться к методам класса или выполнить instanceof...
Так как типы носят декоративный характер и фактически никакого приведения не выполняется.
Как правильно сделать приведение типов? Как отличить один тип возвращаемого объекта от другого?
Например вот:
getType(id: number) {
return this._httpClient.get<Type|Error>(`${this.apiUrl}/${id}`, { withCredentials: true });
}
Т.е на выходе я получаю либо Type, либо Error. Неужели поля нужно ручками перебирать, а потом делать Object.Assing, что бы получить реальный тип и корректно начали работать instaneOf и методы?