import RageClick from './extensions/rageclick';
import { DecideResponse, Properties } from './types';
import { PostHog } from './posthog-core';
type HeatmapEventBuffer = {
    [key: string]: Properties[];
} | undefined;
export declare class Heatmaps {
    instance: PostHog;
    rageclicks: RageClick;
    _enabledServerSide: boolean;
    _initialized: boolean;
    _mouseMoveTimeout: ReturnType<typeof setTimeout> | undefined;
    private buffer;
    private _flushInterval;
    constructor(instance: PostHog);
    get flushIntervalMilliseconds(): number;
    get isEnabled(): boolean;
    startIfEnabled(): void;
    afterDecideResponse(response: DecideResponse): void;
    getAndClearBuffer(): HeatmapEventBuffer;
    private _setupListeners;
    private _getProperties;
    private _onClick;
    private _onMouseMove;
    private _capture;
    private flush;
}
export {};
