export interface QueueTask {
}
export interface Queue {
    push(fn: (task: QueueTask) => void, ontimeout: () => void, timeoutMs: number): void;
    close(force: boolean): void;
}
export declare const timeout = 3000;
/**
 * Add tasks into task group. Create the task group if it dose not exist.
 *
 * @param {String}   key       task key
 * @param {Function} fn        task callback
 * @param {Function} ontimeout task timeout callback
 * @param {Number}   timeoutMs   timeout for task
 */
export declare function addTask(key: number, fn: (task: QueueTask) => void, ontimeout: () => void, timeoutMs: number): void;
/**
 * Destroy task group
 *
 * @param  {String} key   task key
 * @param  {Boolean} force whether close task group directly
 */
export declare function closeQueue(key: number, force: boolean): void;
