Enforcing Io.Queue directionality at compile time?

In Go, you may enforce the direction of a channel at compile time like so:

func ping(pings chan<- string, msg string) {
    pings <- msg
}

func pong(pings <-chan string, pongs chan<- string) {
    msg := <-pings
    pongs <- msg
}

Is there any equivalent to this with the new Io.Queue?

Nope, but you could make produce/consumer wrapper types to accomplish this.