@allgemein/schema-api
Version:
Library for schema api
25 lines (24 loc) • 926 B
TypeScript
import { IPropertyRef } from './IPropertyRef';
import { IBuildOptions } from './IBuildOptions';
import { IBaseRef } from './IBaseRef';
import { ILookupRegistry } from './ILookupRegistry';
import { IEntityRef } from './IEntityRef';
export declare function isClassRef(x: any): x is IClassRef;
export interface IClassRef extends IBaseRef {
isPlaceholder(): boolean;
isAnonymous(): boolean;
getClass(create?: boolean): Function;
getPropertyRef(name: string): IPropertyRef;
getPropertyRefs(): IPropertyRef[];
getEntityRef(): IEntityRef;
hasEntityRef(): boolean;
create<T>(addinfo?: boolean): T;
build<T>(instance: any, options?: IBuildOptions): T;
getNamespace(): string;
switchNamespace(namespace: string): void;
getRegistry(): ILookupRegistry;
getExtend(): IClassRef;
getExtends(): IClassRef[];
addExtend(ref: IClassRef): IClassRef;
isOf(instance: any): boolean;
}