diff --git a/passport-beam/passport-beam-tests.ts b/passport-beam/passport-beam-tests.ts
new file mode 100644
index 0000000000..29d59218b3
--- /dev/null
+++ b/passport-beam/passport-beam-tests.ts
@@ -0,0 +1,27 @@
+///
+
+/**
+ * Created by AtlasDev on 4/10/2016.
+ * Based on typings from passport-facebook by jcabresos.
+ */
+import passport = require('passport');
+import beam = require('passport-beam');
+
+var User = {
+ findOrCreate(id:string, provider:string, callback:(err:any, user:any) => void): void {
+ callback(null, { username: 'Dany' });
+ }
+}
+
+passport.use(new beam.Strategy({
+ clientID: BEAM_CLIENT_ID,
+ clientSecret: BEAM_CLIENT_SECRET,
+ callbackURL: "http://127.0.0.1:3000/auth/beam/callback"
+ },
+ function(accessToken:string, refreshToken:string, profile:beam.Profile, done:(error:any, user?:any) => void) {
+ User.findOrCreate(profile.id, profile.provider, function(err, user) {
+ if (err) { return done(err); }
+ done(null, user);
+ });
+ })
+);
diff --git a/passport-beam/passport-beam.d.ts b/passport-beam/passport-beam.d.ts
new file mode 100644
index 0000000000..495ed2589e
--- /dev/null
+++ b/passport-beam/passport-beam.d.ts
@@ -0,0 +1,37 @@
+// Type definitions for passport-beam 1.0.4
+// Project: https://github.com/alfw/passport-beam
+// Definitions by: AtlasDev
+// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
+
+///
+
+declare module "passport-beam" {
+
+ import * as passport from 'passport';
+ import * as express from 'express';
+
+ interface Profile extends passport.Profile {
+ gender: string;
+ profileUrl: string;
+ id: number
+ username: string;
+ provider: string;
+ email: string;
+
+ _raw: string;
+ _json: any;
+ }
+
+ interface IStrategyOption {
+ clientID: string;
+ clientSecret: string;
+ callbackURL: string;
+ }
+
+ class Strategy implements passport.Strategy {
+ constructor(options: IStrategyOption, verify: (accessToken: string, refreshToken: string, profile: any, done: (error: any, user?: any) => void) => void);
+ name: string;
+ authenticate: (req: express.Request, options?: Object) => void;
+ }
+
+}
\ No newline at end of file