import { Action, IActionDispatcher, IActionHandler, SourceModelChangedAction, ViewerOptions } from '@eclipse-glsp/sprotty';
/**
 * An external handler of the source model change event.
 *
 * This allows external applications to react specifically to this event, e.g. by bringing up the diagram,
 * check their dirty state, show a dialog, etc.
 */
export declare abstract class ExternalSourceModelChangedHandler {
    /**
     * Notifies about a change of the source model.
     * @returns actions to be dispatched after the notification.
     */
    abstract notifySourceModelChange(sourceModelName: string, options: ViewerOptions): Promise<Action[]>;
}
export declare class SourceModelChangedActionHandler implements IActionHandler {
    protected dispatcher: IActionDispatcher;
    protected options: ViewerOptions;
    protected externalModelSourceChangedHandler?: ExternalSourceModelChangedHandler;
    handle(action: Action): void;
    protected showSimpleNotification(action: SourceModelChangedAction): void;
}
//# sourceMappingURL=source-model-changed-action-handler.d.ts.map