# Class TimerDefinition OptimaJet.Workflow.Core.Model.TimerDefinition Defines a named timer schedule used by timer-triggered transitions in a process scheme and specifies through [TimerDefinition.NotOverrideIfExists](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/TimerDefinition/) whether registration replaces an existing process timer with the same timer name. Namespace: [OptimaJet.Workflow.Core.Model](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/) ```csharp public sealed class TimerDefinition : BaseDefinition ``` ## Type Hierarchy - [BaseDefinition](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/BaseDefinition/) - TimerDefinition Current type ## Properties `[JsonConverter(typeof(StringEnumConverter))] [JsonConverter(typeof(SystemStringEnumConverter))] public TimerType Type { get; set; }` Gets or sets the [TimerType](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/TimerType/) that determines how [TimerDefinition.Value](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/TimerDefinition/) is interpreted to calculate the timer's execution time. `public string Value { get; set; }` Gets or sets the schedule value that [TimerDefinition.Type](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/TimerDefinition/) interprets to calculate the timer's execution time. `public bool NotOverrideIfExists { get; set; }` Gets or sets a value indicating whether registration preserves an existing process timer with the same timer name. ## Methods `public TimerDefinition Clone()` Creates a copy of the current [TimerDefinition](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/TimerDefinition/). ### Returns | Type | Description | | --- | --- | | `TimerDefinition` | A [TimerDefinition](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/TimerDefinition/) with the same timer configuration as the current instance. | ### Exceptions | Type | Description | | --- | --- | | `NullReferenceException` | The value of [BaseDefinition.DesignerSettings](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/BaseDefinition/) is [null](https://learn.microsoft.com/dotnet/csharp/language-reference/keywords/null). | ### Remarks The copied timer has independent [BaseDefinition.DesignerSettings](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/BaseDefinition/). [Previous TagHelper](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/TagHelper/) [Next TimerType](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/TimerType/)