import Joi from 'joi';
import { OperationResponse } from '../../utils/operation_response';
import { DisbursementServiceConfig } from '../implementations/disbursement_service';
export declare enum TransferMethod {
    OrangeMoney = "OrangeMoney"
}
export interface TransferRequest {
    webhook: string;
    amount: number;
    customerPhone: string;
    customerName: string;
    token: string;
}
export declare const TransferRequestSchema: Joi.ObjectSchema<TransferRequest>;
export declare type TransferResponseRawData = {
    MD5OfMessageBody: string;
    MD5OfMessageAttributes: string;
    MessageId: string;
    ResponseMetadata: {
        RequestId: string;
        HTTPStatusCode: number;
        HTTPHeaders: {
            'x-amzn-requestid': string;
            'x-amzn-trace-id': string;
            date: string;
            'content-type': string;
            'content-length': string;
        };
        RetryAttempts: number;
    };
};
export declare type TransferResponse = OperationResponse<string, TransferResponseRawData>;
/**
 * Transfers the specified amount of currency to the specified party.
 *
 * @param {DisbursementServiceConfig} configs - The disbursement service config.
 * @param {TransferRequest} params - The transfer parameters.
 * @return {MethodResponse<string, TransferRawData>} - The method response.
 */
export declare function transfer({ configs, params, endPoint, }: {
    configs: DisbursementServiceConfig;
    params: TransferRequest;
    endPoint: string;
}): TransferResponse;
//# sourceMappingURL=transfer.d.ts.map