import { Repository } from 'typeorm';
import { AuthRepository } from './repositories/auth.repository';
import { HttpService } from '@nestjs/axios';
import { JwtService } from '@nestjs/jwt';
import { UserLoginDto } from "./dtos/user-login.dto";
import { SendMailService } from '../../common/config/send-mail.service';
import { RecaptchaService } from '../../common/config/recaptcha.service';
import { Users } from "../../entities/users.entity";
import { UserRegisterDto } from './dtos/user-register.dto';
import { VerifyOtpDto } from './dtos/verify-otp.dto';
import { ForgotPasswordDto } from './dtos/forgot-password.dto';
import { ResetPasswordDto } from './dtos/reset-password.dto';
import { SocialLoginDto } from './dtos/social-login.dto';
import { UsersServices } from 'src/common/services/users/users.service';
import { CampaignInfluencer } from 'src/entities/campaign_influencer.entity';
import { RedirectType } from 'src/entities/notifications.entity';
import { GuestUserProfileAccess } from 'src/entities/guest_user_profile_access.entity';
import { ErrorLogService } from 'src/common/services/error-logs/error-log.service';
import { WhatsAppServices } from 'src/common/services/whatsapp/whatsapp.service';
import { VerifyWhatsAppDto } from './dtos/veridy-whatsapp.dto';
import { NotificationPreferencesService } from '../notification-preferences/notification-preferences.service';
import { Countries } from 'src/entities/countries.entity';
export declare class AuthService {
    private authRepository;
    private httpService;
    private jwtService;
    private sendMailService;
    private recaptchaService;
    private userService;
    private errorLogService;
    private whatsappService;
    private notificationPreferencesService;
    private Users;
    private CampaignInfluencer;
    private GuestUserProfileAccess;
    private Countries;
    constructor(authRepository: AuthRepository, httpService: HttpService, jwtService: JwtService, sendMailService: SendMailService, recaptchaService: RecaptchaService, userService: UsersServices, errorLogService: ErrorLogService, whatsappService: WhatsAppServices, notificationPreferencesService: NotificationPreferencesService, Users: Repository<Users>, CampaignInfluencer: Repository<CampaignInfluencer>, GuestUserProfileAccess: Repository<GuestUserProfileAccess>, Countries: Repository<Countries>);
    userRegister(request: UserRegisterDto): Promise<any>;
    sendEmail(receiver: any, metadata: any, type: any): Promise<void>;
    sendNotificationAndEmail(receiver: any, type: any, options?: {
        metadata?: any;
        description?: string;
        sender?: any;
        redirect_type?: RedirectType;
        redirect_id?: string;
        redirect_slug?: string;
    }): Promise<void>;
    generateUniqueSlug(name: string): Promise<void>;
    generateSlug(firstName: any, lastName: any): Promise<string>;
    createAssessToken(id: any, email: any): Promise<string>;
    verifyOtp(request: VerifyOtpDto): Promise<{
        profile_path: string;
        campaign_path: string;
        campaign_receipt_path: string;
        draft_path: string;
        dispute_path: string;
        advertisement_path: string;
        bank_path: string;
        access_token: string;
        id: string;
        slug: string;
        display_name: string;
        first_name: string;
        last_name: string;
        email: string;
        role: string;
        language: string;
        is_verify_otp: boolean;
        whatsapp_phone_number: string;
        whatsapp_request_at: Date;
        is_whatsapp_verified: boolean;
        country_code: string;
        country: string;
        phone_number: string;
        company_name: string;
        image: string;
        gender: string;
        is_active: boolean;
        pending_steps: number;
        business_type: string;
        working_people: string;
        social_id: string;
        social_type: string;
        total_followers: number;
        total_following: number;
        engagement_ratio: number;
        currency: string;
        about_me: string;
        ai_summary: string;
        remember_me: boolean;
        stripe_customer_id: string;
        platforms: Record<string, any>;
        is_subscribed: boolean;
        is_profile_pic_updated: boolean;
        is_offline_payment_allowed: boolean;
        offline_payment_allowed: string;
        is_imported_by_admin: boolean;
        recommended_date_time: Date;
        is_updated_by_cron: boolean;
        is_show_campaign_popup: boolean;
        engagement_rate_overall: number;
        engagement_rate_percentage: number;
        updated_by_cron: Date;
        subscription_start_date: Date;
        subscription_end_date: Date;
        favoritesCount: string;
        isCampaignAdded: string;
        isBookmarkAdded: string;
        isArchived: string;
        influencerUser: string;
        is_trial_used: boolean;
        is_invoice_sent: boolean;
        social_medias: import("../../entities/social-medias.entity").SocialMedias[];
        cards: import("../../entities/card.entity").Card[];
        influencerCategories: import("../../entities/influencer-caregories.entity").InfluencerCategory[];
        facebookPages: import("../../entities/facebook-pages.entity").FacebookPages[];
        instagramProfiles: import("../../entities/instagram-profile.entity").InstagramProfiles[];
        instagramInsights: import("../../entities/instagram-insights.entity").InstagramInsights[];
        youtubeChannels: import("../../entities/youtube-channel.entity").YoutubeChannels[];
        tikTokProfiles: import("../../entities/tiktok-profile.entity").TikTokProfiles[];
        xiaohongshuProfiles: import("../../entities/xiaohongshu-profile.entity").XiaohongshuProfiles[];
        brandIndustries: import("../../entities/brand-industries.entity").BrandIndustries[];
        socialMediaPosts: import("../../entities/social-media-posts.entity").SocialMediaPosts[];
        subscription: import("../../entities/subscription.entity").Subscription[];
        favorites: import("../../entities/brand-favorit.entity").BrandFavorite[];
        favoritedBy: import("../../entities/brand-favorit.entity").BrandFavorite[];
        userKeywords: import("../../entities/user-keywords.entity").UserKeywords[];
        campaigns: import("../../entities/campaign.entity").Campaign[];
        campaignInfluencer: CampaignInfluencer[];
        campaignBookmarks: import("../../entities/campaign_influencer_bookmark.entity").CampaignInfluencerBookmarks[];
        influenceSaveCampaigns: import("../../entities/influencer-save-campaigns.entity").InfluenceSaveCampaigns[];
        campaignRecommend: import("../../entities/campaign_recommended.entity").CampaignRecommended[];
        influencerCampaignRecommended: import("../../entities/influencer_campaign_recommended.entity").InfluencerCampaignRecommended[];
        permissions: import("../../entities/user-permissions.entity").UserPermissions[];
        bankDetails: import("../../entities/bank-details.entity").BankDetails;
        searchLogs: import("../../entities/search-logs.entity").SearchLog[];
        influencerPaymentMethods: import("../../entities/influencer-payment-method.entity").InfluencerPaymentMethod[];
        notificationPreferences: import("../../entities/user-notification-preferences.entity").UserNotificationPreferences[];
    }>;
    userLogin(request: UserLoginDto): Promise<{
        profile_path: string;
        campaign_path: string;
        campaign_receipt_path: string;
        draft_path: string;
        dispute_path: string;
        advertisement_path: string;
        bank_path: string;
        access_token: string;
        id: string;
        slug: string;
        display_name: string;
        first_name: string;
        last_name: string;
        email: string;
        role: string;
        language: string;
        is_verify_otp: boolean;
        whatsapp_phone_number: string;
        whatsapp_request_at: Date;
        is_whatsapp_verified: boolean;
        country_code: string;
        country: string;
        phone_number: string;
        company_name: string;
        image: string;
        gender: string;
        is_active: boolean;
        pending_steps: number;
        business_type: string;
        working_people: string;
        social_id: string;
        social_type: string;
        total_followers: number;
        total_following: number;
        engagement_ratio: number;
        currency: string;
        about_me: string;
        ai_summary: string;
        remember_me: boolean;
        stripe_customer_id: string;
        platforms: Record<string, any>;
        is_subscribed: boolean;
        is_profile_pic_updated: boolean;
        is_offline_payment_allowed: boolean;
        offline_payment_allowed: string;
        is_imported_by_admin: boolean;
        recommended_date_time: Date;
        is_updated_by_cron: boolean;
        is_show_campaign_popup: boolean;
        engagement_rate_overall: number;
        engagement_rate_percentage: number;
        updated_by_cron: Date;
        subscription_start_date: Date;
        subscription_end_date: Date;
        favoritesCount: string;
        isCampaignAdded: string;
        isBookmarkAdded: string;
        isArchived: string;
        influencerUser: string;
        is_trial_used: boolean;
        is_invoice_sent: boolean;
        social_medias: import("../../entities/social-medias.entity").SocialMedias[];
        cards: import("../../entities/card.entity").Card[];
        influencerCategories: import("../../entities/influencer-caregories.entity").InfluencerCategory[];
        facebookPages: import("../../entities/facebook-pages.entity").FacebookPages[];
        instagramProfiles: import("../../entities/instagram-profile.entity").InstagramProfiles[];
        instagramInsights: import("../../entities/instagram-insights.entity").InstagramInsights[];
        youtubeChannels: import("../../entities/youtube-channel.entity").YoutubeChannels[];
        tikTokProfiles: import("../../entities/tiktok-profile.entity").TikTokProfiles[];
        xiaohongshuProfiles: import("../../entities/xiaohongshu-profile.entity").XiaohongshuProfiles[];
        brandIndustries: import("../../entities/brand-industries.entity").BrandIndustries[];
        socialMediaPosts: import("../../entities/social-media-posts.entity").SocialMediaPosts[];
        subscription: import("../../entities/subscription.entity").Subscription[];
        favorites: import("../../entities/brand-favorit.entity").BrandFavorite[];
        favoritedBy: import("../../entities/brand-favorit.entity").BrandFavorite[];
        userKeywords: import("../../entities/user-keywords.entity").UserKeywords[];
        campaigns: import("../../entities/campaign.entity").Campaign[];
        campaignInfluencer: CampaignInfluencer[];
        campaignBookmarks: import("../../entities/campaign_influencer_bookmark.entity").CampaignInfluencerBookmarks[];
        influenceSaveCampaigns: import("../../entities/influencer-save-campaigns.entity").InfluenceSaveCampaigns[];
        campaignRecommend: import("../../entities/campaign_recommended.entity").CampaignRecommended[];
        influencerCampaignRecommended: import("../../entities/influencer_campaign_recommended.entity").InfluencerCampaignRecommended[];
        permissions: import("../../entities/user-permissions.entity").UserPermissions[];
        bankDetails: import("../../entities/bank-details.entity").BankDetails;
        searchLogs: import("../../entities/search-logs.entity").SearchLog[];
        influencerPaymentMethods: import("../../entities/influencer-payment-method.entity").InfluencerPaymentMethod[];
        notificationPreferences: import("../../entities/user-notification-preferences.entity").UserNotificationPreferences[];
    }>;
    socialLogin(request: SocialLoginDto): Promise<{
        is_link: boolean;
    } | {
        profile_path: string;
        campaign_path: string;
        campaign_receipt_path: string;
        draft_path: string;
        dispute_path: string;
        advertisement_path: string;
        bank_path: string;
        access_token: string;
        id: string;
        slug: string;
        display_name: string;
        first_name: string;
        last_name: string;
        email: string;
        role: string;
        language: string;
        is_verify_otp: boolean;
        whatsapp_phone_number: string;
        whatsapp_request_at: Date;
        is_whatsapp_verified: boolean;
        country_code: string;
        country: string;
        phone_number: string;
        company_name: string;
        image: string;
        gender: string;
        is_active: boolean;
        pending_steps: number;
        business_type: string;
        working_people: string;
        social_id: string;
        social_type: string;
        total_followers: number;
        total_following: number;
        engagement_ratio: number;
        currency: string;
        about_me: string;
        ai_summary: string;
        remember_me: boolean;
        stripe_customer_id: string;
        platforms: Record<string, any>;
        is_subscribed: boolean;
        is_profile_pic_updated: boolean;
        is_offline_payment_allowed: boolean;
        offline_payment_allowed: string;
        is_imported_by_admin: boolean;
        recommended_date_time: Date;
        is_updated_by_cron: boolean;
        is_show_campaign_popup: boolean;
        engagement_rate_overall: number;
        engagement_rate_percentage: number;
        updated_by_cron: Date;
        subscription_start_date: Date;
        subscription_end_date: Date;
        favoritesCount: string;
        isCampaignAdded: string;
        isBookmarkAdded: string;
        isArchived: string;
        influencerUser: string;
        is_trial_used: boolean;
        is_invoice_sent: boolean;
        social_medias: import("../../entities/social-medias.entity").SocialMedias[];
        cards: import("../../entities/card.entity").Card[];
        influencerCategories: import("../../entities/influencer-caregories.entity").InfluencerCategory[];
        facebookPages: import("../../entities/facebook-pages.entity").FacebookPages[];
        instagramProfiles: import("../../entities/instagram-profile.entity").InstagramProfiles[];
        instagramInsights: import("../../entities/instagram-insights.entity").InstagramInsights[];
        youtubeChannels: import("../../entities/youtube-channel.entity").YoutubeChannels[];
        tikTokProfiles: import("../../entities/tiktok-profile.entity").TikTokProfiles[];
        xiaohongshuProfiles: import("../../entities/xiaohongshu-profile.entity").XiaohongshuProfiles[];
        brandIndustries: import("../../entities/brand-industries.entity").BrandIndustries[];
        socialMediaPosts: import("../../entities/social-media-posts.entity").SocialMediaPosts[];
        subscription: import("../../entities/subscription.entity").Subscription[];
        favorites: import("../../entities/brand-favorit.entity").BrandFavorite[];
        favoritedBy: import("../../entities/brand-favorit.entity").BrandFavorite[];
        userKeywords: import("../../entities/user-keywords.entity").UserKeywords[];
        campaigns: import("../../entities/campaign.entity").Campaign[];
        campaignInfluencer: CampaignInfluencer[];
        campaignBookmarks: import("../../entities/campaign_influencer_bookmark.entity").CampaignInfluencerBookmarks[];
        influenceSaveCampaigns: import("../../entities/influencer-save-campaigns.entity").InfluenceSaveCampaigns[];
        campaignRecommend: import("../../entities/campaign_recommended.entity").CampaignRecommended[];
        influencerCampaignRecommended: import("../../entities/influencer_campaign_recommended.entity").InfluencerCampaignRecommended[];
        permissions: import("../../entities/user-permissions.entity").UserPermissions[];
        bankDetails: import("../../entities/bank-details.entity").BankDetails;
        searchLogs: import("../../entities/search-logs.entity").SearchLog[];
        influencerPaymentMethods: import("../../entities/influencer-payment-method.entity").InfluencerPaymentMethod[];
        notificationPreferences: import("../../entities/user-notification-preferences.entity").UserNotificationPreferences[];
        is_link?: undefined;
    }>;
    socialLoginUpdate(request: any, auth: any): Promise<{
        social_id: any;
    }>;
    self(authUser: any): Promise<any>;
    getClientIp(req: any): Promise<any>;
    getUserDetails(params: any, req: any): Promise<{
        data: {
            slug: string;
            first_name: string;
            last_name: string;
            about_me: string;
            ai_summary: string;
            image: string;
        };
        is_blurred: boolean;
        remaining_count: number;
    }>;
    changePassword(request: any, authUser: any): Promise<void>;
    changeLanguage(request: any, authUser: any): Promise<void>;
    delete(query: any, authUser: any): Promise<any>;
    multiDelete(body: any): Promise<void>;
    logout(request: any, authUser: any): Promise<void>;
    forgotPassword(request: ForgotPasswordDto): Promise<void>;
    resetPassword(request: ResetPasswordDto): Promise<void>;
    saveError(body: any, authUser: any): Promise<void>;
    verifyWhatsApp(request: VerifyWhatsAppDto, authUser: any): Promise<void>;
}
