Debounce a Single Value

What's the best way to debounce a single value using Async Algorithms and AsyncSequence ?
In Combine you could use something like this for a published property:

@Published var username = ""

var validateUsername: AnyPublisher<String, Never> {
        .debounce(for: 0.5, scheduler: RunLoop.main)

I've seen debounce in Async Algorithms, but how can I observe a property to collect into an AsyncSequence? didSet or a better way?

@observable class Account {
    var username = ""

    fun validateUsername(_ usernames: some AsyncSequence) {
        let queries = usernames
           .debounce(for: .milliseconds(300))

        // do something with queries