import { Action } from './base-protocol';
/**
 * Sent from the client to the server to set the model into a specific editor mode, allowing the server to react to certain
 * requests differently depending on the mode. A client may also listen to this action to prevent certain user interactions preemptively.
 * The corresponding namespace declares the action kind as constant and offers helper functions for type guard checks
 * and creating new `SetEditModeActions`.
 */
export interface SetEditModeAction extends Action {
    kind: typeof SetEditModeAction.KIND;
    /**
     * The new edit mode of the diagram.
     */
    editMode: string;
}
export declare namespace SetEditModeAction {
    const KIND = "setEditMode";
    function is(object: unknown): object is SetEditModeAction;
    function create(editMode: string): SetEditModeAction;
}
/**
 * The potential default values for the `editMode` property of  a {@link SetEditModeAction}.
 */
export declare namespace EditMode {
    const READONLY = "readonly";
    const EDITABLE = "editable";
}
//# sourceMappingURL=model-edit-mode.d.ts.map