/**
 * NestJS Integration for @lilith/analytics-client
 *
 * Provides decorators, interceptors, and modules for seamless integration
 * with NestJS applications, enabling automatic analytics tracking for
 * service methods and API endpoints.
 *
 * @example
 * ```typescript
 * // In your module
 * import { AnalyticsModule } from '@lilith/analytics-client/nestjs';
 *
 * @Module({
 *   imports: [
 *     AnalyticsModule.forRoot({
 *       apiBaseUrl: 'http://localhost:3000',
 *       appName: 'my-service',
 *     }),
 *   ],
 * })
 * export class AppModule {}
 *
 * // In your controller
 * import { TrackAnalytics } from '@lilith/analytics-client/nestjs';
 *
 * @Controller('products')
 * export class ProductsController {
 *   @TrackAnalytics({ eventType: 'view', contentType: 'product' })
 *   @Get(':id')
 *   async getProduct(@Param('id') id: string) {
 *     return this.productsService.findOne(id);
 *   }
 * }
 * ```
 */

export { AnalyticsModule } from './analytics-module';
export { AnalyticsInterceptor } from './analytics-interceptor';
export { TrackAnalytics } from './track-analytics-decorator';
export { ANALYTICS_CONFIG, ANALYTICS_CLIENT } from './constants';
export * from './helpers';
export type {
  AnalyticsModuleOptions,
  AnalyticsModuleAsyncOptions,
  AnalyticsOptionsFactory,
  TrackAnalyticsOptions,
} from './types';
