smartdata/dist/smartdata.classes.dbcollection.d.ts

30 lines
961 B
TypeScript
Raw Normal View History

2016-09-12 16:14:01 +00:00
/// <reference types="q" />
2016-09-11 16:01:46 +00:00
import * as plugins from './smartdata.plugins';
2016-09-12 21:50:25 +00:00
import { Db } from './smartdata.classes.db';
2016-09-13 20:53:21 +00:00
export interface IFindOptions {
limit?: number;
}
export declare function Collection(db: Db): (constructor: any) => void;
2016-09-11 16:01:46 +00:00
export declare class DbCollection<T> {
collection: plugins.mongodb.Collection;
2016-09-13 20:53:21 +00:00
name: string;
2016-09-12 21:50:25 +00:00
constructor(nameArg: string, dbArg: Db);
2016-09-11 16:01:46 +00:00
/**
* adds a validation function that all newly inserted and updated objects have to pass
*/
2016-09-12 15:31:23 +00:00
addObjectValidation(funcArg: any): void;
2016-09-11 16:01:46 +00:00
/**
2016-09-12 15:31:23 +00:00
* finds an object in the DbCollection
2016-09-11 16:01:46 +00:00
*/
2016-09-13 20:53:21 +00:00
find(docMatchArg: T | any, optionsArg?: IFindOptions): plugins.q.Promise<T[]>;
2016-09-12 15:31:23 +00:00
/**
* inserts object into the DbCollection
*/
2016-09-12 16:14:01 +00:00
insertOne(docArg: T): plugins.q.Promise<void>;
2016-09-11 16:01:46 +00:00
/**
* inserts many objects at once into the DbCollection
*/
2016-09-12 16:14:01 +00:00
insertMany(docArrayArg: T[]): plugins.q.Promise<void>;
private checkDoc(doc);
2016-09-11 16:01:46 +00:00
}