diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md
index 83d78bfd6f..088a423eb7 100644
--- a/CONTRIBUTORS.md
+++ b/CONTRIBUTORS.md
@@ -8,7 +8,8 @@ All definitions files include a header with the author and editors, so at some p
* [Ace Cloud9 Editor](http://ace.ajax.org/) (by [Diullei Gomes](https://github.com/Diullei))
* [Add To Home Screen](http://cubiq.org/add-to-home-screen) (by [James Wilkins](http://www.codeplex.com/site/users/view/jamesnw))
* [AmCharts](http://www.amcharts.com/) (by [Covobonomo](https://github.com/covobonomo/))
-* [AngularAgility](https://github.com/AngularAgility/AngularAgility) (by [Roland Zwaga](https://github.com/rolandzwaga)
+* [AngularAgility](https://github.com/AngularAgility/AngularAgility) (by [Roland Zwaga](https://github.com/rolandzwaga))
+* [AngularBootstrapLightbox](https://github.com/compact/angular-bootstrap-lightbox) (by [Roland Zwaga](https://github.com/rolandzwaga))
* [AngularFire](https://www.firebase.com/docs/angular/reference.html) (by [Dénes Harmath](https://github.com/thSoft))
* [AngularJS](http://angularjs.org) (by [Diego Vilar](https://github.com/diegovilar)) ([wiki](https://github.com/borisyankov/DefinitelyTyped/wiki/AngularJS-Definitions-Usage-Notes))
* [angularLocalStorage](https://github.com/agrublev/angularLocalStorage) (by [Hiroki Horiuchi](https://github.com/horiuchi/))
diff --git a/angular-bootstrap-lightbox/angular-bootstrap-lightbox-tests.ts b/angular-bootstrap-lightbox/angular-bootstrap-lightbox-tests.ts
new file mode 100644
index 0000000000..21e9b2ce98
--- /dev/null
+++ b/angular-bootstrap-lightbox/angular-bootstrap-lightbox-tests.ts
@@ -0,0 +1,35 @@
+///
+
+var imageList:angular.bootstrap.lightbox.ILightboxImageInfo[] = [];
+imageList.push({
+ url: 'url1',
+ width: 100,
+ height: 100
+});
+imageList.push({
+ url: 'url2',
+ width: 100,
+ height: 100,
+ thumbUrl: 'thumbUrl',
+ caption: 'caption'
+});
+
+var lightBox:angular.bootstrap.lightbox.ILightbox = {};
+lightBox.openModal(imageList, 0);
+
+var provider:angular.bootstrap.lightbox.ILightBoxProvider = {};
+provider.templateUrl = 'templateUrl';
+provider.calculateImageDimensionLimits = (dimensions:angular.bootstrap.lightbox.IImageDimensionParameter):angular.bootstrap.lightbox.IImageDimensionLimits=> {
+ return {
+ minWidth: 100,
+ minHeight: 100,
+ maxWidth: dimensions.windowWidth - 102,
+ maxHeight: dimensions.windowHeight - 136
+ };
+};
+provider.calculateModalDimensions = (dimensions:angular.bootstrap.lightbox.IModalDimensionsParameter):angular.bootstrap.lightbox.IModalDimensions=> {
+ return {
+ width: Math.max(500, dimensions.imageDisplayWidth + 42),
+ height: Math.max(500, dimensions.imageDisplayHeight + 76)
+ };
+ };
\ No newline at end of file
diff --git a/angular-bootstrap-lightbox/angular-bootstrap-lightbox.d.ts b/angular-bootstrap-lightbox/angular-bootstrap-lightbox.d.ts
new file mode 100644
index 0000000000..299967bdd1
--- /dev/null
+++ b/angular-bootstrap-lightbox/angular-bootstrap-lightbox.d.ts
@@ -0,0 +1,51 @@
+// Type definitions for angular-bootstrap-lightbox
+// Project: https://github.com/compact/angular-bootstrap-lightbox
+// Definitions by: Roland Zwaga
+// Definitions: https://github.com/borisyankov/DefinitelyTyped
+
+declare module angular.bootstrap.lightbox {
+
+ export interface ILightboxImageInfo {
+ url: string;
+ width: number;
+ height: number;
+ thumbUrl?: string;
+ caption?: string;
+ }
+
+ export interface IImageDimensionLimits {
+ minWidth?: number;
+ minHeight?: number;
+ maxWidth?: number;
+ maxHeight?: number;
+ }
+
+ export interface IImageDimensionParameter {
+ windowWidth:number;
+ windowHeight:number;
+ imageWidth:number;
+ imageHeight:number;
+ }
+
+ export interface IModalDimensionsParameter {
+ windowWidth:number;
+ windowHeight:number;
+ imageDisplayWidth:number;
+ imageDisplayHeight:number;
+ }
+
+ export interface IModalDimensions {
+ width:number;
+ height:number;
+ }
+
+ export interface ILightbox {
+ openModal(images:ILightboxImageInfo[], index:number):void;
+ }
+
+ export interface ILightBoxProvider {
+ templateUrl:string;
+ calculateImageDimensionLimits:(dimensions:IImageDimensionParameter)=>IImageDimensionLimits;
+ calculateModalDimensions:(dimensions:IModalDimensionsParameter)=>IModalDimensions;
+ }
+}
\ No newline at end of file