node + bluebird + typescript で spread, finally を利用したら undefined is not a function

タイトルの通り、bluebird の spread, finally を利用すると、
undefined is not a function が発生してしまった。

しかも、特定のケースのみ発生する。

原因はTypeScriptの import のミスだった。

今回の実装では以下のように bluebird を読み込んでるけど・・・

import Promise = require('bluebird');

undefined is not a function が発生しているスクリプトでは読み込んでいなかった・・・。
つまり、nodeの生promiseを利用して spread, finally を使ってたから、
undefined is not a function になっていたみたい。

import を追加するとちゃんと動作しました。
Promise じゃなくて、 BlueBird とかって書こうかな・・・。