Stratal API Reference
    Preparing search index...

    Function registerAs

    • Create a namespaced configuration factory Similar to NestJS registerAs

      Type Parameters

      • TKey extends string
      • TEnv
      • TConfig extends object

      Parameters

      • namespace: TKey

        Configuration namespace (e.g., 'database', 'email')

      • factory: (env: TEnv) => TConfig

        Factory function receiving env and returning config object

      Returns ConfigNamespace<TKey, TEnv, TConfig>

      ConfigNamespace with token, factory, and asProvider() method

      // apps/backend/src/config/database.config.ts
      export const databaseConfig = registerAs('database', (env: Env) => ({
      url: env.DATABASE_URL,
      maxConnections: parseInt(env.DATABASE_MAX_CONNECTIONS || '10'),
      }))

      // Auto-generates: databaseConfig.KEY = Symbol('CONFIG:database')

      // Usage in module:
      // Option 1: Manual provider
      {
      provide: databaseConfig.KEY,
      useFactory: databaseConfig.factory,
      inject: [DI_TOKENS.CloudflareEnv]
      }

      // Option 2: asProvider() helper
      databaseConfig.asProvider()
      // Returns: { provide: databaseConfig.KEY, useFactory: ..., inject: [DI_TOKENS.CloudflareEnv] }