@itrocks/reflect
Version:
Runtime introspection of TypeScript classes and their properties, including property type
15 lines (14 loc) • 653 B
TypeScript
import { Type } from '@itrocks/class-type';
import { CollectionType } from '@itrocks/property-type';
import { ReflectClass } from './class';
export declare class ReflectProperty<T extends object, K extends keyof T = keyof T> {
#private;
readonly name: K;
constructor(object: T | ReflectClass<T> | Type<T>, name: K);
get class(): ReflectClass<T>;
get collectionType(): import("@itrocks/property-type").PropertyTypes<T>[K] & CollectionType;
get defaultValue(): Partial<Pick<T, keyof T>>[K];
get object(): T | undefined;
get type(): import("@itrocks/property-type").PropertyTypes<T>[K];
get value(): T[K] | undefined;
}