export declare class YSemaphore { readonly permits: number; private readonly slots; private readonly availableSlots; private readonly pq; private sequence; constructor(permits: number); getAvailablePermits(): number; getQueueLength(): number; acquire(priority?: number): Promise; release(acquired: number): void; }