/** * Active Directory Authentication Module * * Enterprise-grade Active Directory integration for React applications. * Supports Azure AD, Azure AD B2C, AD FS, and on-premises configurations. * * @module auth/active-directory * * @example * ```tsx * // Basic Azure AD setup * import { * ADProvider, * useActiveDirectory, * createADConfig, * } from '@/lib/auth/active-directory'; * * // Create configuration * const adConfig = createADConfig('azure-ad', { * tenantId: process.env.AZURE_AD_TENANT_ID, * clientId: process.env.AZURE_AD_CLIENT_ID, * redirectUri: window.location.origin, * }); * * // Wrap your app * function App() { * return ( * * * * ); * } * * // Use in components * function UserProfile() { * const { * user, * isAuthenticated, * login, * logout, * isInGroup, * hasPermission, * } = useActiveDirectory(); * * if (!isAuthenticated) { * return ; * } * * return ( *
*

Welcome, {user?.displayName}

* {isInGroup('sg-app-admins') && } * *
* ); * } * ``` */ export { ADProvider, ADContext } from './ad-provider'; export type { ADProviderProps } from './ad-provider'; export { useActiveDirectory, useADGroups, useADRoles, useADPermissions, useADAttributes, useADAuth, useADTokens, } from './useActiveDirectory'; export type { UseActiveDirectoryReturn } from './useActiveDirectory'; export { createADConfig, createAzureADConfig, createAzureB2CConfig, createADFSConfig, createOnPremisesConfig, validateADConfig, getAuthorityUrl, getConfiguredScopes, mergeWithGraphScopes, DEFAULT_AZURE_AD_CONFIG, DEFAULT_AZURE_B2C_CONFIG, DEFAULT_ADFS_CONFIG, DEFAULT_ON_PREMISES_CONFIG, DEFAULT_SSO_CONFIG, DEFAULT_GROUP_MAPPING_CONFIG, DEFAULT_AD_CONFIG, DEFAULT_AZURE_AD_SCOPES, GRAPH_GROUP_SCOPES, } from './ad-config'; export type { ConfigValidationResult } from './ad-config'; export { ADClient, createADClient, GraphAPIClientError, GRAPH_ENDPOINTS } from './ad-client'; export { ADGroupMapper, createGroupMapper, mergeGroupMappings, validateGroupMapping, GROUP_MAPPING_PRESETS, } from './ad-groups'; export type { GroupMappingResult } from './ad-groups'; export { ADAttributeMapper, createAttributeMapper, createExtensionMapping, attributeTransformers, attributeValidators, DEFAULT_ATTRIBUTE_MAPPINGS, EXTENDED_ATTRIBUTE_MAPPINGS, HEALTHCARE_ATTRIBUTE_MAPPINGS, } from './ad-attributes'; export type { AttributeMapping, AttributeMappingConfig, AttributeMappingResult, AttributeTransformer, AttributeValidator, } from './ad-attributes'; export { ADTokenHandler, createTokenHandler } from './ad-token-handler'; export type { TokenHandlerOptions, AcquisitionOptions } from './ad-token-handler'; export { SSOManager, createSSOManager, CrossDomainSSO, createCrossDomainSSO } from './ad-sso'; export type { SSOEventType, SSOBroadcastMessage, SSOEventHandler, SSOManagerOptions, } from './ad-sso'; export type { ADProviderType, ADGrantType, ADPromptBehavior, ADConfig, AzureADConfig, AzureADB2CConfig, ADFSConfig, OnPremisesADConfig, ADUser, ADUserAttributes, ADGroup, ADTokens, TokenAcquisitionRequest, TokenRefreshResult, ADGroupRoleMapping, ADGroupMappingConfig, ADAuthState, ADAuthError, ADContextValue, ADLogoutOptions, SSOSession, SSOConfig, GraphAPIRequest, GraphAPIResponse, GraphAPIError, ADAuthEvent, ADAuthEventHandler, ADEventEmitter, } from './types';