Question about modifications to Interfaces

Slightly off topic… I have never used interfaces in Xojo… but with what I say above, and what I now know about Swift… Is it correct to assume the an Xojo Interface is identical in function to a Swift Protocol?

As in Swift I would see something like this

protocol Foo : NSObjectProtocol {
func bar()
}

protocol  Baz  : NSObjectProtocol {
func bar()
}

class foobar :  foo, baz {

func main() {
          sub bar()
}
 }

Not that EXACT Swift syntax… but same vein?

Turns out I am using Protocol/Delegates and Enums both 1000x more in Swift than in Xojo and it makes things much simpler in a lot of respects