import * as Core from "@intelligentgraphics/ig.gfx.core";
import { SceneSnapshot } from "./Snapshot";
export interface UpdateSceneParams {
    articles: string[];
    snapshot: SceneSnapshot;
    loadGeometry(comId: string): Promise<void>;
    executeParentActions(actionHolderId: string, comId: string): Promise<boolean>;
    executeNeighborActions(comId: string): Promise<boolean>;
    deleteArticleAndChildren(comId: string): void;
    updateArticlePosition(parentComId: string, childComId: string, parentPoint: Core.Point, childPoint: Core.Point): void;
}
/**
 * Updates articles inside of the gfx scene
 *
 * A single generation consists of either positionally unrelated elements (root elements to be specific) or an elements children + right neighbor
 * Articles of one generation will be updated in parallel
 *
 * @param {UpdateSceneParams} params
 * @returns {Promise<void>} A list of all articles which have been added to the scene
 */
export declare const updateArticles: ({ snapshot, articles, loadGeometry, executeParentActions, executeNeighborActions, deleteArticleAndChildren, updateArticlePosition, }: UpdateSceneParams) => Promise<void>;
