{"version":3,"file":"omit.cjs","names":[],"sources":["../../src/object/omit.ts"],"sourcesContent":["/**\n * Creates an object composed of properties that are not omitted\n * @param obj - The source object\n * @param keys - The property keys to omit\n * @returns Returns the new object\n * @example\n * const obj = { a: 1, b: 2, c: 3 };\n * omit(obj, ['a', 'c']); // { b: 2 }\n */\nexport function omit<T extends object, K extends keyof T>(obj: T, keys: readonly K[]): Omit<T, K> {\n  if (obj == null) {\n    return {} as Omit<T, K>;\n  }\n\n  const result = { ...obj } as Record<PropertyKey, unknown>;\n  const keysSet = new Set(keys);\n\n  for (const key of keysSet) {\n    delete result[key];\n  }\n\n  return result as Omit<T, K>;\n}\n"],"mappings":";;;;;;;;;;;AASA,SAAgB,KAA0C,KAAQ,MAAgC;CAChG,IAAI,OAAO,MACT,OAAO,CAAC;CAGV,MAAM,SAAS,EAAE,GAAG,IAAI;CACxB,MAAM,UAAU,IAAI,IAAI,IAAI;CAE5B,KAAK,MAAM,OAAO,SAChB,OAAO,OAAO;CAGhB,OAAO;AACT"}