/// <reference types="node" />
import EventEmitter from 'events';
import { TextDocument } from 'vscode-languageserver-textdocument';
export interface ScheduledItem {
    document: TextDocument;
    createdAt: number;
}
export declare const PROCESSING_TIMEOUT = 50;
export declare class DocumentScheduler extends EventEmitter {
    private scheduledItems;
    private tickRef;
    private readonly processingTimeout;
    private _timer;
    constructor(processingTimeout?: number);
    private tick;
    schedule(document: TextDocument): boolean;
    isScheduled(document: TextDocument): boolean;
    cancel(document: TextDocument): boolean;
}
