export function discriminate( discriminantKey: K, discriminantValue: V, ) { return >( obj: T & Record, ): obj is Extract> => obj[discriminantKey] === discriminantValue }