import * as Schema from "effect/Schema";
export declare const PostRefundsInput: Schema.Struct<{
    readonly amount: Schema.optional<Schema.Number>;
    readonly charge: Schema.optional<Schema.String>;
    readonly currency: Schema.optional<Schema.String>;
    readonly customer: Schema.optional<Schema.String>;
    readonly expand: Schema.optional<Schema.$Array<Schema.String>>;
    readonly instructions_email: Schema.optional<Schema.String>;
    readonly metadata: Schema.optional<Schema.Unknown>;
    readonly origin: Schema.optional<Schema.Literals<readonly ["customer_balance"]>>;
    readonly payment_intent: Schema.optional<Schema.String>;
    readonly reason: Schema.optional<Schema.Literals<readonly ["duplicate", "fraudulent", "requested_by_customer"]>>;
    readonly refund_application_fee: Schema.optional<Schema.Boolean>;
    readonly reverse_transfer: Schema.optional<Schema.Boolean>;
}>;
export type PostRefundsInput = typeof PostRefundsInput.Type;
export declare const PostRefundsOutput: Schema.Struct<{
    readonly amount: Schema.Number;
    readonly balance_transaction: Schema.Unknown;
    readonly charge: Schema.Unknown;
    readonly created: Schema.Number;
    readonly currency: Schema.String;
    readonly description: Schema.optional<Schema.String>;
    readonly destination_details: Schema.optional<Schema.Struct<{
        readonly affirm: Schema.optional<Schema.Struct<{}>>;
        readonly afterpay_clearpay: Schema.optional<Schema.Struct<{}>>;
        readonly alipay: Schema.optional<Schema.Struct<{}>>;
        readonly alma: Schema.optional<Schema.Struct<{}>>;
        readonly amazon_pay: Schema.optional<Schema.Struct<{}>>;
        readonly au_bank_transfer: Schema.optional<Schema.Struct<{}>>;
        readonly blik: Schema.optional<Schema.Struct<{
            readonly network_decline_code: Schema.NullOr<Schema.String>;
            readonly reference: Schema.NullOr<Schema.String>;
            readonly reference_status: Schema.NullOr<Schema.String>;
        }>>;
        readonly br_bank_transfer: Schema.optional<Schema.Struct<{
            readonly reference: Schema.NullOr<Schema.String>;
            readonly reference_status: Schema.NullOr<Schema.String>;
        }>>;
        readonly card: Schema.optional<Schema.Struct<{
            readonly reference: Schema.optional<Schema.String>;
            readonly reference_status: Schema.optional<Schema.String>;
            readonly reference_type: Schema.optional<Schema.String>;
            readonly type: Schema.Literals<readonly ["pending", "refund", "reversal"]>;
        }>>;
        readonly cashapp: Schema.optional<Schema.Struct<{}>>;
        readonly crypto: Schema.optional<Schema.Struct<{
            readonly reference: Schema.NullOr<Schema.String>;
        }>>;
        readonly customer_cash_balance: Schema.optional<Schema.Struct<{}>>;
        readonly eps: Schema.optional<Schema.Struct<{}>>;
        readonly eu_bank_transfer: Schema.optional<Schema.Struct<{
            readonly reference: Schema.NullOr<Schema.String>;
            readonly reference_status: Schema.NullOr<Schema.String>;
        }>>;
        readonly gb_bank_transfer: Schema.optional<Schema.Struct<{
            readonly reference: Schema.NullOr<Schema.String>;
            readonly reference_status: Schema.NullOr<Schema.String>;
        }>>;
        readonly giropay: Schema.optional<Schema.Struct<{}>>;
        readonly grabpay: Schema.optional<Schema.Struct<{}>>;
        readonly jp_bank_transfer: Schema.optional<Schema.Struct<{
            readonly reference: Schema.NullOr<Schema.String>;
            readonly reference_status: Schema.NullOr<Schema.String>;
        }>>;
        readonly klarna: Schema.optional<Schema.Struct<{}>>;
        readonly mb_way: Schema.optional<Schema.Struct<{
            readonly reference: Schema.NullOr<Schema.String>;
            readonly reference_status: Schema.NullOr<Schema.String>;
        }>>;
        readonly multibanco: Schema.optional<Schema.Struct<{
            readonly reference: Schema.NullOr<Schema.String>;
            readonly reference_status: Schema.NullOr<Schema.String>;
        }>>;
        readonly mx_bank_transfer: Schema.optional<Schema.Struct<{
            readonly reference: Schema.NullOr<Schema.String>;
            readonly reference_status: Schema.NullOr<Schema.String>;
        }>>;
        readonly nz_bank_transfer: Schema.optional<Schema.Struct<{}>>;
        readonly p24: Schema.optional<Schema.Struct<{
            readonly reference: Schema.NullOr<Schema.String>;
            readonly reference_status: Schema.NullOr<Schema.String>;
        }>>;
        readonly paynow: Schema.optional<Schema.Struct<{}>>;
        readonly paypal: Schema.optional<Schema.Struct<{
            readonly network_decline_code: Schema.NullOr<Schema.String>;
        }>>;
        readonly pix: Schema.optional<Schema.Struct<{}>>;
        readonly revolut: Schema.optional<Schema.Struct<{}>>;
        readonly sofort: Schema.optional<Schema.Struct<{}>>;
        readonly swish: Schema.optional<Schema.Struct<{
            readonly network_decline_code: Schema.NullOr<Schema.String>;
            readonly reference: Schema.NullOr<Schema.String>;
            readonly reference_status: Schema.NullOr<Schema.String>;
        }>>;
        readonly th_bank_transfer: Schema.optional<Schema.Struct<{
            readonly reference: Schema.NullOr<Schema.String>;
            readonly reference_status: Schema.NullOr<Schema.String>;
        }>>;
        readonly twint: Schema.optional<Schema.Struct<{}>>;
        readonly type: Schema.String;
        readonly us_bank_transfer: Schema.optional<Schema.Struct<{
            readonly reference: Schema.NullOr<Schema.String>;
            readonly reference_status: Schema.NullOr<Schema.String>;
        }>>;
        readonly wechat_pay: Schema.optional<Schema.Struct<{}>>;
        readonly zip: Schema.optional<Schema.Struct<{}>>;
    }>>;
    readonly failure_balance_transaction: Schema.optional<Schema.Unknown>;
    readonly failure_reason: Schema.optional<Schema.String>;
    readonly id: Schema.String;
    readonly instructions_email: Schema.optional<Schema.String>;
    readonly metadata: Schema.NullOr<Schema.$Record<Schema.String, Schema.String>>;
    readonly next_action: Schema.optional<Schema.Struct<{
        readonly display_details: Schema.optional<Schema.Struct<{
            readonly email_sent: Schema.Struct<{
                readonly email_sent_at: Schema.Number;
                readonly email_sent_to: Schema.String;
            }>;
            readonly expires_at: Schema.Number;
        }>>;
        readonly type: Schema.String;
    }>>;
    readonly object: Schema.Literals<readonly ["refund"]>;
    readonly payment_intent: Schema.Unknown;
    readonly pending_reason: Schema.optional<Schema.Literals<readonly ["charge_pending", "insufficient_funds", "processing"]>>;
    readonly presentment_details: Schema.optional<Schema.Struct<{
        readonly presentment_amount: Schema.Number;
        readonly presentment_currency: Schema.String;
    }>>;
    readonly reason: Schema.NullOr<Schema.Literals<readonly ["duplicate", "expired_uncaptured_charge", "fraudulent", "requested_by_customer"]>>;
    readonly receipt_number: Schema.NullOr<Schema.String>;
    readonly source_transfer_reversal: Schema.Unknown;
    readonly status: Schema.NullOr<Schema.String>;
    readonly transfer_reversal: Schema.Unknown;
}>;
export type PostRefundsOutput = typeof PostRefundsOutput.Type;
/**
 * Create customer balance refund
 *
 * <p>When you create a new refund, you must specify a Charge or a PaymentIntent object on which to create it.</p>
 * <p>Creating a new refund will refund a charge that has previously been created but not yet refunded.
 * Funds will be refunded to the credit or debit card that was originally charged.</p>
 * <p>You can optionally refund only part of a charge.
 * You can do so multiple times, until the entire charge has been refunded.</p>
 * <p>Once entirely refunded, a charge can’t be refunded again.
 * This method will raise an error when called on an already-refunded charge,
 * or when trying to refund more money than is left on a charge.</p>
 */
export declare const PostRefunds: import("@distilled.cloud/core/client").OperationMethod<{
    readonly amount?: number | undefined;
    readonly charge?: string | undefined;
    readonly currency?: string | undefined;
    readonly customer?: string | undefined;
    readonly expand?: readonly string[] | undefined;
    readonly instructions_email?: string | undefined;
    readonly metadata?: unknown;
    readonly origin?: "customer_balance" | undefined;
    readonly payment_intent?: string | undefined;
    readonly reason?: "duplicate" | "fraudulent" | "requested_by_customer" | undefined;
    readonly refund_application_fee?: boolean | undefined;
    readonly reverse_transfer?: boolean | undefined;
}, {
    readonly amount: number;
    readonly balance_transaction: unknown;
    readonly charge: unknown;
    readonly created: number;
    readonly currency: string;
    readonly description?: string | undefined;
    readonly destination_details?: {
        readonly affirm?: {} | undefined;
        readonly afterpay_clearpay?: {} | undefined;
        readonly alipay?: {} | undefined;
        readonly alma?: {} | undefined;
        readonly amazon_pay?: {} | undefined;
        readonly au_bank_transfer?: {} | undefined;
        readonly blik?: {
            readonly network_decline_code: string | null;
            readonly reference: string | null;
            readonly reference_status: string | null;
        } | undefined;
        readonly br_bank_transfer?: {
            readonly reference: string | null;
            readonly reference_status: string | null;
        } | undefined;
        readonly card?: {
            readonly reference?: string | undefined;
            readonly reference_status?: string | undefined;
            readonly reference_type?: string | undefined;
            readonly type: "pending" | "refund" | "reversal";
        } | undefined;
        readonly cashapp?: {} | undefined;
        readonly crypto?: {
            readonly reference: string | null;
        } | undefined;
        readonly customer_cash_balance?: {} | undefined;
        readonly eps?: {} | undefined;
        readonly eu_bank_transfer?: {
            readonly reference: string | null;
            readonly reference_status: string | null;
        } | undefined;
        readonly gb_bank_transfer?: {
            readonly reference: string | null;
            readonly reference_status: string | null;
        } | undefined;
        readonly giropay?: {} | undefined;
        readonly grabpay?: {} | undefined;
        readonly jp_bank_transfer?: {
            readonly reference: string | null;
            readonly reference_status: string | null;
        } | undefined;
        readonly klarna?: {} | undefined;
        readonly mb_way?: {
            readonly reference: string | null;
            readonly reference_status: string | null;
        } | undefined;
        readonly multibanco?: {
            readonly reference: string | null;
            readonly reference_status: string | null;
        } | undefined;
        readonly mx_bank_transfer?: {
            readonly reference: string | null;
            readonly reference_status: string | null;
        } | undefined;
        readonly nz_bank_transfer?: {} | undefined;
        readonly p24?: {
            readonly reference: string | null;
            readonly reference_status: string | null;
        } | undefined;
        readonly paynow?: {} | undefined;
        readonly paypal?: {
            readonly network_decline_code: string | null;
        } | undefined;
        readonly pix?: {} | undefined;
        readonly revolut?: {} | undefined;
        readonly sofort?: {} | undefined;
        readonly swish?: {
            readonly network_decline_code: string | null;
            readonly reference: string | null;
            readonly reference_status: string | null;
        } | undefined;
        readonly th_bank_transfer?: {
            readonly reference: string | null;
            readonly reference_status: string | null;
        } | undefined;
        readonly twint?: {} | undefined;
        readonly type: string;
        readonly us_bank_transfer?: {
            readonly reference: string | null;
            readonly reference_status: string | null;
        } | undefined;
        readonly wechat_pay?: {} | undefined;
        readonly zip?: {} | undefined;
    } | undefined;
    readonly failure_balance_transaction?: unknown;
    readonly failure_reason?: string | undefined;
    readonly id: string;
    readonly instructions_email?: string | undefined;
    readonly metadata: {
        readonly [x: string]: string;
    } | null;
    readonly next_action?: {
        readonly display_details?: {
            readonly email_sent: {
                readonly email_sent_at: number;
                readonly email_sent_to: string;
            };
            readonly expires_at: number;
        } | undefined;
        readonly type: string;
    } | undefined;
    readonly object: "refund";
    readonly payment_intent: unknown;
    readonly pending_reason?: "charge_pending" | "insufficient_funds" | "processing" | undefined;
    readonly presentment_details?: {
        readonly presentment_amount: number;
        readonly presentment_currency: string;
    } | undefined;
    readonly reason: "duplicate" | "expired_uncaptured_charge" | "fraudulent" | "requested_by_customer" | null;
    readonly receipt_number: string | null;
    readonly source_transfer_reversal: unknown;
    readonly status: string | null;
    readonly transfer_reversal: unknown;
}, never, any>;
//# sourceMappingURL=PostRefunds.d.ts.map