[bindings] Use common conv in `_write` impls, drop type restrictions