mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2026-10-05 23:37:04 +00:00
updates passport-local-mongoose to use mongoose intefaces instead of type intersections
This commit is contained in:
@@ -77,10 +77,9 @@ options.errorMessages = errorMessages;
|
||||
|
||||
UserSchema.plugin(passportLocalMongoose, options);
|
||||
|
||||
type UserModel<T extends PassportLocalDocument> = _UserModel<T> & PassportLocalModel<T>;
|
||||
interface _UserModel<T extends PassportLocalDocument> {}
|
||||
interface UserModel<T extends PassportLocalDocument> extends PassportLocalModel<T> {}
|
||||
|
||||
let UserModel: UserModel<User> = model<User>('User', UserSchema) as UserModel<User>;
|
||||
let UserModel: UserModel<User> = model<User>('User', UserSchema);
|
||||
//#endregion
|
||||
|
||||
|
||||
@@ -96,7 +95,7 @@ passport.use('login', new LocalStrategy({
|
||||
process.nextTick(() => {
|
||||
UserModel
|
||||
.findOne({ 'username': username })
|
||||
.exec((err: any, user: model<User>) => {
|
||||
.exec((err: any, user: User) => {
|
||||
if (err) {
|
||||
console.log(err);
|
||||
return done(err, null);
|
||||
|
||||
+4
-5
@@ -10,14 +10,13 @@ declare module 'mongoose' {
|
||||
import passportLocal = require('passport-local');
|
||||
|
||||
// methods
|
||||
export interface PassportLocalDocument {
|
||||
export interface PassportLocalDocument extends Document {
|
||||
setPassword(password: string, cb: (err: any, res: any) => void): void;
|
||||
authenticate(password: string, cb: (err: any, res: any, error: any) => void): void;
|
||||
}
|
||||
|
||||
// statics
|
||||
export type PassportLocalModel<T extends PassportLocalDocument> = _PassportLocalModel<T> & Model<T>;
|
||||
interface _PassportLocalModel<T extends PassportLocalDocument> {
|
||||
interface PassportLocalModel<T extends PassportLocalDocument> extends Model<T> {
|
||||
authenticate(): (username: string, password: string, cb: (err: any, res: T, error: any) => void) => void;
|
||||
serializeUser(): (user: PassportLocalModel<T>, cb: (err: any) => void) => void;
|
||||
deserializeUser(): (username: string, cb: (err: any) => void) => void;
|
||||
@@ -77,11 +76,11 @@ declare module 'mongoose' {
|
||||
): this;
|
||||
}
|
||||
|
||||
export function model<T extends PassportLocalDocument, Statics>(
|
||||
export function model<T extends PassportLocalDocument>(
|
||||
name: string,
|
||||
schema?: PassportLocalSchema,
|
||||
collection?: string,
|
||||
skipInit?: boolean): Statics & PassportLocalModel<T>;
|
||||
skipInit?: boolean): PassportLocalModel<T>;
|
||||
}
|
||||
|
||||
declare module 'passport-local-mongoose' {
|
||||
|
||||
Reference in New Issue
Block a user