import { Branch } from './entities/branch.entity';
import { TenantConnectionService } from '@/modules/tenant/tenant-connection.service';
import { CreateBranchDto } from './dto/create-branch.dto';
import { UpdateBranchDto } from './dto/update-branch.dto';
import type { Request } from 'express';
import { BaseTenantService } from '@/common/base/service/base-crud.service';
export declare class BranchService extends BaseTenantService<Branch> {
    protected readonly tenantConnectionService: TenantConnectionService;
    protected entity: typeof Branch;
    constructor(tenantConnectionService: TenantConnectionService);
    createBranch(data: CreateBranchDto): Promise<Branch>;
    getBranch(id: number): Promise<Branch>;
    listBranches(): Promise<Branch[]>;
    updateBranch(id: number, data: UpdateBranchDto): Promise<Branch>;
    deleteBranch(id: number): Promise<void>;
    paginateBranches(page: number, limit: number, req: Request, filters?: Partial<Branch>): Promise<import("../../common/interfaces/pagination-result.interface").PaginationResult<Branch>>;
    bulkDelete(ids: (number | string)[]): Promise<{
        success: boolean;
        deletedCount: number;
        ids: (string | number)[];
    }>;
}
