/**
 * Shared Repositories Module
 *
 * Exports repository interfaces, factory, and utility functions
 * for the Platform Marketing Content application.
 *
 * @module platform-marketing-content/shared/repositories
 */

// Export all interfaces and types from base repository
export {
  IBaseRepository,
  IReadOnlyRepository,
  IWriteOnlyRepository,
  ServiceContext,
  QueryOptions,
  PaginationOptions,
  PaginationMeta,
  PaginatedResult,
  createPaginationMeta,
} from './base.repository.interface';

// Export factory and decorators
export {
  RepositoryFactory,
  createRepositoryFactory,
  InjectRepository,
  RepositoryNotFoundError,
  RepositoryAlreadyRegisteredError,
} from './repository.factory';
