hasKeys<T, Key>(obj, keys): obj is T extends { [K in string | number | symbol]: any } ? Extract<{ [K in string | number | symbol]: any }, T<T>> : Extract<{ [K in string | number | symbol]: unknown }, T>
Returns obj is T extends { [K in string | number | symbol]: any } ? Extract<{ [K in string | number | symbol]: any }, T<T>> : Extract<{ [K in string | number | symbol]: unknown }, T>
Example
if (hasKeys(value, ['a', 'b'])) { console.log(value.a, value.b) }
Checks if unknown object have provided keys.