import * as z from "zod/v3";
import { ClosedEnum } from "../../types/enums.js";
import { Result as SafeParseResult } from "../../types/fp.js";
import { RFCDate } from "../../types/rfcdate.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
/**
 * Type of the transaction.
 */
export declare const BalanceByTransactionTransactionType: {
    readonly Invoice: "invoice";
    readonly CreditNote: "credit_note";
    readonly Bill: "bill";
    readonly Payment: "payment";
    readonly BillPayment: "bill_payment";
};
/**
 * Type of the transaction.
 */
export type BalanceByTransactionTransactionType = ClosedEnum<typeof BalanceByTransactionTransactionType>;
export type BalanceByTransaction = {
    /**
     * Unique identifier for the transaction.
     */
    transactionId?: string | undefined;
    /**
     * Date of the transaction.
     */
    transactionDate?: RFCDate | undefined;
    /**
     * Type of the transaction.
     */
    transactionType?: BalanceByTransactionTransactionType | undefined;
    /**
     * Due date of the transaction.
     */
    dueDate?: RFCDate | undefined;
    /**
     * Original amount of the transaction.
     */
    originalAmount?: number | undefined;
    /**
     * Outstanding balance of the transaction.
     */
    outstandingBalance?: number | undefined;
    /**
     * Transaction number of the transaction.
     */
    transactionNumber?: string | undefined;
};
/** @internal */
export declare const BalanceByTransactionTransactionType$inboundSchema: z.ZodNativeEnum<typeof BalanceByTransactionTransactionType>;
/** @internal */
export declare const BalanceByTransaction$inboundSchema: z.ZodType<BalanceByTransaction, z.ZodTypeDef, unknown>;
export declare function balanceByTransactionFromJSON(jsonString: string): SafeParseResult<BalanceByTransaction, SDKValidationError>;
//# sourceMappingURL=balancebytransaction.d.ts.map