Skip to Content
DocsClaDIUtilitiesMetadata Introspection

Metadata Introspection

ClaDI exposes helper utilities for reading decorator metadata.

getInjectableMetadata()

Read metadata produced by @Injectable(), @Inject(), and lifecycle decorators:

src/injectable-metadata.ts
import { getInjectableMetadata } from "@elsikora/cladi"; const metadata = getInjectableMetadata(UserService); console.log(metadata?.token); console.log(metadata?.lifecycle); console.log(metadata?.deps); console.log(metadata?.onInitMethod); console.log(metadata?.afterResolveMethod); console.log(metadata?.onDisposeMethod);

getModuleMetadata()

Read metadata produced by @Module():

src/module-metadata.ts
import { getModuleMetadata } from "@elsikora/cladi"; const moduleMetadata = getModuleMetadata(AppModule); console.log(moduleMetadata?.name); console.log(moduleMetadata?.imports); console.log(moduleMetadata?.providers); console.log(moduleMetadata?.exports);

Common Use Cases

  • Unit tests that assert decorator wiring
  • Build-time or startup diagnostics
  • Tooling that converts class metadata to plain IDIModule definitions
Last updated on