import { UsersService } from './users.service';
import { CreateUserDto } from './dto/create-user.dto';
import { UpdateUserDto } from './dto/update-user.dto';
import { UserEntity } from './entities/user.entity';
export declare class UsersController {
    private readonly usersService;
    constructor(usersService: UsersService);
    create(createUserDto: CreateUserDto, emailUser: boolean): Promise<{
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        email: string;
        phone: string;
        address1: string;
        address2: string;
        city: string;
        state: string;
        postcode: string;
        country: string;
        active: boolean;
        password: string;
        role: string;
        uuid: string;
        clientId: number | null;
        favourite: boolean;
    }>;
    findAll(page: number, limit: number, sortBy: string, sortOrder: string, search: string, active: string | undefined, clientId: number | undefined, role: string | Array<string> | undefined): Promise<[({
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        email: string;
        phone: string;
        address1: string;
        address2: string;
        city: string;
        state: string;
        postcode: string;
        country: string;
        active: boolean;
        password: string;
        role: string;
        uuid: string;
        clientId: number | null;
        favourite: boolean;
    } | {
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        email: string;
        phone: string;
        address1: string;
        address2: string;
        city: string;
        state: string;
        postcode: string;
        country: string;
        active: boolean;
        password: string;
        role: string;
        uuid: string;
        clientId: number | null;
        favourite: boolean;
    })[][], number, number]>;
    findAllSimple(params: any): Promise<UserEntity[]>;
    findOne(id: number): Promise<UserEntity>;
    update(id: number, updateUserDto: UpdateUserDto): Promise<UserEntity>;
    remove(id: number): Promise<UserEntity>;
    checkActivate(code: string): Promise<{
        message: string;
    }>;
    activate(code: string): Promise<{
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        email: string;
        phone: string;
        address1: string;
        address2: string;
        city: string;
        state: string;
        postcode: string;
        country: string;
        active: boolean;
        password: string;
        role: string;
        uuid: string;
        clientId: number | null;
        favourite: boolean;
    }>;
    passwordReset(body: any): Promise<{
        message: string;
    }>;
    updatePassword(key: string, body: any): Promise<{
        id: number;
        name: string;
        createdAt: Date;
        updatedAt: Date;
        email: string;
        phone: string;
        address1: string;
        address2: string;
        city: string;
        state: string;
        postcode: string;
        country: string;
        active: boolean;
        password: string;
        role: string;
        uuid: string;
        clientId: number | null;
        favourite: boolean;
    }>;
}
