import { API } from '../api';
import { APIRequest } from '../request';
export declare abstract class APIWorker {
    busy: boolean;
    paused: boolean;
    protected queue: APIRequest[];
    protected api: API;
    protected intervalPerRequests: number;
    /**
     * Constructor
     */
    constructor(api: API);
    enqueue(request: APIRequest): void;
    requeue(request: APIRequest): void;
    pause(): void;
    resume(): void;
    heat(): void;
    protected immediateHeat(): void;
    protected abstract execute(request?: APIRequest): unknown;
}
