--- source_files: - Common/DTS.CommonCore/Interface/CheckTrigger/ICheckTriggerView.cs - Common/DTS.CommonCore/Interface/CheckTrigger/ICheckTriggerViewModel.cs generated_at: "2026-04-16T12:07:28.882495+00:00" model: "zai-org/GLM-5-FP8" schema_version: 1 sha256: "b59a55831fe5a086" --- # Documentation: ICheckTriggerView and ICheckTriggerViewModel ## 1. Purpose This module defines two marker interfaces, `ICheckTriggerView` and `ICheckTriggerViewModel`, which serve as contracts for the View and ViewModel components of a "CheckTrigger" feature within an MVVM (Model-View-ViewModel) architecture. These interfaces exist to establish type identity and hierarchy within the system, allowing components to be identified as belonging to the CheckTrigger subsystem while inheriting base behavior from core framework types. ## 2. Public Interface ### `ICheckTriggerView` - **Namespace:** `DTS.Common.Interface` - **Signature:** `public interface ICheckTriggerView : IBaseView { }` - **Description:** An empty marker interface extending `IBaseView`. Declares no members of its own; its purpose is purely typological, allowing implementations to be identified as CheckTrigger-specific views. ### `ICheckTriggerViewModel` - **Namespace:** `DTS.Common.Interface` - **Signature:** `public interface ICheckTriggerViewModel : IBaseViewModel { }` - **Description:** An empty marker interface extending `IBaseViewModel`. Declares no members of its own; its purpose is purely typological, allowing implementations to be identified as CheckTrigger-specific view models. ## 3. Invariants - Any class implementing `ICheckTriggerView` must also fulfill the contract of `IBaseView` (the specifics of which are not visible in the provided source). - Any class implementing `ICheckTriggerViewModel` must also fulfill the contract of `IBaseViewModel` (the specifics of which are not visible in the provided source). - Both interfaces are sealed in the sense that they add no additional members beyond their base interfaces; implementers need only satisfy base interface requirements. ## 4. Dependencies ### This module depends on: - `DTS.Common.Base` — provides `IBaseView` and `IBaseViewModel` base types ### What depends on this module: - **Unknown from source alone.** No consumers of these interfaces are visible in the provided files. ## 5. Gotchas - **Empty marker interfaces:** Both interfaces declare zero members. This is a common pattern for type discrimination, but developers should be aware that these interfaces provide no behavioral contracts beyond what their base interfaces define. - **Base interface contracts unknown:** The actual requirements for implementing these interfaces depend entirely on `IBaseView` and `IBaseViewModel`, which are not included in the provided source. Developers will need to consult those base definitions to understand full implementation requirements. - **Naming convention:** The "CheckTrigger" naming suggests a specific feature domain, but no documentation or comments in the source explain what "CheckTrigger" represents in the business logic.