// Copyright (c) ppy Pty Ltd . Licensed under the MIT Licence. // See the LICENCE file in the repository root for full licence text. using System.Collections.Generic; namespace osu.Game.Rulesets { public interface IRulesetStore { /// /// Retrieve a ruleset using a known ID. /// /// The ruleset's internal ID. /// A ruleset, if available, else null. IRulesetInfo? GetRuleset(int id); /// /// Retrieve a ruleset using a known short name. /// /// The ruleset's short name. /// A ruleset, if available, else null. IRulesetInfo? GetRuleset(string shortName); /// /// All available rulesets. /// IEnumerable AvailableRulesets { get; } } }