/**
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import { CancelRefundReversalStatus } from "./cancel-refund-reversal-status";
import { FiatMoneyUsd } from "./fiat-money-usd";
import { PaymentInfoCancel } from "./payment-info-cancel";
import { PaymentInfoPaymentAndRefund } from "./payment-info-payment-and-refund";
import { SourceResponse } from "./source-response";
/**
 *
 * @export
 * @interface FiatRefund
 */
export interface FiatRefund {
    /**
     * Unique system generated identifier for the entity.
     * @type {string}
     * @memberof FiatRefund
     */
    id: string;
    /**
     * Type of the payment object.
     * @type {string}
     * @memberof FiatRefund
     */
    type: FiatRefundTypeEnum;
    /**
     * Unique system generated identifier for the merchant.
     * @type {string}
     * @memberof FiatRefund
     */
    merchantId: string;
    /**
     * Unique system generated identifier for the wallet of the merchant.
     * @type {string}
     * @memberof FiatRefund
     */
    merchantWalletId?: string;
    /**
     *
     * @type {FiatMoneyUsd}
     * @memberof FiatRefund
     */
    amount: FiatMoneyUsd;
    /**
     *
     * @type {SourceResponse}
     * @memberof FiatRefund
     */
    source: SourceResponse;
    /**
     * Enumerated description of the payment.
     * @type {string}
     * @memberof FiatRefund
     */
    description?: FiatRefundDescriptionEnum;
    /**
     *
     * @type {CancelRefundReversalStatus}
     * @memberof FiatRefund
     */
    status: CancelRefundReversalStatus;
    /**
     *
     * @type {PaymentInfoPaymentAndRefund}
     * @memberof FiatRefund
     */
    originalPayment?: PaymentInfoPaymentAndRefund;
    /**
     *
     * @type {PaymentInfoCancel}
     * @memberof FiatRefund
     */
    cancel?: PaymentInfoCancel | null;
    /**
     *
     * @type {FiatMoneyUsd}
     * @memberof FiatRefund
     */
    fees?: FiatMoneyUsd;
    /**
     * The channel identifier that can be set for the payment. When not provided, the default channel is used.
     * @type {string}
     * @memberof FiatRefund
     */
    channel?: string;
    /**
     * ISO-8601 UTC date/time format.
     * @type {string}
     * @memberof FiatRefund
     */
    createDate?: string;
    /**
     * ISO-8601 UTC date/time format.
     * @type {string}
     * @memberof FiatRefund
     */
    updateDate?: string;
}
export declare const FiatRefundTypeEnum: {
    readonly Refund: "refund";
};
export declare type FiatRefundTypeEnum = typeof FiatRefundTypeEnum[keyof typeof FiatRefundTypeEnum];
export declare const FiatRefundDescriptionEnum: {
    readonly Payment: "Payment";
};
export declare type FiatRefundDescriptionEnum = typeof FiatRefundDescriptionEnum[keyof typeof FiatRefundDescriptionEnum];
