import { CreateBranchDto } from './dto/create-branch.dto';
import { UpdateBranchDto } from './dto/update-branch.dto';
import type { Request } from 'express';
import { BranchService } from './branches.service';
export declare class BranchController {
    private readonly branchService;
    constructor(branchService: BranchService);
    create(dto: CreateBranchDto): Promise<import("./entities/branch.entity").Branch>;
    findAll(page: number | undefined, limit: number | undefined, req: Request, search?: string): Promise<import("../../common/interfaces/pagination-result.interface").PaginationResult<import("./entities/branch.entity").Branch>>;
    findOne(id: number): Promise<import("./entities/branch.entity").Branch>;
    update(id: number, dto: UpdateBranchDto): Promise<import("./entities/branch.entity").Branch>;
    bulkDelete(ids: (number | string)[]): Promise<{
        success: boolean;
        deletedCount: number;
        ids: (string | number)[];
    }>;
    remove(id: number): Promise<void>;
    paginate(page: number | undefined, limit: number | undefined, req: Request): Promise<import("../../common/interfaces/pagination-result.interface").PaginationResult<import("./entities/branch.entity").Branch>>;
}
