/** @packageDocumentation
 * @module Tiles
 */
import { BeTimePoint, Id64Array } from "@itwin/core-bentley";
import { ElementGeometryChange, FeatureAppearanceProvider } from "@itwin/core-common";
import { RootIModelTile, Tile, TileDrawArgs, TileParams, TileTree } from "./internal";
/** The root tile for the branch of an [[IModelTileTree]] containing graphics for elements that have been modified during the current
 * Not intended for direct consumption - exported for use by [[IModelTileTree]].
 * [[GraphicalEditingScope]].
 * @internal
 */
export declare abstract class DynamicIModelTile extends Tile {
    protected constructor(params: TileParams, tree: TileTree);
    static create(root: RootIModelTile, elements: Iterable<ElementGeometryChange>): DynamicIModelTile;
    /** Updates the tiles when elements are modified during the editing scope. */
    abstract handleGeometryChanges(changes: Iterable<ElementGeometryChange>): void;
    /** Overrides symbology of the *static* [[IModelTile]]s to hide elements that have been deleted or modified. */
    abstract get appearanceProvider(): FeatureAppearanceProvider;
    /** Exposed strictly for tests. */
    abstract get hiddenElements(): Id64Array;
    /** Select tiles for display, requesting content for tiles as necessary. */
    abstract selectTiles(selected: Tile[], args: TileDrawArgs): void;
    /** Discard tiles that have not been used since the specified time point. */
    abstract pruneChildren(olderThan: BeTimePoint): void;
}
//# sourceMappingURL=DynamicIModelTile.d.ts.map