import type { ResourceHandle } from "@arcgis/core/core/Handles";
/**
 * A reference counted handle that can be added and removed multiple times.
 */
export default class ReferenceCountedHandle {
    private _count;
    private _handle;
    private readonly _getHandle;
    constructor(getHandle: () => ResourceHandle);
    /**
     * Adds a reference to the handle.
     *
     * @returns A handle that can be removed.
     */
    add(): ResourceHandle;
    /**
     * Destroys the handle.
     */
    destroy(): void;
    /**
     * Removes a reference to the handle.
     *
     * @private
     */
    private _remove;
}
