/**
 * Angular Integration fuer @breakpilot/consent-sdk
 *
 * Phase 4 refactor: thin barrel. Interface, service, module definition, and
 * template snippets live in sibling files.
 *
 * @example
 * ```typescript
 * // app.module.ts
 * import { ConsentModule } from '@breakpilot/consent-sdk/angular';
 *
 * @NgModule({
 *   imports: [
 *     ConsentModule.forRoot({
 *       apiEndpoint: 'https://consent.example.com/api/v1',
 *       siteId: 'site_abc123',
 *     }),
 *   ],
 * })
 * export class AppModule {}
 * ```
 *
 * @remarks
 * Angular hat ein komplexeres Build-System (ngc, ng-packagr). Diese Dateien
 * definieren die Schnittstelle — fuer Production muss ein separates Angular
 * Library Package erstellt werden (`ng generate library @breakpilot/consent-sdk-angular`).
 */

export type { IConsentService } from './interface';
export { ConsentServiceBase } from './service';
export {
  CONSENT_CONFIG,
  CONSENT_SERVICE,
  ConsentModuleDefinition,
  consentServiceFactory,
  type ConsentModuleConfig,
} from './module';
export { CONSENT_BANNER_TEMPLATE, CONSENT_GATE_USAGE } from './templates';

export type {
  ConsentCategories,
  ConsentCategory,
  ConsentConfig,
  ConsentState,
} from '../types';
