import { _A } from "@effect/core/stm/THub/definition"
import { TDequeueSym } from "@effect/core/stm/THub/definition/TDequeue"
export class InternalTDequeue implements THub.TDequeue {
readonly [TDequeueSym]: TDequeueSym = TDequeueSym
readonly [_A]!: () => A
constructor(
readonly hubSize: TRef,
readonly publisherHead: TRef>>,
readonly requestedCapacity: number,
readonly subscriberHead: TRef>>,
readonly subscriberCount: TRef,
readonly subscribers: TRef>>>>
) {}
}
/**
* @tsplus macro remove
*/
export function concreteTDequeue(
_: THub.TDequeue
): asserts _ is InternalTDequeue {
//
}