Must [sync] methods be always "procedures"?

Hi,

I assume you mean [async] instead of [sync]?
That is because when you mark a method as [async] it will be transpiled to a JavaScript async function and an async JavaScript function is automatically returning a Promise (= TJSPromise) so it cannot return a Boolean.

It can be challenging to understand this concept first, try to read this explanation from earlier:

So what you'll probably need is to create a promise that resolves with your boolean value and await that.