wrap(options: IBsLoadingOverlayOptions, promiseFunction: angular.IPromise<any> | (() => (angular.IPromise<any> | {}))): angular.IPromise<any> {
        let promise: () => (angular.IPromise<any> | {});

        if (typeof promiseFunction === 'function') {
            promise = <() => angular.IPromise<any>>promiseFunction;