using JetBrains.Annotations; using System; using System.Collections.Generic; using WireMock.Matchers; using WireMock.Util; namespace WireMock.RequestBuilders { /// /// The ParamsRequestBuilder interface. /// public interface IParamsRequestBuilder { /// /// WithParam: matching on key only. /// /// The key. /// The match behaviour (optional). /// The . IRequestBuilder WithParam([NotNull] string key, MatchBehaviour matchBehaviour = MatchBehaviour.AcceptOnMatch); /// /// WithParam: matching on key only. /// /// The key. /// Defines if the key should be matched using case-ignore. /// The match behaviour (optional). /// The . IRequestBuilder WithParam([NotNull] string key, bool ignoreCase, MatchBehaviour matchBehaviour = MatchBehaviour.AcceptOnMatch); /// /// WithParam: matching on key and values. /// /// The key. /// The values. /// The . IRequestBuilder WithParam([NotNull] string key, [CanBeNull] params string[] values); /// /// WithParam: matching on key and values. /// /// The key. /// Defines if the key should be matched using case-ignore. /// The values. /// The . IRequestBuilder WithParam([NotNull] string key, bool ignoreCase, [CanBeNull] params string[] values); /// /// WithParam: matching on key and matchers. /// /// The key. /// The matchers. /// The . IRequestBuilder WithParam([NotNull] string key, [CanBeNull] params IStringMatcher[] matchers); /// /// WithParam: matching on key and matchers. /// /// The key. /// Defines if the key should be matched using case-ignore. /// The matchers. /// The . IRequestBuilder WithParam([NotNull] string key, bool ignoreCase, [CanBeNull] params IStringMatcher[] matchers); /// /// WithParam: matching on key, values and matchBehaviour. /// /// The key. /// The values. /// The match behaviour. /// The . IRequestBuilder WithParam([NotNull] string key, MatchBehaviour matchBehaviour, [CanBeNull] params string[] values); /// /// WithParam: matching on key, values and matchBehaviour. /// /// The key. /// Defines if the key should be matched using case-ignore. /// The values. /// The match behaviour. /// The . IRequestBuilder WithParam([NotNull] string key, MatchBehaviour matchBehaviour, bool ignoreCase = false, [CanBeNull] params string[] values); /// /// WithParam: matching on key, matchers and matchBehaviour. /// /// The key. /// The matchers. /// The match behaviour. /// The . IRequestBuilder WithParam([NotNull] string key, MatchBehaviour matchBehaviour, [CanBeNull] params IStringMatcher[] matchers); /// /// WithParam: matching on key, matchers and matchBehaviour. /// /// The key. /// Defines if the key should be matched using case-ignore. /// The matchers. /// The match behaviour. /// The . IRequestBuilder WithParam([NotNull] string key, MatchBehaviour matchBehaviour, bool ignoreCase = false, [CanBeNull] params IStringMatcher[] matchers); /// /// WithParam: matching on functions. /// /// The funcs. /// The . IRequestBuilder WithParam([NotNull] params Func>, bool>[] funcs); } }