# Grasshopper.Kernel.Undo namespace

Assembly: [Grasshopper](https://developer.rhino3d.com/api/gh1/assembly/grasshopper.md)

## Interfaces

- [IGH_UndoAction](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.undo.igh-undoaction.md): Base interface for all undo/redo actions

## Classes

- [GH_ArchivedUndoAction](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.undo.gh-archivedundoaction.md): Base class implementation for undo actions that require (de)serialization of data.
- [GH_ObjectUndoAction](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.undo.gh-objectundoaction.md): Utility base class for undo actions that operate on a single IGH_DocumentObject.
- [GH_UndoAction](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.undo.gh-undoaction.md): Base class implementation for undo actions.
- [GH_UndoException](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.undo.gh-undoexception.md): Exception associated with undo events
- [GH_UndoRecord](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.undo.gh-undorecord.md): Represents a single undo/redo record. A single record may contain any number of undo actions.
- [GH_UndoServer](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.undo.gh-undoserver.md): Provides access to a documents undo data.

## Enums

- [GH_UndoState](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.undo.gh-undostate.md): State enumeration for undo records.
