If you're going with this design, you don't need this type at all, just use IDictionary<DiagnosticSettings, object> directly.