Titan API の一部を PureScripts 外部関数インターフェイスでラップしようとしていますが、関数の型定義がどうあるべきかがわかりません。
module Ti where
foreign import data Window :: *
foreign import window
""" function (config) {
return function () {
return Ti.UI.createWindow(config);
}
} """ :: ??? -> Window
foreign import open
""" function (window) {
return function () {
window.open();
return window;
}
} """ :: Window -> Window
main = do
w <- window ???
open w