octonom
Version:
Object Document Mapper for any database
45 lines (31 loc) • 999 B
text/typescript
import { ArrayCollection, Model, Property, Schema } from '../../../lib/main';
export class NestedModel extends Model {
.String()
public id: string;
.String()
public name: string;
}
export const nestedCollection = new ArrayCollection<NestedModel>(NestedModel, {modelIdField: 'id'});
export class AllModel extends Model {
.Any()
public any: any;
.Array({elementSchema: new Schema.Boolean()})
public array: boolean[];
.Boolean()
public boolean: boolean;
.Date()
public date: Date;
.Model({model: NestedModel})
public model: NestedModel;
.Number()
public number: number;
.Object({schemaMap: {enabled: new Schema.Boolean()}})
public object: {enabled: boolean};
.Reference({collection: () => nestedCollection})
public reference: string | NestedModel;
.String()
public string: string;
constructor(data?: Partial<AllModel>) {
super(data);
}
}