@lu.musuhi/cim.ts
v0.1.1
Published
TypeScript implementation of the DMTF Common Information Model (CIM) Schema classes.
Readme
TypeScript CIM Core - DMTF Common Information Model
Early Development Stage - A TypeScript implementation of the DMTF Common Information Model (CIM) Schema for building management models and infrastructure tooling.
This library focuses on CIM core classes, state machines, and type-safe value maps that form the foundation for modeling managed elements, services, and jobs. It is aligned with the DMTF CIM Schema v2.55 and is designed to be extended by concrete providers.
Intended Use Cases
This library is being developed for:
- Systems management platforms implementing DMTF CIM semantics
- Infrastructure and service providers modeling managed resources
- Automation tooling that benefits from CIM state machines
- Typed domain models that follow CIM class contracts
Current Status
Early development - Core class hierarchy and several foundational types are implemented. The project is expanding toward broader CIM Schema coverage.
What's Implemented
- Core class hierarchy - CIM_ManagedElement, CIM_ManagedSystemElement, CIM_LogicalElement
- Lifecycle state machines - CIM_EnabledLogicalElement and CIM_Service behavior
- Job model - CIM_Job and CIM_ConcreteJob runtime APIs and JSON contracts
- Type-safe enums - CIM value maps for status, state, and job semantics
- Interfaces - ICIM_* contracts for data-only representations
Architecture Notes
- Type safety - Strict TypeScript settings and explicit CIM value maps
- Extensibility - Abstract classes ready for provider-specific subclasses
- CIM alignment - Property constraints and semantics follow v2.55
Getting Started
This project is not published to npm yet. To build locally:
npm install
npx tsc -p tsconfig.jsonExample
import { CIM_ManagedElement } from "./src/cimManagedElement.js";
class MyElement extends CIM_ManagedElement {
constructor() {
super("Demo", "Example managed element", "MyElement");
}
}Contributing
Contributions are welcome. Please open an issue or PR to discuss additions to the CIM class coverage.
License and Attribution
This project is licensed under the MIT License - see the LICENSE file for details.
DMTF CIM Schema Attribution
This implementation is based on the DMTF Common Information Model (CIM) Schema specification, copyright © Distributed Management Task Force, Inc. (DMTF). All rights reserved.
The CIM Schema is used under DMTF's policy allowing reproduction and implementation of DMTF specifications provided that correct attribution is given.
Note: Implementation of CIM elements may be subject to third-party patent rights. DMTF makes no representations regarding the existence of such rights. For patent disclosure information, visit: http://www.dmtf.org/about/policies/disclosures.php
