import type { HttpClient } from "../../../utils/httpClient";
import { type ServiceResult } from "../../../utils/serviceWrapper";
import type { SingleDisbursementRequest, SingleDisbursementResponse, AddBatchDisbursementRequest, BatchDisbursementResponse, GetBatchesParams, GetBatchTransactionsParams, BatchesResponse, BatchTransactionsResponse, ApprovalRequest, ReviewRequest, RejectionRequest, CancellationRequest, TransferFundsRequest, TransferFundsResponse } from "../types/disbursement";
export declare class OneKhusaDisbursements {
    private readonly network;
    constructor(network: HttpClient);
    private wrap;
    addSingle(request: SingleDisbursementRequest): Promise<ServiceResult<SingleDisbursementResponse>>;
    approveSingle(disbursementId: string, request?: ApprovalRequest): Promise<ServiceResult<SingleDisbursementResponse>>;
    reviewSingle(disbursementId: string, request?: ReviewRequest): Promise<ServiceResult<SingleDisbursementResponse>>;
    rejectSingle(disbursementId: string, request: RejectionRequest): Promise<ServiceResult<SingleDisbursementResponse>>;
    getSingle(disbursementId: string): Promise<ServiceResult<SingleDisbursementResponse>>;
    addBatch(request: AddBatchDisbursementRequest): Promise<ServiceResult<BatchDisbursementResponse>>;
    approveBatch(batchId: string, request?: ApprovalRequest): Promise<ServiceResult<BatchDisbursementResponse>>;
    reviewBatch(batchId: string, request?: ReviewRequest): Promise<ServiceResult<BatchDisbursementResponse>>;
    rejectBatch(batchId: string, request: RejectionRequest): Promise<ServiceResult<BatchDisbursementResponse>>;
    cancelBatch(batchId: string, request?: CancellationRequest): Promise<ServiceResult<BatchDisbursementResponse>>;
    transferBatchFunds(batchId: string, request?: TransferFundsRequest): Promise<ServiceResult<TransferFundsResponse>>;
    getBatches(params?: GetBatchesParams): Promise<ServiceResult<BatchesResponse>>;
    getBatch(batchId: string): Promise<ServiceResult<BatchDisbursementResponse>>;
    getBatchTransactions(batchId: string, params?: GetBatchTransactionsParams): Promise<ServiceResult<BatchTransactionsResponse>>;
}
//# sourceMappingURL=index.d.ts.map