import { CommonService } from 'src/common/common.service';
import { ClaimService } from './claim.service';
import { AddClaimStatusUpdateDto, AgentClaimListDto, AgentClaimSummaryQueryDto, AgentLogClaimDto, ClaimListDto, ClaimSummaryQueryDto, LogClaimDto } from './dto/claim.dto';
export declare class ClaimController {
    private readonly claimService;
    private readonly common;
    constructor(claimService: ClaimService, common: CommonService);
    create(req: any, dto: LogClaimDto): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    list(req: any, query: ClaimListDto): Promise<{
        status: string;
        message: string;
        data: any[];
        pagination: {
            total: number;
            page: number;
            limit: number;
            totalPages: number;
            hasNextPage: boolean;
            hasPrevPage: boolean;
        };
    }>;
    summary(req: any, query: ClaimSummaryQueryDto): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    getById(req: any, id: string): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    addStatusUpdate(req: any, id: string, dto: AddClaimStatusUpdateDto): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    remove(req: any, id: string): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    createForAgent(req: any, dto: AgentLogClaimDto): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    listForAgent(req: any, query: AgentClaimListDto): Promise<{
        status: string;
        message: string;
        data: any[];
        pagination: {
            total: number;
            page: number;
            limit: number;
            totalPages: number;
            hasNextPage: boolean;
            hasPrevPage: boolean;
        };
    }>;
    summaryForAgent(req: any, query: AgentClaimSummaryQueryDto): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    getByIdForAgent(req: any, id: string): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    removeForAgent(req: any, id: string): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
}
