import { Repository } from 'typeorm';
import { Ebook } from './entities/ebook.entity';
import { ContentModule } from '../content-modules/entities/content-module.entity';
import { CreateEbookDto } from './dto/create-ebook.dto';
import { UpdateEbookDto } from './dto/update-ebook.dto';
import { ContentPaginateQueryDto } from '../common/dto/content-paginate-query.dto';
export declare class EbooksService {
    private readonly ebookRepository;
    private readonly contentModuleRepository;
    constructor(ebookRepository: Repository<Ebook>, contentModuleRepository: Repository<ContentModule>);
    private assertModuleExists;
    findByModule(moduleId: string, query: ContentPaginateQueryDto): Promise<{
        data: Ebook[];
        total: number;
    }>;
    findOne(id: string): Promise<Ebook>;
    create(moduleId: string, dto: CreateEbookDto): Promise<Ebook>;
    update(id: string, dto: UpdateEbookDto): Promise<Ebook>;
    remove(id: string): Promise<void>;
}
