The Go package libvirt.org/libvirt-go provides CGo binding from the OS native Libvirt API.
In general the Go representation is a direct 1-1 mapping from native API concepts to Go, so the native API documentation should serve as a reference for most behaviour.
For details of Go specific behaviour consult the Go package documentation.