2.1 KiB
2.1 KiB
source_files, generated_at, model, schema_version, sha256
| source_files | generated_at | model | schema_version | sha256 | ||
|---|---|---|---|---|---|---|
|
2026-04-17T16:25:09.412115+00:00 | zai-org/GLM-5-FP8 | 1 | 1379d037a4fc0710 |
PowerAndBattery
Purpose
This module defines the contract interfaces for the Power and Battery settings feature within the system settings hierarchy. It follows the Model-View-ViewModel (MVVM) pattern, providing empty marker interfaces that extend base view and view model contracts, allowing concrete implementations to be injected and swapped at runtime.
Public Interface
IPowerAndBatteryView (IPowerAndBatteryView.cs)
- Signature:
public interface IPowerAndBatteryView : IBaseView { } - Behavior: Marker interface for Power and Battery settings views. Inherits from
IBaseViewbut defines no additional members.
IPowerAndBatteryViewModel (IPowerAndBatteryViewModel.cs)
- Signature:
public interface IPowerAndBatteryViewModel : IBaseViewModel { } - Behavior: Marker interface for Power and Battery settings view models. Inherits from
IBaseViewModelbut defines no additional members.
Invariants
- Both interfaces must remain empty marker interfaces, relying entirely on their base contracts (
IBaseView,IBaseViewModel) for functionality. - The View-ViewModel pairing is implied by naming convention but not enforced at compile time.
Dependencies
- Depends on:
DTS.Common.Base(specificallyIBaseViewandIBaseViewModel) - Dependents: Unknown from source alone—likely consumed by concrete implementations in a UI layer and dependency injection configuration.
Gotchas
- The interfaces define no Power/Battery-specific members. Any domain-specific properties or methods must be added to these interfaces or handled through the base interfaces' mechanisms. The current design suggests either a placeholder implementation or that all required behavior is already defined in the base interfaces.