import { AppUsersStep } from 'src/app_users_steps/entities/app_users_step.entity';
import { Repository } from 'typeorm';
import { Group } from './entities/group.entity';
import { AppUser } from 'src/app_users/entities/app_user.entity';
export declare class GroupsRepository {
    private readonly groupsRepository;
    private readonly userRepository;
    private readonly appUserRepository;
    constructor(groupsRepository: Repository<Group>, userRepository: Repository<AppUser>, appUserRepository: Repository<AppUsersStep>);
    findAll(take: number, skip: number, search: string, headers: any): Promise<{
        count: number;
        data: {
            total_steps: number;
            user_groups: {
                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: Group[];
                user_streaks: import("../streaks/entities/user-streak.entity").UserStreak[];
                user_groups: Group[];
                province: import("../provinces/entities/province.entity").Province;
            }[];
            icon: string;
            news: {
                news_media: {
                    media: string;
                    id: string;
                    news_id: string;
                    media_type: string;
                    status: number;
                    created_at: Date;
                    updated_at: Date;
                    deleted_at: Date;
                    thumbnail: string;
                    news: import("../news/entities/news.entity").News;
                }[];
                id: string;
                description_short: string;
                description_long: string;
                status: number;
                created_at: Date;
                updated_at: Date;
                deleted_at: Date;
                groups: Group[];
            }[];
            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: Group[];
                user_streaks: import("../streaks/entities/user-streak.entity").UserStreak[];
                user_groups: 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;
        }[];
    }>;
    findAllExploreGroup(search?: string): Promise<{
        total_steps: number;
        user_groups: {
            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: Group[];
            user_streaks: import("../streaks/entities/user-streak.entity").UserStreak[];
            user_groups: Group[];
            province: import("../provinces/entities/province.entity").Province;
        }[];
        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: Group[];
            user_streaks: import("../streaks/entities/user-streak.entity").UserStreak[];
            user_groups: Group[];
            province: import("../provinces/entities/province.entity").Province;
        };
        id: string;
        name: string;
        description: string;
        step_goal: string;
        icon: 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, url: boolean): Promise<{
        icon: string;
        user_groups: {
            id: string;
            name: string;
            profile_picture: string;
            total_steps: number;
        }[];
        news: {
            news_media: {
                media: string;
                id: string;
                news_id: string;
                media_type: string;
                status: number;
                created_at: Date;
                updated_at: Date;
                deleted_at: Date;
                thumbnail: string;
                news: import("../news/entities/news.entity").News;
            }[];
            id: string;
            description_short: string;
            description_long: string;
            status: number;
            created_at: Date;
            updated_at: Date;
            deleted_at: Date;
            groups: Group[];
        }[];
        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;
    }>;
    findGroupUser(groupId: string, take: number, skip: number, search: string): Promise<{
        count: number;
        data: {
            id: string;
            name: string;
            email: string;
            profile_picture: string;
            current_streak: string;
            best_streak: string;
            zipcode: string;
            whatsapp_no: string;
            province: {
                id: string;
                name: string;
            };
        }[];
    }>;
    findUserSteps(id: string): Promise<AppUsersStep[]>;
    findOneById(id: string): Promise<{
        id: string;
        name: string;
        description: string;
        step_goal: string;
        icon: 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[];
    }>;
    getAppUsersWithCreatedAt(groupId: string): Promise<{
        userId: string;
        joinDate: Date;
    }[]>;
    getAppUsersGroup(groupId: string, userId: string): Promise<{
        userId: string;
        joinDate: Date;
    }[]>;
}
