callbackをPromiseでwrap