import { concreteTDequeue } from "@effect/core/stm/THub/operations/_internal/InternalTDequeue"
/**
* Checks whether the queue is shut down.
*
* @tsplus getter effect/core/stm/THub/TDequeue isShutdown
*/
export function isShutdown(self: THub.TDequeue): STM {
concreteTDequeue(self)
return STM.Effect((journal) => {
const currentSubscriberHead = self.subscriberHead.unsafeGet(journal)
return currentSubscriberHead == null
})
}