import type CDP from 'chrome-remote-interface';
import { type ChromiumMetricObserver, type Metric, type ObserverOptions } from '../../../types/index.js';
export declare class HeapObjectsTracking implements ChromiumMetricObserver {
    protected options?: ObserverOptions | undefined;
    readonly name = "heapObjectsTracking";
    readonly plugins: import("../../../index.js").ChromiumMeasurePlugin[];
    /**
     * Options to call `HeapProfiler.startTrackingHeapObjects` which are mandatory to collect
     *
     * @private
     */
    private readonly startTrackingHeapObjectsOptions;
    constructor(options?: ObserverOptions | undefined);
    /**
     * @inheritdoc
     */
    onStart(accumulator: Metric, developmentTools: CDP.Client): Promise<void>;
    /**
     * @inheritdoc
     */
    onSampling(accumulator: Metric, developmentTools: CDP.Client): Promise<void>;
    /**
     * @inheritdoc
     */
    onStop(accumulator: Metric, developmentTools: CDP.Client): Promise<void>;
    /**
     * Wrapper for `HeapProfiler.addHeapSnapshotChunk` and report response continuously
     */
    private listenForNextChunk;
    private stopTrackingHeapObjects;
}
