code: func (n *node) Delete(bucketName string, key interface{}) error {
  	id, err := toBytes(key, n.codec)
  	if err != nil {
  		return err
  	}
  
  	return n.readWriteTx(func(tx *bolt.Tx) error {
  		return n.delete(tx, bucketName, id)
  	})
  }
docs: // Delete deletes a key from a bucket