import { DashboardRoleService } from './dashboard-role.service';
import { CreateDashboardRoleBatchDTO, CreateDashboardRoleDTO } from './dto';
export declare class DashboardRoleController {
    private readonly service;
    constructor(service: DashboardRoleService);
    getAll(paginationParams: any, dashboardId?: string): Promise<{
        total: any;
        lastPage: number;
        page: number;
        pageSize: number;
        prev: number;
        next: number;
        data: any[];
    }> | Promise<({
        role: {
            role_locale: ({
                locale: {
                    code: string;
                    name: string;
                    id: number;
                    region: string;
                    enabled: boolean;
                    created_at: Date;
                    updated_at: Date;
                };
            } & {
                name: string;
                id: number;
                description: string | null;
                created_at: Date;
                updated_at: Date;
                locale_id: number;
                role_id: number;
            })[];
        } & {
            id: number;
            created_at: Date;
            updated_at: Date;
            slug: string;
        };
    } & {
        id: number;
        created_at: Date;
        updated_at: Date;
        role_id: number;
        dashboard_id: number;
    })[]>;
    create(data: CreateDashboardRoleDTO, locale: string): Promise<{
        role: {
            role_locale: ({
                locale: {
                    code: string;
                    name: string;
                    id: number;
                    region: string;
                    enabled: boolean;
                    created_at: Date;
                    updated_at: Date;
                };
            } & {
                name: string;
                id: number;
                description: string | null;
                created_at: Date;
                updated_at: Date;
                locale_id: number;
                role_id: number;
            })[];
        } & {
            id: number;
            created_at: Date;
            updated_at: Date;
            slug: string;
        };
        dashboard: {
            dashboard_locale: ({
                locale: {
                    code: string;
                    name: string;
                    id: number;
                    region: string;
                    enabled: boolean;
                    created_at: Date;
                    updated_at: Date;
                };
            } & {
                name: string;
                id: number;
                created_at: Date;
                updated_at: Date;
                locale_id: number;
                dashboard_id: number;
            })[];
        } & {
            id: number;
            icon: string | null;
            created_at: Date;
            updated_at: Date;
            slug: string;
            is_template: boolean;
        };
    } & {
        id: number;
        created_at: Date;
        updated_at: Date;
        role_id: number;
        dashboard_id: number;
    }>;
    createBatch(data: CreateDashboardRoleBatchDTO, locale: string): Promise<{
        success: boolean;
        created: number;
        skipped: number;
        message: any;
    }>;
    delete(id: number, locale: string): Promise<{
        success: boolean;
    }>;
    deleteByDashboardAndRole(dashboardId: number, roleId: number, locale: string): Promise<{
        success: boolean;
    }>;
}
//# sourceMappingURL=dashboard-role.controller.d.ts.map