-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathIModuleOptions.cs
More file actions
21 lines (20 loc) · 827 Bytes
/
Copy pathIModuleOptions.cs
File metadata and controls
21 lines (20 loc) · 827 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
namespace SimpleModule.Core;
/// <summary>
/// Marker interface for module options classes. Implementations are auto-discovered
/// by the source generator, registered with <c>IOptions<T></c>, and exposed as
/// typed <c>Configure{Module}()</c> methods on <c>SimpleModuleOptions</c>.
/// </summary>
/// <remarks>
/// Each module may define at most one options class implementing this interface.
/// The host application can then configure module behavior at startup:
/// <code>
/// builder.AddSimpleModule(o =>
/// {
/// o.ConfigureProducts(p => p.MaxPageSize = 50);
/// });
/// </code>
/// Module code reads configured values via <c>IOptions<TOptions></c> injection.
/// </remarks>
#pragma warning disable CA1040 // Avoid empty interfaces
public interface IModuleOptions;
#pragma warning restore CA1040