import { BigNumberInput, PaymentDTO } from "@medusajs/framework/types";
/**
 * The data to refund a payment.
 */
export type RefundPaymentWorkflowInput = {
    /**
     * The ID of the payment to refund.
     */
    payment_id: string;
    /**
     * The ID of the user that refunded the payment.
     */
    created_by?: string;
    /**
     * The amount to refund. If not provided, the full payment amount will be refunded.
     */
    amount?: BigNumberInput;
    /**
     * The note to attach to the refund.
     */
    note?: string;
    /**
     * The ID of the refund reason to attach to the refund.
     */
    refund_reason_id?: string;
};
/**
 * This step validates that an order refund credit line can be issued
 */
export declare const validateRefundPaymentExceedsCapturedAmountStep: import("@medusajs/framework/workflows-sdk").StepFunction<{
    payment: PaymentDTO;
    refundAmount: BigNumberInput;
}, unknown>;
export declare const refundPaymentWorkflowId = "refund-payment-workflow";
/**
 * This workflow refunds a payment. It's used by the
 * [Refund Payment Admin API Route](https://docs.medusajs.com/api/admin#payments_postpaymentsidrefund).
 *
 * You can use this workflow within your own customizations or custom workflows, allowing you
 * to refund a payment in your custom flows.
 *
 * @example
 * const { result } = await refundPaymentWorkflow(container)
 * .run({
 *   input: {
 *     payment_id: "payment_123",
 *   }
 * })
 *
 * @summary
 *
 * Refund a payment.
 */
export declare const refundPaymentWorkflow: import("@medusajs/framework/workflows-sdk").ReturnWorkflow<RefundPaymentWorkflowInput, any, []>;
//# sourceMappingURL=refund-payment.d.ts.map