import RedisMutex from './RedisMutex';
import { LockOptions, RedisClient } from './types';
export default class RedisSemaphore extends RedisMutex {
    protected _kind: string;
    protected _limit: number;
    constructor(client: RedisClient, key: string, limit: number, options?: LockOptions);
    protected _refresh(): Promise<boolean>;
    protected _acquire(abortSignal?: AbortSignal): Promise<boolean>;
    protected _release(): Promise<void>;
}
