मैंने @types/mongoose
जो क्वेरी हेल्पर्स को सपोर्ट करता है। देखें यह उत्तर
एक संशोधित @types
install स्थापित करने के तरीकों के लिए पैकेट। मेरे संस्करण के साथ, आपको निम्नलिखित को models/article.ts
. में लिखने में सक्षम होना चाहिए :
import { Document, Schema, Model, model, DocumentQuery } from 'mongoose';
interface IArticle extends Document {
name: string;
}
interface IArticleModel extends Model<IArticle, typeof articleQueryHelpers> {
someStaticMethod(): Promise<any>;
}
const ArticleSchema = new Schema( { name: String } )
let articleQueryHelpers = {
byName(this: DocumentQuery<any, IArticle>, name: string) {
return this.find({ name });
}
};
ArticleSchema.query = articleQueryHelpers;
export default model<IArticle, IArticleModel>('Article', ArticleSchema);
और फिर routes/article.ts
काम करेगा। अगर यह आपके लिए काम करता है, तो मैं निश्चित रूप से टाइप किए गए मूल पैकेज के लिए एक पुल अनुरोध सबमिट करूंगा।