ObjectKeysTyped

Object.keys() but type-safe, returns a typed array of keys instead of string[].

export function ObjectKeysTyped<T extends Record<string, unknown>>(
  obj: T,
): Array<keyof T> {
  return Object.keys(obj) as Array<keyof T>;
}