/** * Utility functions for working with class hierarchies and reflection */ export interface ClassInfo { /** * The name of the class */ name: string; /** * Reference to the class constructor */ reference: any; } /** * Gets the immediate superclass of the given class * @param ClassRef The class constructor reference * @returns The superclass constructor or null if no superclass */ export declare function GetSuperclass(ClassRef: any): any | null; /** * Gets the root class in the inheritance chain (the topmost user-defined class) * @param ClassRef The class constructor reference * @returns The root class constructor */ export declare function GetRootClass(ClassRef: any): any; /** * Checks if a class is a subclass of another class (at any level in the inheritance hierarchy) * Note: This checks the entire inheritance chain, not just the immediate parent * @param PotentialSubclass The potential subclass constructor * @param PotentialAncestor The potential ancestor class constructor * @returns True if PotentialSubclass inherits from PotentialAncestor at any level */ export declare function IsSubclassOf(PotentialSubclass: any, PotentialAncestor: any): boolean; /** * Checks if a class is a root class (has no user-defined superclass) * @param ClassRef The class constructor reference * @returns True if the class has no superclass */ export declare function IsRootClass(ClassRef: any): boolean; /** * Checks if a class is a descendant of another class (at any level in the hierarchy) * This is an alias for IsSubclassOf with a more descriptive name * @param PotentialDescendant The potential descendant class constructor * @param PotentialAncestor The potential ancestor class constructor * @returns True if PotentialDescendant inherits from PotentialAncestor at any level */ export declare function IsDescendantClassOf(PotentialDescendant: any, PotentialAncestor: any): boolean; /** * Gets the complete inheritance chain for a class * @param ClassRef The class constructor reference * @returns Array of ClassInfo objects, ordered from immediate superclass to root */ export declare function GetClassInheritance(ClassRef: any): ClassInfo[]; /** * Gets the complete class hierarchy including the class itself * @param ClassRef The class constructor reference * @returns Array of ClassInfo objects, ordered from the class itself up to root */ export declare function GetFullClassHierarchy(ClassRef: any): ClassInfo[]; /** * Checks if a value is a class constructor (not an instance) * @param value The value to check * @returns True if the value is a class constructor */ export declare function IsClassConstructor(value: any): boolean; /** * Gets the class name safely, handling minification and anonymous classes * @param ClassRef The class constructor reference * @returns The class name or a fallback string */ export declare function GetClassName(ClassRef: any): string; //# sourceMappingURL=ClassUtils.d.ts.map