import { Repository } from 'typeorm';
import { Contestant } from './entities/contestant.entity';
import { CreateContestantDto } from './dto/create-contestant.dto';
import { UpdateContestantDto } from './dto/update-contestant.dto';
import { CampaignsService } from '../campaigns/campaigns.service';
export declare class ContestantsService {
    private contestantsRepository;
    private campaignsService;
    constructor(contestantsRepository: Repository<Contestant>, campaignsService: CampaignsService);
    private generateSlug;
    create(campaignId: string, organizationId: string, createDto: CreateContestantDto): Promise<Contestant>;
    findByCampaign(campaignId: string): Promise<Contestant[]>;
    findById(id: string): Promise<Contestant>;
    findBySlug(campaignSlug: string, contestantSlug: string): Promise<Contestant>;
    update(id: string, organizationId: string, updateDto: UpdateContestantDto): Promise<Contestant>;
    delete(id: string, organizationId: string): Promise<void>;
    incrementVotes(id: string, votes: number): Promise<void>;
    getPublicContestant(campaignSlug: string, contestantSlug: string): Promise<any>;
}
