import { RoleService } from './role.service';
import { CreateRoleDto } from './dto/create-role.dto';
import { UpdateRoleDto } from './dto/update-role.dto';
import type { Request } from 'express';
export declare class RoleController {
    private readonly rolesService;
    constructor(rolesService: RoleService);
    create(dto: CreateRoleDto): Promise<import("./entities/role.entity").Role>;
    findAll(page: number | undefined, limit: number | undefined, req: Request, search?: string): Promise<import("../../common/interfaces/pagination-result.interface").PaginationResult<import("./entities/role.entity").Role>>;
    findOne(id: number): Promise<import("./entities/role.entity").Role | null>;
    update(id: number, dto: UpdateRoleDto): Promise<import("./entities/role.entity").Role | null>;
    bulkDelete(ids: (number | string)[]): Promise<{
        success: boolean;
        deletedCount: number;
        ids: (string | number)[];
    }>;
    remove(id: number): Promise<import("typeorm").DeleteResult>;
}
