import "../common/DisposePolyfill.js";
import { IModelConnection } from "@itwin/core-frontend";
/** @internal */
export interface ViewportSelectionHandlerProps {
    imodel: IModelConnection;
}
/**
 * A handler that syncs selection between unified selection
 * manager (`Presentation.selection`) and a viewport (`imodel.hilited`).
 * It has nothing to do with the viewport component itself - the
 * viewport updates its highlighted elements when `imodel.hilited`
 * changes.
 *
 * @internal
 */
export declare class ViewportSelectionHandler implements Disposable {
    private _imodel;
    private _selectionHandler;
    private _cancelOngoingChanges;
    constructor(props: ViewportSelectionHandlerProps);
    [Symbol.dispose](): void;
    get imodel(): IModelConnection;
    set imodel(value: IModelConnection);
    applyCurrentSelection(): void;
    private handleUnifiedSelectionChange;
    private onUnifiedSelectionChanged;
    private applyCurrentHiliteSet;
    private applyHiliteSet;
    private removeHiliteSet;
}
//# sourceMappingURL=ViewportSelectionHandler.d.ts.map