import { Repository } from 'typeorm';
import { AppUser } from './entities/app_user.entity';
import { GroupsRepository } from 'src/groups/groups.repository';
import { AppUsersStep } from 'src/app_users_steps/entities/app_users_step.entity';
export declare class AppUserRepository {
    private readonly appUserRepository;
    private readonly groupsRepository;
    constructor(appUserRepository: Repository<AppUser>, groupsRepository: GroupsRepository);
    findAll(take: number, skip: number, search: string): Promise<{
        count: number;
        data: {
            profile_picture: string;
            total_steps_count: number;
            user_groups: {
                icon: string;
                id: string;
                name: string;
                description: string;
                step_goal: string;
                goal_start_date: Date;
                goal_end_date: Date;
                status: number;
                zipcode: string;
                is_shareable: boolean;
                owner_id: string;
                province_id: string;
                owner_role: string;
                created_at: Date;
                updated_at: Date;
                deleted_at: Date;
                province: import("../provinces/entities/province.entity").Province;
                group_owner: AppUser;
                user_groups: AppUser[];
                news: import("../news/entities/news.entity").News[];
            }[];
            id: string;
            name: string;
            email: string;
            password: string;
            step_goal: string;
            social_id: string;
            social_type: string;
            device_id: string;
            password_reset_token: string;
            password_reset_token_expiry: string;
            current_streak: string;
            best_streak: string;
            whatsapp_no: string;
            is_email_verified: boolean;
            verification_token: string;
            verification_token_expiry: string;
            access_token: string;
            access_token_expiry: string;
            streak_updated_at: string;
            status: number;
            zipcode: string;
            fcm_token: string;
            province_id: string;
            notify: boolean;
            is_step_tracking_enabled: boolean;
            updated_at: Date;
            created_at: Date;
            deleted_at: Date;
            user_steps: AppUsersStep[];
            user_notifications: import("../notifications/entities/user-notification.entity").UserNotification;
            user_achievements: import("../achievements/entities/user-achievement.entity").UserAchievement[];
            group: import("../groups/entities/group.entity").Group[];
            user_streaks: import("../streaks/entities/user-streak.entity").UserStreak[];
            province: import("../provinces/entities/province.entity").Province;
        }[];
    }>;
    findUserByDeviceIdForSkipLogin(deviceId: string): Promise<AppUser>;
    findAllUsers(): Promise<AppUser[]>;
    findUserGroups(id: string, search?: string): Promise<{
        total_steps: number;
        users: {
            id: string;
            name: string;
            profile_picture: string;
        }[];
        icon: string;
        id: string;
        name: string;
        description: string;
        step_goal: string;
        goal_start_date: Date;
        goal_end_date: Date;
        status: number;
        zipcode: string;
        is_shareable: boolean;
        owner_id: string;
        province_id: string;
        owner_role: string;
        created_at: Date;
        updated_at: Date;
        deleted_at: Date;
        province: import("../provinces/entities/province.entity").Province;
        group_owner: AppUser;
        news: import("../news/entities/news.entity").News[];
    }[]>;
    findExploreGroups(id: string, search: string): Promise<{
        users: {
            id: string;
            name: string;
            profile_picture: string;
        }[];
        icon: string;
        total_steps: number;
        group_owner: {
            profile_picture: string;
            id: string;
            name: string;
            email: string;
            password: string;
            step_goal: string;
            social_id: string;
            social_type: string;
            device_id: string;
            password_reset_token: string;
            password_reset_token_expiry: string;
            current_streak: string;
            best_streak: string;
            whatsapp_no: string;
            is_email_verified: boolean;
            verification_token: string;
            verification_token_expiry: string;
            access_token: string;
            access_token_expiry: string;
            streak_updated_at: string;
            status: number;
            zipcode: string;
            fcm_token: string;
            province_id: string;
            notify: boolean;
            is_step_tracking_enabled: boolean;
            updated_at: Date;
            created_at: Date;
            deleted_at: Date;
            user_steps: AppUsersStep[];
            user_notifications: import("../notifications/entities/user-notification.entity").UserNotification;
            user_achievements: import("../achievements/entities/user-achievement.entity").UserAchievement[];
            group: import("../groups/entities/group.entity").Group[];
            user_streaks: import("../streaks/entities/user-streak.entity").UserStreak[];
            user_groups: import("../groups/entities/group.entity").Group[];
            province: import("../provinces/entities/province.entity").Province;
        };
        id: string;
        name: string;
        description: string;
        step_goal: string;
        goal_start_date: Date;
        goal_end_date: Date;
        status: number;
        zipcode: string;
        is_shareable: boolean;
        owner_id: string;
        province_id: string;
        owner_role: string;
        created_at: Date;
        updated_at: Date;
        deleted_at: Date;
        province: import("../provinces/entities/province.entity").Province;
        news: import("../news/entities/news.entity").News[];
    }[]>;
    findOne(id: string): Promise<{
        profile_picture: string;
        id: string;
        name: string;
        email: string;
        password: string;
        step_goal: string;
        social_id: string;
        social_type: string;
        device_id: string;
        password_reset_token: string;
        password_reset_token_expiry: string;
        current_streak: string;
        best_streak: string;
        whatsapp_no: string;
        is_email_verified: boolean;
        verification_token: string;
        verification_token_expiry: string;
        access_token: string;
        access_token_expiry: string;
        streak_updated_at: string;
        status: number;
        zipcode: string;
        fcm_token: string;
        province_id: string;
        notify: boolean;
        is_step_tracking_enabled: boolean;
        updated_at: Date;
        created_at: Date;
        deleted_at: Date;
        user_steps: AppUsersStep[];
        user_notifications: import("../notifications/entities/user-notification.entity").UserNotification;
        user_achievements: import("../achievements/entities/user-achievement.entity").UserAchievement[];
        group: import("../groups/entities/group.entity").Group[];
        user_streaks: import("../streaks/entities/user-streak.entity").UserStreak[];
        user_groups: import("../groups/entities/group.entity").Group[];
        province: import("../provinces/entities/province.entity").Province;
    }>;
    findOneBySocialId(social_id: string): Promise<{
        profile_picture: string;
        id: string;
        name: string;
        email: string;
        password: string;
        step_goal: string;
        social_id: string;
        social_type: string;
        device_id: string;
        password_reset_token: string;
        password_reset_token_expiry: string;
        current_streak: string;
        best_streak: string;
        whatsapp_no: string;
        is_email_verified: boolean;
        verification_token: string;
        verification_token_expiry: string;
        access_token: string;
        access_token_expiry: string;
        streak_updated_at: string;
        status: number;
        zipcode: string;
        fcm_token: string;
        province_id: string;
        notify: boolean;
        is_step_tracking_enabled: boolean;
        updated_at: Date;
        created_at: Date;
        deleted_at: Date;
        user_steps: AppUsersStep[];
        user_notifications: import("../notifications/entities/user-notification.entity").UserNotification;
        user_achievements: import("../achievements/entities/user-achievement.entity").UserAchievement[];
        group: import("../groups/entities/group.entity").Group[];
        user_streaks: import("../streaks/entities/user-streak.entity").UserStreak[];
        user_groups: import("../groups/entities/group.entity").Group[];
        province: import("../provinces/entities/province.entity").Province;
    }>;
    getUserWithGroupCount(id: string): Promise<{
        profile_picture: string;
        user_groups: {
            icon: string;
            total_steps: number;
            id: string;
            name: string;
            description: string;
            step_goal: string;
            goal_start_date: Date;
            goal_end_date: Date;
            status: number;
            zipcode: string;
            is_shareable: boolean;
            owner_id: string;
            province_id: string;
            owner_role: string;
            created_at: Date;
            updated_at: Date;
            deleted_at: Date;
            province: import("../provinces/entities/province.entity").Province;
            group_owner: AppUser;
            user_groups: AppUser[];
            news: import("../news/entities/news.entity").News[];
        }[];
        id: string;
        name: string;
        email: string;
        password: string;
        step_goal: string;
        social_id: string;
        social_type: string;
        device_id: string;
        password_reset_token: string;
        password_reset_token_expiry: string;
        current_streak: string;
        best_streak: string;
        whatsapp_no: string;
        is_email_verified: boolean;
        verification_token: string;
        verification_token_expiry: string;
        access_token: string;
        access_token_expiry: string;
        streak_updated_at: string;
        status: number;
        zipcode: string;
        fcm_token: string;
        province_id: string;
        notify: boolean;
        is_step_tracking_enabled: boolean;
        updated_at: Date;
        created_at: Date;
        deleted_at: Date;
        user_steps: AppUsersStep[];
        user_notifications: import("../notifications/entities/user-notification.entity").UserNotification;
        user_achievements: import("../achievements/entities/user-achievement.entity").UserAchievement[];
        group: import("../groups/entities/group.entity").Group[];
        user_streaks: import("../streaks/entities/user-streak.entity").UserStreak[];
        province: import("../provinces/entities/province.entity").Province;
    }>;
    findUserId(id: string): Promise<{
        id: string;
        name: string;
        email: string;
        password: string;
        profile_picture: string;
        step_goal: string;
        social_id: string;
        social_type: string;
        device_id: string;
        password_reset_token: string;
        password_reset_token_expiry: string;
        current_streak: string;
        best_streak: string;
        whatsapp_no: string;
        is_email_verified: boolean;
        verification_token: string;
        verification_token_expiry: string;
        access_token: string;
        access_token_expiry: string;
        streak_updated_at: string;
        status: number;
        zipcode: string;
        fcm_token: string;
        province_id: string;
        notify: boolean;
        is_step_tracking_enabled: boolean;
        updated_at: Date;
        created_at: Date;
        deleted_at: Date;
        user_steps: AppUsersStep[];
        user_notifications: import("../notifications/entities/user-notification.entity").UserNotification;
        user_achievements: import("../achievements/entities/user-achievement.entity").UserAchievement[];
        group: import("../groups/entities/group.entity").Group[];
        user_streaks: import("../streaks/entities/user-streak.entity").UserStreak[];
        user_groups: import("../groups/entities/group.entity").Group[];
        province: import("../provinces/entities/province.entity").Province;
    }>;
    findUserDetails(id: string): Promise<{
        profile_picture: string;
        id: string;
        name: string;
        email: string;
        password: string;
        step_goal: string;
        social_id: string;
        social_type: string;
        device_id: string;
        password_reset_token: string;
        password_reset_token_expiry: string;
        current_streak: string;
        best_streak: string;
        whatsapp_no: string;
        is_email_verified: boolean;
        verification_token: string;
        verification_token_expiry: string;
        access_token: string;
        access_token_expiry: string;
        streak_updated_at: string;
        status: number;
        zipcode: string;
        fcm_token: string;
        province_id: string;
        notify: boolean;
        is_step_tracking_enabled: boolean;
        updated_at: Date;
        created_at: Date;
        deleted_at: Date;
        user_steps: AppUsersStep[];
        user_notifications: import("../notifications/entities/user-notification.entity").UserNotification;
        user_achievements: import("../achievements/entities/user-achievement.entity").UserAchievement[];
        group: import("../groups/entities/group.entity").Group[];
        user_streaks: import("../streaks/entities/user-streak.entity").UserStreak[];
        user_groups: import("../groups/entities/group.entity").Group[];
        province: import("../provinces/entities/province.entity").Province;
    }>;
    findUserDetailsUpdate(id: string): Promise<{
        id: string;
        name: string;
        email: string;
        password: string;
        profile_picture: string;
        step_goal: string;
        social_id: string;
        social_type: string;
        device_id: string;
        password_reset_token: string;
        password_reset_token_expiry: string;
        current_streak: string;
        best_streak: string;
        whatsapp_no: string;
        is_email_verified: boolean;
        verification_token: string;
        verification_token_expiry: string;
        access_token: string;
        access_token_expiry: string;
        streak_updated_at: string;
        status: number;
        zipcode: string;
        fcm_token: string;
        province_id: string;
        notify: boolean;
        is_step_tracking_enabled: boolean;
        updated_at: Date;
        created_at: Date;
        deleted_at: Date;
        user_steps: AppUsersStep[];
        user_notifications: import("../notifications/entities/user-notification.entity").UserNotification;
        user_achievements: import("../achievements/entities/user-achievement.entity").UserAchievement[];
        group: import("../groups/entities/group.entity").Group[];
        user_streaks: import("../streaks/entities/user-streak.entity").UserStreak[];
        user_groups: import("../groups/entities/group.entity").Group[];
        province: import("../provinces/entities/province.entity").Province;
    }>;
    findByEmail(email: string): Promise<{
        profile_picture: string;
        id: string;
        name: string;
        email: string;
        password: string;
        step_goal: string;
        social_id: string;
        social_type: string;
        device_id: string;
        password_reset_token: string;
        password_reset_token_expiry: string;
        current_streak: string;
        best_streak: string;
        whatsapp_no: string;
        is_email_verified: boolean;
        verification_token: string;
        verification_token_expiry: string;
        access_token: string;
        access_token_expiry: string;
        streak_updated_at: string;
        status: number;
        zipcode: string;
        fcm_token: string;
        province_id: string;
        notify: boolean;
        is_step_tracking_enabled: boolean;
        updated_at: Date;
        created_at: Date;
        deleted_at: Date;
        user_steps: AppUsersStep[];
        user_notifications: import("../notifications/entities/user-notification.entity").UserNotification;
        user_achievements: import("../achievements/entities/user-achievement.entity").UserAchievement[];
        group: import("../groups/entities/group.entity").Group[];
        user_streaks: import("../streaks/entities/user-streak.entity").UserStreak[];
        user_groups: import("../groups/entities/group.entity").Group[];
        province: import("../provinces/entities/province.entity").Province;
    }>;
    findByVerificationToken(verification_token: string): Promise<{
        profile_picture: string;
        id: string;
        name: string;
        email: string;
        password: string;
        step_goal: string;
        social_id: string;
        social_type: string;
        device_id: string;
        password_reset_token: string;
        password_reset_token_expiry: string;
        current_streak: string;
        best_streak: string;
        whatsapp_no: string;
        is_email_verified: boolean;
        verification_token: string;
        verification_token_expiry: string;
        access_token: string;
        access_token_expiry: string;
        streak_updated_at: string;
        status: number;
        zipcode: string;
        fcm_token: string;
        province_id: string;
        notify: boolean;
        is_step_tracking_enabled: boolean;
        updated_at: Date;
        created_at: Date;
        deleted_at: Date;
        user_steps: AppUsersStep[];
        user_notifications: import("../notifications/entities/user-notification.entity").UserNotification;
        user_achievements: import("../achievements/entities/user-achievement.entity").UserAchievement[];
        group: import("../groups/entities/group.entity").Group[];
        user_streaks: import("../streaks/entities/user-streak.entity").UserStreak[];
        user_groups: import("../groups/entities/group.entity").Group[];
        province: import("../provinces/entities/province.entity").Province;
    }>;
    getUsersGoals(): Promise<{
        goal: string;
    }>;
}
