Operator satisfies przychodzi nam na ratunek w sytuacji, gdy nie chcemy otypowywać zmiennej obiektowej, a jednocześnie chcielibyśmy sprawdzić, czy spełnia ona zdefiniowany przez typ kształt obiektu. Sprawdzeniu podlegać będą typy kluczy, jaki dopuszczalne typy wartości. W przypadku różnicy TS da nam ostrzeżenie.
Stosujemy ten operator po nawiasach klamrowych. Wpisujemy satisfies i nazwę aliasu typu, który ma zostać spełniony.
Przypomnijmy, iż możemy nie chcieć otypować zmiennej. Jeżeli np. wartość ma typ unii i chcielibyśmy odwołać się do niej w dalszej części kodu wówczas TS nie wie, czy dana operacja będzie możliwa. Na pewno natomiast zaproponuje nam operacje, które są wspólne dla wszystkich typów unii określonych dla tej wartości. Jednym z rozwiązań może być zawężanie typów unii w oparciu o nazwę klucza w obiekcie.
Temat ciekawie omówiony na filmie • Unie w typach obiektowych #typescript .
Gdy jednak mamy dużo takich ifów to zarządzenie nimi staje się problematyczne. I wówczas sięgnąć możemy po operator satisfies.