using System;
using WireMock.Models;
namespace WireMock.Admin.Mappings;
///
/// MappingModel
///
[FluentBuilder.AutoGenerateBuilder]
public class MappingModel
{
///
/// Gets or sets the unique identifier.
///
public Guid? Guid { get; set; }
///
/// The datetime when this mapping was created or updated.
///
public DateTime? UpdatedAt { get; set; }
///
/// Gets or sets the TimeSettings when which this mapping should be used.
///
public TimeSettingsModel? TimeSettings { get; set; }
///
/// The unique title.
///
public string? Title { get; set; }
///
/// The description.
///
public string? Description { get; set; }
///
/// The priority. (A low value means higher priority.)
///
public int? Priority { get; set; }
///
/// The Scenario.
///
public string? Scenario { get; set; }
///
/// Execution state condition for the current mapping.
///
public string? WhenStateIs { get; set; }
///
/// The next state which will be signaled after the current mapping execution.
/// In case the value is null state will not be changed.
///
public string? SetStateTo { get; set; }
///
/// The request model.
///
public RequestModel Request { get; set; }
///
/// The response model.
///
public ResponseModel Response { get; set; }
///
/// Saves this mapping as a static mapping file.
///
public bool? SaveToFile { get; set; }
///
/// The Webhook.
///
public WebhookModel? Webhook { get; set; }
///
/// The Webhooks.
///
public WebhookModel[]? Webhooks { get; set; }
///
/// Fire and forget for webhooks.
///
public bool? UseWebhooksFireAndForget { get; set; }
///
/// Data Object which can be used when WithTransformer is used.
/// e.g. lookup an path in this object using
///
/// lookup data "1"
///
///
public object? Data { get; set; }
///
/// The probability when this request should be matched. Value is between 0 and 1. [Optional]
///
public double? Probability { get; set; }
///
/// The Grpc ProtoDefinition which is used for this mapping (request and response). [Optional]
///
public string? ProtoDefinition { get; set; }
}