/
types.ts
32 lines (24 loc) · 908 Bytes
/
types.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import type SchemaType from './schematype';
export type NodeJSLikeCallback<R, E = any> = (err: E, result?: R) => void
export interface Options {
lean?: boolean;
skip?: number;
limit?: number;
[key: PropertyKey]: any;
}
export type SchemaTypeOptions = typeof SchemaType<unknown> | SchemaType<unknown> | ((...args: any[]) => any)
export type AddSchemaTypeSimpleOptions = SchemaTypeOptions | { type: SchemaTypeOptions; [key: string]: any };
export type AddSchemaTypeMixedOptions = AddSchemaTypeSimpleOptions | AddSchemaTypeSimpleOptions[];
export interface AddSchemaTypeLoopOptions {
[key: string]: AddSchemaTypeMixedOptions | AddSchemaTypeLoopOptions;
}
export type AddSchemaTypeOptions = AddSchemaTypeMixedOptions | AddSchemaTypeLoopOptions;
/**
* @typedef PopulateResult
* @property {string} path
* @property {*} model
*/
export type PopulateResult = {
path: string;
model: any;
};