import { Repository } from 'typeorm';
import { CreateCallDto } from './dto/create-call.dto';
import { UpdateCallDto } from './dto/update-call.dto';
import { Call } from './entities/call.entity';
import { LoggerService } from "../services/logger/logger.service";
import { SlugService } from '../common/slug/slug.service';
import { PaginationDto } from "../common/dto/pagination.dto";
import { IncomingFile, UploadHelperService } from "../files";
export declare class CallsService {
    private readonly callRepository;
    private readonly logger;
    private readonly slugService;
    private readonly uploadHelper;
    constructor(callRepository: Repository<Call>, logger: LoggerService, slugService: SlugService, uploadHelper: UploadHelperService);
    create(createCallDto: CreateCallDto): Promise<Call>;
    findAll(paginationDto: PaginationDto): Promise<{
        total: number;
        limit: number;
        offset: number;
        calls: {
            filePdf: string | null;
            id: number;
            title: string;
            subTitle: string;
            urlCall: string;
            slug: string;
            isInternal: boolean;
            isCurrent: boolean;
            isActive: boolean;
            createdAt: Date;
            updatedAt: Date;
        }[];
    }>;
    findBySlug(slug: string): Promise<{
        filePdr: string | null;
        id: number;
        title: string;
        subTitle: string;
        filePdf: string;
        urlCall: string;
        slug: string;
        isInternal: boolean;
        isCurrent: boolean;
        isActive: boolean;
        createdAt: Date;
        updatedAt: Date;
    }>;
    findOne(id: number): Promise<{
        filePdf: string | null;
        id: number;
        title: string;
        subTitle: string;
        urlCall: string;
        slug: string;
        isInternal: boolean;
        isCurrent: boolean;
        isActive: boolean;
        createdAt: Date;
        updatedAt: Date;
    }>;
    findOneRaw(id: number): Promise<Call>;
    updateFiles(id: number, updateFile: {
        imagePublication?: string;
        filePdf?: string;
    }): Promise<void>;
    replacePdf(id: number, file: IncomingFile): Promise<import("src/files").UploadResponse>;
    update(id: number, updateCallDto: UpdateCallDto): Promise<Call & UpdateCallDto>;
    remove(id: number): Promise<{
        message: string;
    }>;
    private handleDBExceptions;
}
