import { InheritClass } from "./InheritClass";

export const isQCObjects_Object = function (_:any):boolean {
    return (!!((typeof _ === "object" &&
      Object.hasOwn(_, "__classType") &&
      (!!_.__instanceID) &&
      Object.hasOwn(_, "__definition") &&
      typeof _.__definition !== "undefined"
    ))) || _ instanceof InheritClass;
  };

  export const isQCObjects_Class = function (_:any):boolean {
    return (!!((typeof _ === "function" &&
      (!_.__instanceID) &&
      (!!_.__definition) &&
      typeof _.__definition !== "undefined" &&
      !!_.__definition.__classType
    ))) || _.prototype instanceof InheritClass;
  };
