import { Repository } from 'typeorm';
import { Countries } from '../../entities/countries.entity';
import { Categories } from '../../entities/categories.entity';
import { CountryRecommendedCategory } from '../../entities/country-recommended-categories.entity';
import { ToggleCountryRecommendedDto } from './dtos/toggle-country-recommended.dto';
import { CountryRecommendedListQueryDto } from './dtos/country-recommended-list-query.dto';
import { UpdateCountryRecommendedOrderDto } from './dtos/update-country-recommended-order.dto';
import { UpdateCountryRecommendedMinApplicationDto } from './dtos/update-country-recommended-min-application.dto';
import { CategoryCampaignListQueryDto } from './dtos/category-campaign-list-query.dto';
import { ToggleCategoryCampaignDto } from './dtos/toggle-category-campaign.dto';
import { ToggleCategoryCampaignHideDto } from './dtos/toggle-category-campaign-hide.dto';
import { UpdateCategoryCampaignOrderDto } from './dtos/update-category-campaign-order.dto';
import { Campaign } from '../../entities/campaign.entity';
import { CampaignCategory } from '../../entities/campaign-caregories.entity';
import { CampaignCategoryCountryOrder } from '../../entities/campaign-category-country-order.entity';
import { CampaignRepository } from '../campaign/campaign.repository';
export declare class CountryRecommendedCategoriesService {
    private Countries;
    private Categories;
    private CountryRecommendedCategory;
    private Campaign;
    private CampaignCategory;
    private CampaignCategoryCountryOrder;
    private campaignRepository;
    constructor(Countries: Repository<Countries>, Categories: Repository<Categories>, CountryRecommendedCategory: Repository<CountryRecommendedCategory>, Campaign: Repository<Campaign>, CampaignCategory: Repository<CampaignCategory>, CampaignCategoryCountryOrder: Repository<CampaignCategoryCountryOrder>, campaignRepository: CampaignRepository);
    toggle(request: ToggleCountryRecommendedDto): Promise<{
        action: string;
        data?: undefined;
    } | {
        action: string;
        data: CountryRecommendedCategory;
    }>;
    list(queryParam: CountryRecommendedListQueryDto, authUser: any): Promise<{
        data: {
            id: string;
            is_active: boolean;
            is_recommended: boolean;
            is_hidden: boolean;
            image: string;
            title: string;
            slug: string;
            description: string;
            tags: string;
            created_at: Date;
            updated_at: Date;
            deleted_at: Date;
            influencerCategories: import("../../entities/influencer-caregories.entity").InfluencerCategory[];
            translations: import("../../entities/category-translations.entity").CategoryTranslation[];
            countryRecommendedCategories: CountryRecommendedCategory[];
            recommended_id: string;
            order_by: number;
            min_application: number;
        }[];
    } | {
        data: Categories[];
    }>;
    updateOrder(request: UpdateCountryRecommendedOrderDto): Promise<void>;
    updateMinApplication(request: UpdateCountryRecommendedMinApplicationDto): Promise<void>;
    campaignList(queryParam: CategoryCampaignListQueryDto): Promise<{
        data: Campaign[];
        total: number;
        hasMoreResults: number;
    }>;
    toggleCampaign(request: ToggleCategoryCampaignDto): Promise<{
        action: string;
    }>;
    toggleCampaignHide(request: ToggleCategoryCampaignHideDto): Promise<{
        action: string;
        is_hidden: boolean;
    }>;
    updateCampaignOrder(request: UpdateCategoryCampaignOrderDto): Promise<void>;
}
