export declare class AsyncExecutionStack {
    private executionSlots;
    private isProcessing;
    getExclusiveExecutionSlot<T = any>(funcArg: () => Promise<T>, timeoutArg?: number): Promise<T>;
    getNonExclusiveExecutionSlot<T = any>(funcArg: () => Promise<T>, timeoutArg?: number): Promise<T>;
    private processExecutionSlots;
    private executeExclusiveSlot;
    private executeNonExclusiveSlots;
}
