import { ReferralsService } from './referrals.service';
import { LogShareDto } from './referrals.dto';
export declare class ReferralsController {
    private readonly referralsService;
    constructor(referralsService: ReferralsService);
    getReferralData(req: any): Promise<{
        status: boolean;
        statusCode: number;
        data: {
            referralCode: string;
            referralCount: number;
            pendingReferralCount: number;
            premiumUntil: string | null;
            rewards: any[];
            referrals: {
                id: any;
                name: any;
                emailMasked: string;
                joinedAt: string | null;
                isEmailVerified: boolean;
                emailVerifiedAt: string | null;
                status: any;
                validationReason: any;
            }[];
            sharesThisMonth: number;
            sharesLoggedThisMonth: number;
            shares: any[];
        };
    }>;
    getReferralStats(req: any): Promise<{
        status: boolean;
        statusCode: number;
        data: {
            referralCode: string;
            referralCount: number;
            pendingReferralCount: number;
            premiumUntil: string | null;
            rewards: any[];
            referrals: {
                id: any;
                name: any;
                emailMasked: string;
                joinedAt: string | null;
                isEmailVerified: boolean;
                emailVerifiedAt: string | null;
                status: any;
                validationReason: any;
            }[];
            sharesThisMonth: number;
            sharesLoggedThisMonth: number;
            shares: any[];
        };
    }>;
    logShare(req: any, body: LogShareDto): Promise<{
        status: boolean;
        statusCode: number;
        data: {
            message: string;
            shareStatus: "PENDING" | "VALID" | "FRAUD";
            validationReason: string;
            fraudScore: number;
            sharesThisMonth: number;
            rewardEarned: boolean;
        };
    }>;
}
