import { HttpStatus } from '@nestjs/common';
import { UsersService } from './users.service';
import { UpdatePushTokenDto, BlockUserDto, ReportContentDto } from './users.dto';
export declare class UsersController {
    private readonly usersService;
    constructor(usersService: UsersService);
    updatePushToken(req: any, payload: UpdatePushTokenDto): Promise<{
        status: boolean;
        statusCode: HttpStatus;
        data: {
            message: string;
        };
    }>;
    getBlockedUsers(req: any): Promise<{
        status: boolean;
        statusCode: HttpStatus;
        data: {
            id: string;
            display_name: string;
            email: string;
            blockedAt: Date;
        }[];
    }>;
    blockUser(req: any, payload: BlockUserDto): Promise<{
        status: boolean;
        statusCode: HttpStatus;
        data: {
            message: string;
        };
    }>;
    unblockUser(req: any, blockedUserId: string): Promise<{
        status: boolean;
        statusCode: HttpStatus;
        data: {
            message: string;
        };
    }>;
    reportContent(req: any, payload: ReportContentDto): Promise<{
        status: boolean;
        statusCode: HttpStatus;
        data: {
            message: string;
        };
    }>;
    deleteAccount(req: any): Promise<{
        status: boolean;
        statusCode: HttpStatus;
        data: {
            message: string;
        };
    }>;
    getCredits(req: any): Promise<{
        status: boolean;
        statusCode: HttpStatus;
        data: {
            basic_credits: number;
            additional_credits: number;
            total_credits: number;
        };
    }>;
    getCreditActivity(req: any, page?: string, limit?: string): Promise<{
        status: boolean;
        statusCode: HttpStatus;
        data: {
            activities: {
                reason: string;
                created_at: Date;
                id: string;
                delta: number;
                metadata: string | number | boolean | import("../../database/database.type").JsonArray | import("../../database/database.type").JsonObject | null;
                balance_after: number;
                reference_id: string | null;
                reference_type: string;
            }[];
            total: number;
            page: number;
            hasMore: boolean;
        };
    }>;
    getReferralStats(req: any): Promise<{
        status: boolean;
        statusCode: HttpStatus;
        data: {
            referralCode: string;
            referralCount: number;
            premiumUntil: string | null;
            rewards: {
                type: string;
                daysAwarded: number;
                reason: string;
                created_at: string;
            }[];
            sharesThisMonth: number;
            shares: {
                platform: string;
                date: string;
            }[];
        };
    }>;
}
