import * as z from "zod/v3";
import { Result as SafeParseResult } from "../../types/fp.js";
import { RFCDate } from "../../types/rfcdate.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
import { BalanceByTransaction } from "./balancebytransaction.js";
export type BalanceByPeriod = {
    /**
     * The starting date of the period. If not provided, it represents the oldest period, where all transactions due before the specified `end_date` are included.
     */
    startDate?: RFCDate | null | undefined;
    /**
     * The ending date of the period. If not provided, it represents an open-ended period starting from the `start_date`, typically capturing future-dated transactions that are not yet aged.
     */
    endDate?: RFCDate | null | undefined;
    /**
     * Total amount of the period.
     */
    totalAmount?: number | undefined;
    balancesByTransaction?: Array<BalanceByTransaction> | undefined;
};
/** @internal */
export declare const BalanceByPeriod$inboundSchema: z.ZodType<BalanceByPeriod, z.ZodTypeDef, unknown>;
export declare function balanceByPeriodFromJSON(jsonString: string): SafeParseResult<BalanceByPeriod, SDKValidationError>;
//# sourceMappingURL=balancebyperiod.d.ts.map