import { OnModuleInit } from '@nestjs/common';
import { Repository } from 'typeorm';
import { CommonRepository } from './common.repository';
import { Users } from '../../entities/users.entity';
import { FileManagers } from '../../entities/file-managers.entity';
import { Categories } from '../../entities/categories.entity';
import { CategoryTranslation } from '../../entities/category-translations.entity';
import { Keywords } from 'src/entities/keywords.entity';
import { KeywordTranslation } from 'src/entities/keyword-translations.entity';
import { CommonUploadFileDto } from './dtos/common-upload-file.dto';
import { Countries } from 'src/entities/countries.entity';
import { CurrencyRate } from 'src/entities/currency_rates.entity';
import { NotificationService } from 'src/common/services/notification/notification.service';
import { WhatsAppServices } from 'src/common/services/whatsapp/whatsapp.service';
import { EncryptionService } from 'src/common/services/encryption/encryption.service';
import { UserPermissions } from 'src/entities/user-permissions.entity';
import { ErrorReport } from 'src/entities/error-report.entity';
import { CampaignRepository } from '../campaign/campaign.repository';
export declare class CommonService implements OnModuleInit {
    private commonRepository;
    private notificationService;
    private whatsappService;
    private encryptionService;
    private campaignRepository;
    private Users;
    private FileManagers;
    private Categories;
    private CategoryTranslation;
    private Keywords;
    private KeywordTranslation;
    private Countries;
    private CurrencyRate;
    private UserPermissions;
    private ErrorReport;
    private s3;
    constructor(commonRepository: CommonRepository, notificationService: NotificationService, whatsappService: WhatsAppServices, encryptionService: EncryptionService, campaignRepository: CampaignRepository, Users: Repository<Users>, FileManagers: Repository<FileManagers>, Categories: Repository<Categories>, CategoryTranslation: Repository<CategoryTranslation>, Keywords: Repository<Keywords>, KeywordTranslation: Repository<KeywordTranslation>, Countries: Repository<Countries>, CurrencyRate: Repository<CurrencyRate>, UserPermissions: Repository<UserPermissions>, ErrorReport: Repository<ErrorReport>);
    onModuleInit(): Promise<void>;
    countries(query: any): Promise<{
        data: Countries[];
    }>;
    commonUploadFile(request: CommonUploadFileDto, fileData: any, authUser: any): Promise<{
        fileName: string;
        filepath: string;
        fileSize: any;
    }>;
    uploadFile(params: any): Promise<import("@aws-sdk/client-s3").PutObjectCommandOutput>;
    getAWSFile(key: any): Promise<Buffer>;
    commonUploadProfilePic(request: CommonUploadFileDto, fileData: any, authUser: any): Promise<{
        fileName: string;
        filepath: string;
        fileSize: any;
    }>;
    convertCurrencyRate(currency: string, rate: number): Promise<number>;
    notification(param: any, auth: any): Promise<{
        is_unread: boolean;
        data: import("../../entities/notifications.entity").Notifications[];
        total: number;
        hasMoreResults: number;
    }>;
    whatsappMessageList(param: any): Promise<{
        data: import("../../entities/whatsapp-messages.entity").WhatsAppMessage[];
        total: number;
        hasMoreResults: number;
    }>;
    readNotification(auth: any, query: any): Promise<import("typeorm").UpdateResult>;
    errorReport(body: any, authUser: any): Promise<void>;
    assignPermissions(page?: number, pageSize?: number): Promise<void>;
    sitemap(): Promise<any[]>;
    sitemapCategories(): Promise<any>;
    sitemapPage(page: number): Promise<any>;
    cometChatEmailNotification(userId?: any): Promise<true | {
        message: string;
    }>;
    generatePresignedUrl(query: any): Promise<{
        url: string;
    }>;
    importCategoryChineseTranslations(fileData: any): Promise<{
        inserted: number;
        updated: number;
        skipped: number;
        notFound: number;
    }>;
    importKeywordChineseTranslations(fileData: any): Promise<{
        inserted: number;
        updated: number;
        skipped: number;
        notFound: number;
    }>;
}
