The service name (must match the registration name)
A type-safe token
import { createToken } from '@stratix/di';
import { createContainer } from '@stratix/runtime';
// Define tokens
const LOGGER = createToken<Logger>('logger');
const USER_REPO = createToken<UserRepository>('userRepository');
// Register services
container.register({
logger: asClass(ConsoleLogger).singleton(),
userRepository: asClass(UserRepository).singleton()
});
// Type-safe resolution
const logger = LOGGER.resolve(container); // Type: Logger
const repo = USER_REPO.resolve(container); // Type: UserRepository
Creates a type-safe token for service resolution.
Tokens provide compile-time type safety and prevent typos in service names.