import type { ConfidentialClientApplication } from '@azure/msal-node';

/**
 * DI token used to inject the MSAL Node confidential client.
 *
 * Usage:
 *   @Inject(MSAL_CLIENT) private readonly msal: ConfidentialClientApplication
 *
 * The provider lives in `AuthModule`. Construction is cheap (no
 * network call) so the client is built eagerly at module init; the
 * lazy authority-discovery round-trip MSAL needs runs on the first
 * actual auth method call (e.g. `getAuthCodeUrl`).
 */
export const MSAL_CLIENT = 'MSAL_CLIENT';

export type { ConfidentialClientApplication };
