// Copyright © WireMock.Net using System.Diagnostics.CodeAnalysis; namespace WireMock.Handlers; public interface IScenarioStateStore { bool TryGet(string name, [NotNullWhen(true)] out ScenarioState? state); IReadOnlyList GetAll(); bool ContainsKey(string name); bool TryAdd(string name, ScenarioState scenarioState); ScenarioState AddOrUpdate(string name, Func addFactory, Func updateFactory); ScenarioState? Update(string name, Action updateAction); bool TryRemove(string name); void Clear(); }