diff --git a/types/connect-mongo/connect-mongo-tests.ts b/types/connect-mongo/connect-mongo-tests.ts index 4e3c7f8381..289ca85978 100644 --- a/types/connect-mongo/connect-mongo-tests.ts +++ b/types/connect-mongo/connect-mongo-tests.ts @@ -11,42 +11,47 @@ var MongoStore = connectMongo(session); /// Use MongoStore +var url = 'mongodb://localhost/test'; + // MongoUrlOptions app.use(session({ secret: 'secret', - store: new MongoStore({url: 'mongodb://localhost/test'}) + store: new MongoStore({url}) })); app.use(session({ secret: 'secret', store: new MongoStore({ - url: 'mongodb://localhost/test', + url, collection: "test-sessions", ttl: 30 * 24 * 60 * 60 // = 30 days }) })); // MongooseConnectionOptions -mongoose.connect('mongodb://localhost/test') +mongoose.connect(url) app.use(session({ secret: 'secret', store: new MongoStore({mongooseConnection: mongoose.connection}) })); // NativeMongoOptions -var Db = mongodb.Db -var Server = mongodb.Server -var mongoDb = new Db('test', new Server('localhost', 27017)); -app.use(session({ - secret: 'secret', - store: new MongoStore({db: mongoDb}) -})); +var MongoClient = mongodb.MongoClient; +MongoClient.connect(url, { + useNewUrlParser: true, + useUnifiedTopology: true, +}).then(client => { + app.use(session({ + secret: 'secret', + store: new MongoStore({ client }) + })); +}); // NativeMongoPromiseOptions var Client = mongodb.MongoClient; -var mongoDbPromise = Client.connect('mongodb://localhost/test').then(client => client.db()) +var clientPromise = Client.connect(url); app.use(session({ secret: 'secret', - store: new MongoStore({ dbPromise: mongoDbPromise }) + store: new MongoStore({ clientPromise }) })); diff --git a/types/connect-mongo/index.d.ts b/types/connect-mongo/index.d.ts index ea06a885d0..2d9584509d 100644 --- a/types/connect-mongo/index.d.ts +++ b/types/connect-mongo/index.d.ts @@ -1,6 +1,7 @@ -// Type definitions for connect-mongo +// Type definitions for connect-mongo 3.0 // Project: https://github.com/kcbanner/connect-mongo // Definitions by: Mizuki Yamamoto +// Guy Ellis // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 3.0 @@ -92,11 +93,11 @@ declare namespace connectMongo { } export interface NativeMongoOptions extends DefaultOptions { - db: mongodb.Db; + client: mongodb.MongoClient; } export interface NativeMongoPromiseOptions extends DefaultOptions { - dbPromise: Promise; + clientPromise: Promise; } export interface MongoStoreFactory {