Files
gridpilot.gg/apps/companion/main/di-tokens.ts
2025-12-11 21:06:25 +01:00

36 lines
1.1 KiB
TypeScript

/**
* Dependency Injection tokens for TSyringe container
*/
export const DI_TOKENS = {
// Core Services
Logger: Symbol.for('LoggerPort'),
// Repositories
SessionRepository: Symbol.for('SessionRepositoryPort'),
// Adapters
BrowserAutomation: Symbol.for('ScreenAutomationPort'),
AutomationEngine: Symbol.for('AutomationEnginePort'),
AuthenticationService: Symbol.for('AuthenticationServicePort'),
// Configuration
AutomationMode: Symbol.for('AutomationMode'),
BrowserModeConfigLoader: Symbol.for('BrowserModeConfigLoader'),
// Use Cases
StartAutomationUseCase: Symbol.for('StartAutomationSessionUseCase'),
CheckAuthenticationUseCase: Symbol.for('CheckAuthenticationUseCase'),
InitiateLoginUseCase: Symbol.for('InitiateLoginUseCase'),
ClearSessionUseCase: Symbol.for('ClearSessionUseCase'),
ConfirmCheckoutUseCase: Symbol.for('ConfirmCheckoutUseCase'),
// Services
OverlaySyncPort: Symbol.for('OverlaySyncPort'),
CheckoutService: Symbol.for('CheckoutServicePort'),
// Infrastructure
FixtureServer: Symbol.for('FixtureServer'),
} as const;
export type DITokens = typeof DI_TOKENS;