TypeScript satisfies operator and type widening behavior
Type Inference vs. Explicit Annotation TypeScript 4.9 introduced the satisfies operator to validate that an expression matches a specific type without causing the resulting variable to widen to that type. This allows the compiler to retain the most specific inferred type, such as literal types or specific tuple lengths, which are typically lost when using a