import { UsersService } from './users.service';
import { CreateUserDto } from './dto/create-user.dto';
import { UpdateUserDto } from './dto/update-user.dto';
import { PrismaService } from '../prisma/prisma.service';
export declare class UsersController {
    private readonly usersService;
    private prisma;
    constructor(usersService: UsersService, prisma: PrismaService);
    create(createUserDto: CreateUserDto): Promise<any>;
    findAll(req: any): Promise<any>;
    roles(): import("@prisma/client").Prisma.PrismaPromise<import("@prisma/client").Role[]>;
    all(): import("@prisma/client").Prisma.PrismaPromise<{
        id: string;
        userDetail: {
            first_name: string;
            last_name: string;
        };
    }[]>;
    me(req: any): Promise<{
        notification_count: number;
        id: string;
        email: string;
        phone: string;
        status: import("@prisma/client").UserStatus;
        createdAt: Date;
        userDetail: {
            first_name: string;
            last_name: string;
        };
    }>;
    findOne(id: string): Promise<{
        id: string;
        role_id: string;
        email: string;
        phone: string;
        status: import("@prisma/client").UserStatus;
        createdAt: Date;
        userDetail: {
            first_name: string;
            last_name: string;
            personal_code: number;
            delay_time: string;
            delay_ratio: number;
            vacation_remained: number;
            manager_id: string;
        };
    }>;
    update(id: string, updateUserDto: UpdateUserDto): Promise<{
        id: string;
        email: string;
        phone: string;
        status: import("@prisma/client").UserStatus;
        createdAt: Date;
        userDetail: {
            first_name: string;
            last_name: string;
        };
    }>;
    remove(id: string): import("@prisma/client").Prisma.Prisma__UserClient<{
        id: string;
        email: string;
        phone: string;
        status: import("@prisma/client").UserStatus;
        createdAt: Date;
        userDetail: {
            first_name: string;
            last_name: string;
        };
    }, never>;
}
