convert callback to an interface object
fix memory leaks
refactor: move transferOwnership flag to bind api