UNPKG

ts-data-forge

Version:

[![npm version](https://img.shields.io/npm/v/ts-data-forge.svg)](https://www.npmjs.com/package/ts-data-forge) [![npm downloads](https://img.shields.io/npm/dm/ts-data-forge.svg)](https://www.npmjs.com/package/ts-data-forge) [![License](https://img.shields.

26 lines (24 loc) 595 B
import { WarnTypeTagName } from './tag.mjs'; import { type NarrowToWarn } from './types.mjs'; /** * Type guard for the Warn variant. * * @example * * ```ts * const maybeWarn = TernaryResult.warn('value', 'check logs') as TernaryResult< * string, * string, * string * >; * * if (TernaryResult.isWarn(maybeWarn)) { * assert.strictEqual(maybeWarn.value, 'value'); * * assert.strictEqual(maybeWarn.warning, 'check logs'); * } * ``` */ export const isWarn = <R extends UnknownTernaryResult>( result: R, ): result is NarrowToWarn<R> => result.$$tag === WarnTypeTagName;