export declare class BatchedUpdater {
    private updates;
    private scheduled;
    add(key: string, update: () => void): void;
    private flush;
}
export declare function throttle<T extends (...args: any[]) => void>(func: T, limit: number): T;
export declare function debounce<T extends (...args: any[]) => void>(func: T, wait: number): T;
export declare class MovingAverage {
    private size;
    private samples;
    private pointer;
    private sum;
    private count;
    constructor(size: number);
    add(value: number): number;
    get average(): number;
    reset(): void;
}
//# sourceMappingURL=performance-optimizations.d.ts.map