import { Repository } from 'typeorm';
import { Subscription } from 'src/entities/subscription.entity';
import { Users } from 'src/entities/users.entity';
import { Card } from 'src/entities/card.entity';
import { SubscriptionHistory } from 'src/entities/subscription-history.entity';
import { SocialMedias } from 'src/entities/social-medias.entity';
import { YoutubeServices } from '../youtube/youtube.service';
import { FacebookServices } from '../facebook/facebook.service';
import { InstagramServices } from '../instagram/instagram.service';
import { TiktokServices } from '../tiktok/tiktok.service';
import { StripeServices } from '../payment-gateway/stripe/stripe.service';
import { SocialMediaPosts } from 'src/entities/social-media-posts.entity';
import { UserPermissions } from 'src/entities/user-permissions.entity';
import { Campaign } from 'src/entities/campaign.entity';
import { CampaignService } from 'src/modules/campaign/campaign.services';
import { InfluencerCategory } from 'src/entities/influencer-caregories.entity';
import { BrandIndustries } from 'src/entities/brand-industries.entity';
import { PaymentService } from 'src/modules/payment/payment.service';
export declare class UsersServices {
    private youtubeServices;
    private facebookServices;
    private instagramServices;
    private tiktokService;
    private stripeService;
    private paymentService;
    private campaignService;
    private Users;
    private Subscription;
    private SocialMedias;
    private Card;
    private SocialMediaPosts;
    private UserPermissions;
    private Campaign;
    private InfluencerCategory;
    private BrandIndustries;
    private SubscriptionHistory;
    constructor(youtubeServices: YoutubeServices, facebookServices: FacebookServices, instagramServices: InstagramServices, tiktokService: TiktokServices, stripeService: StripeServices, paymentService: PaymentService, campaignService: CampaignService, Users: Repository<Users>, Subscription: Repository<Subscription>, SocialMedias: Repository<SocialMedias>, Card: Repository<Card>, SocialMediaPosts: Repository<SocialMediaPosts>, UserPermissions: Repository<UserPermissions>, Campaign: Repository<Campaign>, InfluencerCategory: Repository<InfluencerCategory>, BrandIndustries: Repository<BrandIndustries>, SubscriptionHistory: Repository<SubscriptionHistory>);
    getUsersList(request: any, sortBy: string, sortType: any, pageSize: number, offset: number): Promise<{
        results: any[];
        total: number;
    }>;
    getUserDetails(user: any, authUser: any): Promise<any>;
    getUserPermissions(userId: string): Promise<UserPermissions[]>;
    getUserPermission(userId: string, type: string): Promise<UserPermissions>;
    increasePermissionCount(userId: string, type: string, increase?: number): Promise<void>;
    decreasePermissionCount(userId: string, type: string): Promise<void>;
    checkPermission(userId: string, type: string): Promise<boolean>;
    checkPermissionWithTimeLimit(userId: string, type: string): Promise<boolean>;
    delete(user: any): Promise<any>;
    deleteBrand(user: any): Promise<{
        status: boolean;
        message: string;
    }>;
    deleteInfluencer(user: any): Promise<false | {
        status: boolean;
        message: string;
    }>;
    changeUserPermission(): Promise<void>;
    convertToFreePlan(): Promise<void>;
}
