Type
TwitterGitHub
5.0.0-rc.0
5.0.0-rc.0
  • Introduction
  • ❤ Benefits
  • Getting started
    • Skeleton
    • Installation
      • npm
    • Public API
    • General concepts
  • Helper
    • recognizeValue()
      • Recognized instances
      • OfRecognized
    • resultCallback()
    • typeOf()
  • is
    • isArray()
    • isBigInt()
    • isBoolean()
    • isBooleanObject()
    • isBooleanType()
    • isClass()
    • isDate()
    • isDefined()
    • ★ isFalse()
    • isFunction()
    • isInstance()
    • isKey()
    • isNull()
    • ★ isNumber()
    • isNumberBetween()
    • isNumberObject()
    • isNumberType()
    • isObject()
    • isObjectKey()
    • isObjectKeyIn()
    • isObjectKeys()
    • isObjectKeysIn()
    • isObjectSomeKeys()
    • isPrimitive()
    • isRegExp()
    • ★ isString()
    • isStringIncludes()
    • isStringIncludesSome()
    • isStringLength()
    • isStringLengthBetween()
    • isStringObject()
    • isStringType()
    • isSymbol()
    • ★ isTrue()
    • isType()
    • isUndefined()
  • is not
    • isNotBoolean()
    • isNotDefined()
    • isNotFunction()
    • isNotNull()
    • isNotNumber()
    • isNotString()
    • isNotUndefined()
  • Are
    • areDeterminer()
      • every()
      • forEach()
      • some()
    • areBigInt()
      • every()
      • forEach()
      • some()
    • areBoolean()
      • every()
      • forEach()
      • some()
    • areDate()
      • every()
      • forEach()
      • some()
    • areDefined()
      • every()
      • forEach()
      • some()
    • ★ areFalse()
      • every()
      • forEach()
      • some()
    • areNull()
      • every()
      • forEach()
      • some()
    • ★ areNumber()
      • every()
      • forEach()
      • some()
    • areRegExp()
      • every()
      • forEach()
      • some()
    • ★ areString()
      • every()
      • forEach()
      • some()
    • areSymbol()
      • every()
      • forEach()
      • some()
    • ★ areTrue()
      • every()
      • forEach()
      • some()
    • areUndefined()
      • every()
      • forEach()
      • some()
  • Guard
    • guardArray()
    • guardBigInt()
    • guardBoolean()
    • guardClass()
    • guardDate()
    • guardDefined()
    • ★ guardFalse()
    • guardFunction()
    • guardInstance()
    • guardKey()
    • guardNull()
    • guardNumber()
    • guardNumberBetween()
    • guardObject()
    • guardObjectKey()
    • guardObjectKeyIn()
    • guardObjectKeys()
    • guardObjectKeysIn()
    • guardObjectSomeKeys()
    • guardPrimitive()
    • guardRegExp()
    • ★ guardString()
    • guardStringIncludes()
    • guardStringIncludesSome()
    • guardStringLength()
    • guardStringLengthBetween()
    • guardSymbol()
    • ★ guardTrue()
    • guardType()
    • guardUndefined()
  • object
    • are: Are {}
    • guard: Guard {}
    • guardIs: GuardIs {}
    • is: Is {}
    • isNot: IsNot {}
    • type {}
  • Interface
    • MinMax
  • Type
    • AnyBoolean
    • AnyNumber
    • AnyString
    • CallbackPayload
    • Constructor
    • Defined
    • ForEachCallback
    • GenericObject
    • Never
    • NotUndefined
    • NumberBetween
    • Primitive
    • Primitives
    • ResultCallback
    • StringOfLength
    • Type
    • Types
    • Undefined
  • Experimental
    • isParam()
  • GIT
    • Commit
    • Semantic Versioning
  • Change log
    • Keep a changelog
    • Unreleased
    • v5.0.0
    • v4.2.0
  • License
    • MIT
  • Contact
    • ⋯ Chat
    • @ Email
  • Donate
    • ฿ Cryptocurrency
    • $ Fiat
Powered by GitBook
On this page
  • guardKey()
  • Generic type variables
  • Parameters
  • Return type
  • Returns
  • Example usage

Was this helpful?

  1. Guard

guardKey()

PreviousguardInstance()NextguardNull()

Last updated 3 years ago

Was this helpful?

guardKey()

Guards the value to be one of , , or type.

guard-key.func.ts
const guardKey = <Key extends PropertyKey, Payload extends object>(
  value: Key,
  callback?: ResultCallback<Key, Payload>,
  payload?: Payload
): value is Key => isKey(value, callback, payload);

Code on .

Generic type variables

KeyextendsPropertyKey

A generic type variable Key constrained by PropertyKey indicates captured type of the given via the and the parameter of the provided function type.

Payloadextendsobject

The Payload generic type variable constrained by indicates the type of optional parameter of the supplied function and optional parameter of the function from which it captures its value.

Parameters

value: Key

callback?: ResultCallback<Key, Payload>

payload?: Payload

Return type

value is Key

Returns

Example usage

// Example usage.
import { guardKey } from '@angular-package/type';

guardKey('string key'); // true, value is PropertyKey
guardKey(27); // true, value is PropertyKey
guardKey(Symbol('string key')); // true, value is PropertyKey
guardKey(Symbol(27)); // true, value is PropertyKey

guardKey(new String('string key') as any); // false, value is PropertyKey
guardKey(new Number(27) as any); // false, value is PropertyKey

The value of generic type variable to guard.

The optional callback of type with parameters, the that has been checked, the of this check, and of generic type variable with optional properties from the provided , to handle them before the return. By default, it uses function.

An optional of the generic type variable is assigned to the of the given function.

The return type is a as the result of its statement indicating the is generic type variable .

The return value is a indicating whether the is a , , or .

Key
boolean
value
Key
boolean
string
number
symbol
value
string
number
symbol
GitHub
ResultCallback
object
value
return type
callback
callback
payload
guardKey()
function
ResultCallback
resultCallback()
value
Payload
payload
object
Payload
callback
value
payload
result
payload
result
payload