The most in-depth documentation is already linked at the very bottom of the corresponding gwtproject.org page:
In addition there is a document which talks about union types in elemental2 which can be helpful as well if you have to deal with union types:
In general if you want to consume existing JS API then just model that API using @JsType(isNative = true, ...) annotated classes and for callbacks use @JsFunction annotated interfaces. Your small example could be something like:
You received this message because you are subscribed to the Google Groups "GWT Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to email@example.com.
To post to this group, send email to firstname.lastname@example.org.
Visit this group at https://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.