Builder Class

Packages > @anticrm/model > Builder

Signature:

declare class Builder 

Constructors

List of constructors for this class
Constructor Modifiers Description
(constructor)(memdb) Constructs a new instance of the Builder class

Methods

List of methods on this class
Method Modifiers Description
add(classes)
attr(_class, values)
createClass(_id, _extends, _attributes, _domain, _native)
createDocument(_class, values, _id)
createMixin(_id, _extends, _attributes, _domain, _native)
dump()
dumpAll()
getDomain(domain)
load(model)
mixin(id, clazz, values)
mixinDocument(doc, clazz, values)
newInstance(_class, values)

Constructors

Builder.(constructor)

Constructs a new instance of the Builder class

Signature:

constructor(memdb?: Model);

Parameters

List of parameters
Parameter Type Description
memdb Model

Methods

add

Signature:

add(...classes: {
        new (): Obj;
    }[]): void;

Parameters

List of parameters
Parameter Type Description
classes { new (): Obj; }[]

Returns:

void

attr

Signature:

attr<M extends Emb>(_class: Ref<Class<M>>, values: OptionalMethods<Omit<M, keyof Emb>>): Attribute;

Parameters

List of parameters
Parameter Type Description
_class Ref<Class>
values OptionalMethodsEmb>>

Returns:

Attribute

createClass

Signature:

createClass<T extends E, E extends Obj>(_id: Ref<Class<T>>, _extends: Ref<Class<E>>, _attributes: AllAttributes<T, E>, _domain?: string, _native?: Resource<any>): EClass<T, E>;

Parameters

List of parameters
Parameter Type Description
_id Ref<Class>
_extends Ref<Class>
_attributes AllAttributes
_domain string
_native Resource

Returns:

EClass<T, E>

createDocument

Signature:

createDocument<M extends Doc>(_class: Ref<Class<M>>, values: Omit<M, keyof Doc>, _id?: Ref<M>): M;

Parameters

List of parameters
Parameter Type Description
_class Ref<Class>
values OmitDoc>
_id Ref

Returns:

M

createMixin

Signature:

createMixin<T extends E, E extends Doc>(_id: Ref<Mixin<T>>, _extends: Ref<Class<E>>, _attributes: AllAttributes<T, E>, _domain?: string, _native?: Resource<any>): EClass<T, E>;

Parameters

List of parameters
Parameter Type Description
_id Ref<Mixin>
_extends Ref<Class>
_attributes AllAttributes
_domain string
_native Resource

Returns:

EClass<T, E>

dump

Signature:

dump(): Doc[];

Returns:

Doc[]

dumpAll

Signature:

dumpAll(): {
        [key: string]: Doc[];
    };

Returns:

{ [key: string]: Doc[]; }

getDomain

Signature:

getDomain(domain: string): Model;

Parameters

List of parameters
Parameter Type Description
domain string

Returns:

Model

load

Signature:

load(model: (builder: Builder) => void): void;

Parameters

List of parameters
Parameter Type Description
model (builder: Builder) => void

Returns:

void

mixin

Signature:

mixin<T extends E, E extends Doc>(id: Ref<E>, clazz: Ref<Mixin<T>>, values: Omit<T, keyof E>): void;

Parameters

List of parameters
Parameter Type Description
id Ref
clazz Ref<Mixin>
values Omit

Returns:

void

mixinDocument

Signature:

mixinDocument<T extends E, E extends Doc>(doc: E, clazz: Ref<Mixin<T>>, values: Omit<T, keyof E>): void;

Parameters

List of parameters
Parameter Type Description
doc E
clazz Ref<Mixin>
values Omit

Returns:

void

newInstance

Signature:

newInstance<M extends Emb>(_class: Ref<Class<M>>, values: OptionalMethods<Omit<M, keyof Emb>>): M;

Parameters

List of parameters
Parameter Type Description
_class Ref<Class>
values OptionalMethodsEmb>>

Returns:

M