Skip to main content

Function: safeObjectOmit()

Call Signatureโ€‹

function safeObjectOmit(
obj: null | undefined,
keys: readonly PropertyKey[]
): Record<string, never>;

Defined in: shared/utils/objectSafety.ts:230

Omitting keys from a nullish input yields an empty object.

Parametersโ€‹

objโ€‹

null | undefined

keysโ€‹

readonly PropertyKey[]

Returnsโ€‹

Record<string, never>

Call Signatureโ€‹

function safeObjectOmit<T, K>(
obj:
| T
| null
| undefined,
keys: readonly K[]
): {
[
KeyType in
| string
| number
| symbol as Filter<KeyType, K>
]: T[KeyType];
};

Defined in: shared/utils/objectSafety.ts:238

Omits the provided keys from the object.

Type Parametersโ€‹

Tโ€‹

T extends object

Kโ€‹

K extends string | number | symbol

Parametersโ€‹

objโ€‹

T | null | undefined

keysโ€‹

readonly K[]

Returnsโ€‹

{ [KeyType in string | number | symbol as Filter<KeyType, K>]: T[KeyType] }

Call Signatureโ€‹

function safeObjectOmit<T, K>(
obj:
| T
| null
| undefined,
keys: readonly K[]
): {
[
KeyType in
| string
| number
| symbol as Filter<KeyType, Extract<K, keyof T>>
]: T[KeyType];
};

Defined in: shared/utils/objectSafety.ts:249

Omits arbitrary own-property keys while preserving the known source shape.

Type Parametersโ€‹

Tโ€‹

T extends object

Kโ€‹

K extends PropertyKey

Parametersโ€‹

objโ€‹

T | null | undefined

keysโ€‹

readonly K[]

Returnsโ€‹

{ [KeyType in string | number | symbol as Filter<KeyType, Extract<K, keyof T>>]: T[KeyType] }