@schamane/small-graphql-mongoose-middleware
Version:

12 lines (11 loc) • 643 B
TypeScript
import { Document, Model } from 'mongoose';
import { Paged } from '../models/paged';
import { MongoDataSource } from '.';
import { GrapqhContext } from '..';
import { Filter, QueryFieldsType, Sorter } from './mongo/filter';
export declare abstract class MongoPagedDataSource<T extends Document, TContext extends GrapqhContext> extends MongoDataSource<T, TContext> {
constructor(entity: Model<T>, fieldTranslations: QueryFieldsType, exts?: unknown[]);
listPaged(sort?: Sorter, pages?: number): Promise<Paged<T>>;
filterPaged(filters?: Filter[], sort?: Sorter, pages?: number): Promise<Paged<T>>;
byId(id: string): Promise<T>;
}