namespace StellaOps.Notifier.WebService.Contracts;
///
/// Request for creating or updating a rule.
///
public sealed record RuleUpsertRequest
{
public string? Name { get; init; }
public RuleMatchRequest? Match { get; init; }
public IReadOnlyList? Actions { get; init; }
public bool? Enabled { get; init; }
public string? Description { get; init; }
}
///
/// Match criteria for a rule.
///
public sealed record RuleMatchRequest
{
public string[]? EventKinds { get; init; }
}
///
/// Action definition for a rule.
///
public sealed record RuleActionRequest
{
public string? ActionId { get; init; }
public string? Channel { get; init; }
public string? Template { get; init; }
public string? Locale { get; init; }
public bool? Enabled { get; init; }
}