import * as z from "zod"; import { ClosedEnum } from "../../types/enums.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; import { Currency } from "./currency.js"; import { CustomField, CustomField$Outbound } from "./customfield.js"; import { CustomMappings, CustomMappings$Outbound } from "./custommappings.js"; import { LinkedLedgerAccount, LinkedLedgerAccount$Outbound } from "./linkedledgeraccount.js"; import { LinkedLedgerAccountInput, LinkedLedgerAccountInput$Outbound } from "./linkedledgeraccountinput.js"; import { LinkedSupplier, LinkedSupplier$Outbound } from "./linkedsupplier.js"; import { LinkedSupplierInput, LinkedSupplierInput$Outbound } from "./linkedsupplierinput.js"; import { LinkedTrackingCategory, LinkedTrackingCategory$Outbound } from "./linkedtrackingcategory.js"; import { PassThroughBody, PassThroughBody$Outbound } from "./passthroughbody.js"; import { PaymentStatus } from "./paymentstatus.js"; /** * Type of payment */ export declare const BillPaymentType: { readonly AccountsPayableCredit: "accounts_payable_credit"; readonly AccountsPayableOverpayment: "accounts_payable_overpayment"; readonly AccountsPayablePrepayment: "accounts_payable_prepayment"; readonly AccountsPayable: "accounts_payable"; }; /** * Type of payment */ export type BillPaymentType = ClosedEnum; /** * Type of entity this payment should be attributed to. */ export declare const BillPaymentAllocationType: { readonly Bill: "bill"; readonly Expense: "expense"; readonly CreditMemo: "credit_memo"; readonly OverPayment: "over_payment"; readonly PrePayment: "pre_payment"; readonly JournalEntry: "journal_entry"; readonly Other: "other"; }; /** * Type of entity this payment should be attributed to. */ export type BillPaymentAllocationType = ClosedEnum; export type Allocations = { /** * A unique identifier for an object. */ id?: string | null | undefined; /** * Type of entity this payment should be attributed to. */ type?: BillPaymentAllocationType | undefined; code?: string | undefined; /** * Amount of payment that should be attributed to this allocation. If null, the total_amount will be used. */ amount?: number | null | undefined; /** * Unique identifier of the allocation */ allocationId?: string | undefined; }; export type BillPayment = { /** * A unique identifier for an object. */ id: string; /** * The third-party API ID of original entity */ downstreamId?: string | null | undefined; /** * Indicates the associated currency for an amount of money. Values correspond to [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217). */ currency?: Currency | null | undefined; /** * Currency Exchange Rate at the time entity was recorded/generated. */ currencyRate?: number | null | undefined; /** * The total amount of the transaction */ totalAmount: number | null; /** * Optional transaction reference message ie: Debit remittance detail. */ reference?: string | null | undefined; /** * Payment method used for the transaction, such as cash, credit card, bank transfer, or check */ paymentMethod?: string | null | undefined; /** * Optional reference message returned by payment method on processing */ paymentMethodReference?: string | null | undefined; /** * A unique identifier for an object. */ paymentMethodId?: string | null | undefined; account?: LinkedLedgerAccount | null | undefined; /** * The date of the transaction - YYYY:MM::DDThh:mm:ss.sTZD */ transactionDate: Date | null; /** * The supplier this entity is linked to. */ supplier?: LinkedSupplier | null | undefined; /** * The company or subsidiary id the transaction belongs to */ companyId?: string | null | undefined; /** * Indicates if the transaction has been reconciled. */ reconciled?: boolean | null | undefined; /** * Status of payment */ status?: PaymentStatus | undefined; /** * Type of payment */ type?: BillPaymentType | undefined; allocations?: Array | undefined; /** * Note associated with the transaction */ note?: string | null | undefined; /** * Number associated with the transaction */ number?: string | null | undefined; /** * A list of linked tracking categories. */ trackingCategories?: Array | null | undefined; customFields?: Array | undefined; /** * A binary value used to detect updates to a object and prevent data conflicts. It is incremented each time an update is made to the object. */ rowVersion?: string | null | undefined; /** * Id to be displayed. */ displayId?: string | null | undefined; /** * When custom mappings are configured on the resource, the result is included here. */ customMappings?: CustomMappings | null | undefined; /** * The user who last updated the object. */ updatedBy?: string | null | undefined; /** * The user who created the object. */ createdBy?: string | null | undefined; /** * The date and time when the object was created. */ createdAt?: Date | null | undefined; /** * The date and time when the object was last updated. */ updatedAt?: Date | null | undefined; /** * The pass_through property allows passing service-specific, custom data or structured modifications in request body when creating or updating resources. */ passThrough?: Array | undefined; }; export type BillPaymentAllocations = { /** * A unique identifier for an object. */ id?: string | null | undefined; /** * Type of entity this payment should be attributed to. */ type?: BillPaymentAllocationType | undefined; /** * Amount of payment that should be attributed to this allocation. If null, the total_amount will be used. */ amount?: number | null | undefined; /** * Unique identifier of the allocation */ allocationId?: string | undefined; }; export type BillPaymentInput = { /** * Indicates the associated currency for an amount of money. Values correspond to [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217). */ currency?: Currency | null | undefined; /** * Currency Exchange Rate at the time entity was recorded/generated. */ currencyRate?: number | null | undefined; /** * The total amount of the transaction */ totalAmount: number | null; /** * Optional transaction reference message ie: Debit remittance detail. */ reference?: string | null | undefined; /** * Payment method used for the transaction, such as cash, credit card, bank transfer, or check */ paymentMethod?: string | null | undefined; /** * Optional reference message returned by payment method on processing */ paymentMethodReference?: string | null | undefined; /** * A unique identifier for an object. */ paymentMethodId?: string | null | undefined; account?: LinkedLedgerAccountInput | null | undefined; /** * The date of the transaction - YYYY:MM::DDThh:mm:ss.sTZD */ transactionDate: Date | null; /** * The supplier this entity is linked to. */ supplier?: LinkedSupplierInput | null | undefined; /** * The company or subsidiary id the transaction belongs to */ companyId?: string | null | undefined; /** * Indicates if the transaction has been reconciled. */ reconciled?: boolean | null | undefined; /** * Status of payment */ status?: PaymentStatus | undefined; /** * Type of payment */ type?: BillPaymentType | undefined; allocations?: Array | undefined; /** * Note associated with the transaction */ note?: string | null | undefined; /** * Number associated with the transaction */ number?: string | null | undefined; /** * A list of linked tracking categories. */ trackingCategories?: Array | null | undefined; customFields?: Array | undefined; /** * A binary value used to detect updates to a object and prevent data conflicts. It is incremented each time an update is made to the object. */ rowVersion?: string | null | undefined; /** * Id to be displayed. */ displayId?: string | null | undefined; /** * The pass_through property allows passing service-specific, custom data or structured modifications in request body when creating or updating resources. */ passThrough?: Array | undefined; }; /** @internal */ export declare const BillPaymentType$inboundSchema: z.ZodNativeEnum; /** @internal */ export declare const BillPaymentType$outboundSchema: z.ZodNativeEnum; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export declare namespace BillPaymentType$ { /** @deprecated use `BillPaymentType$inboundSchema` instead. */ const inboundSchema: z.ZodNativeEnum<{ readonly AccountsPayableCredit: "accounts_payable_credit"; readonly AccountsPayableOverpayment: "accounts_payable_overpayment"; readonly AccountsPayablePrepayment: "accounts_payable_prepayment"; readonly AccountsPayable: "accounts_payable"; }>; /** @deprecated use `BillPaymentType$outboundSchema` instead. */ const outboundSchema: z.ZodNativeEnum<{ readonly AccountsPayableCredit: "accounts_payable_credit"; readonly AccountsPayableOverpayment: "accounts_payable_overpayment"; readonly AccountsPayablePrepayment: "accounts_payable_prepayment"; readonly AccountsPayable: "accounts_payable"; }>; } /** @internal */ export declare const BillPaymentAllocationType$inboundSchema: z.ZodNativeEnum; /** @internal */ export declare const BillPaymentAllocationType$outboundSchema: z.ZodNativeEnum; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export declare namespace BillPaymentAllocationType$ { /** @deprecated use `BillPaymentAllocationType$inboundSchema` instead. */ const inboundSchema: z.ZodNativeEnum<{ readonly Bill: "bill"; readonly Expense: "expense"; readonly CreditMemo: "credit_memo"; readonly OverPayment: "over_payment"; readonly PrePayment: "pre_payment"; readonly JournalEntry: "journal_entry"; readonly Other: "other"; }>; /** @deprecated use `BillPaymentAllocationType$outboundSchema` instead. */ const outboundSchema: z.ZodNativeEnum<{ readonly Bill: "bill"; readonly Expense: "expense"; readonly CreditMemo: "credit_memo"; readonly OverPayment: "over_payment"; readonly PrePayment: "pre_payment"; readonly JournalEntry: "journal_entry"; readonly Other: "other"; }>; } /** @internal */ export declare const Allocations$inboundSchema: z.ZodType; /** @internal */ export type Allocations$Outbound = { id?: string | null | undefined; type?: string | undefined; code?: string | undefined; amount?: number | null | undefined; allocation_id?: string | undefined; }; /** @internal */ export declare const Allocations$outboundSchema: z.ZodType; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export declare namespace Allocations$ { /** @deprecated use `Allocations$inboundSchema` instead. */ const inboundSchema: z.ZodType; /** @deprecated use `Allocations$outboundSchema` instead. */ const outboundSchema: z.ZodType; /** @deprecated use `Allocations$Outbound` instead. */ type Outbound = Allocations$Outbound; } export declare function allocationsToJSON(allocations: Allocations): string; export declare function allocationsFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const BillPayment$inboundSchema: z.ZodType; /** @internal */ export type BillPayment$Outbound = { id: string; downstream_id?: string | null | undefined; currency?: string | null | undefined; currency_rate?: number | null | undefined; total_amount: number | null; reference?: string | null | undefined; payment_method?: string | null | undefined; payment_method_reference?: string | null | undefined; payment_method_id?: string | null | undefined; account?: LinkedLedgerAccount$Outbound | null | undefined; transaction_date: string | null; supplier?: LinkedSupplier$Outbound | null | undefined; company_id?: string | null | undefined; reconciled?: boolean | null | undefined; status?: string | undefined; type?: string | undefined; allocations?: Array | undefined; note?: string | null | undefined; number?: string | null | undefined; tracking_categories?: Array | null | undefined; custom_fields?: Array | undefined; row_version?: string | null | undefined; display_id?: string | null | undefined; custom_mappings?: CustomMappings$Outbound | null | undefined; updated_by?: string | null | undefined; created_by?: string | null | undefined; created_at?: string | null | undefined; updated_at?: string | null | undefined; pass_through?: Array | undefined; }; /** @internal */ export declare const BillPayment$outboundSchema: z.ZodType; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export declare namespace BillPayment$ { /** @deprecated use `BillPayment$inboundSchema` instead. */ const inboundSchema: z.ZodType; /** @deprecated use `BillPayment$outboundSchema` instead. */ const outboundSchema: z.ZodType; /** @deprecated use `BillPayment$Outbound` instead. */ type Outbound = BillPayment$Outbound; } export declare function billPaymentToJSON(billPayment: BillPayment): string; export declare function billPaymentFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const BillPaymentAllocations$inboundSchema: z.ZodType; /** @internal */ export type BillPaymentAllocations$Outbound = { id?: string | null | undefined; type?: string | undefined; amount?: number | null | undefined; allocation_id?: string | undefined; }; /** @internal */ export declare const BillPaymentAllocations$outboundSchema: z.ZodType; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export declare namespace BillPaymentAllocations$ { /** @deprecated use `BillPaymentAllocations$inboundSchema` instead. */ const inboundSchema: z.ZodType; /** @deprecated use `BillPaymentAllocations$outboundSchema` instead. */ const outboundSchema: z.ZodType; /** @deprecated use `BillPaymentAllocations$Outbound` instead. */ type Outbound = BillPaymentAllocations$Outbound; } export declare function billPaymentAllocationsToJSON(billPaymentAllocations: BillPaymentAllocations): string; export declare function billPaymentAllocationsFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const BillPaymentInput$inboundSchema: z.ZodType; /** @internal */ export type BillPaymentInput$Outbound = { currency?: string | null | undefined; currency_rate?: number | null | undefined; total_amount: number | null; reference?: string | null | undefined; payment_method?: string | null | undefined; payment_method_reference?: string | null | undefined; payment_method_id?: string | null | undefined; account?: LinkedLedgerAccountInput$Outbound | null | undefined; transaction_date: string | null; supplier?: LinkedSupplierInput$Outbound | null | undefined; company_id?: string | null | undefined; reconciled?: boolean | null | undefined; status?: string | undefined; type?: string | undefined; allocations?: Array | undefined; note?: string | null | undefined; number?: string | null | undefined; tracking_categories?: Array | null | undefined; custom_fields?: Array | undefined; row_version?: string | null | undefined; display_id?: string | null | undefined; pass_through?: Array | undefined; }; /** @internal */ export declare const BillPaymentInput$outboundSchema: z.ZodType; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export declare namespace BillPaymentInput$ { /** @deprecated use `BillPaymentInput$inboundSchema` instead. */ const inboundSchema: z.ZodType; /** @deprecated use `BillPaymentInput$outboundSchema` instead. */ const outboundSchema: z.ZodType; /** @deprecated use `BillPaymentInput$Outbound` instead. */ type Outbound = BillPaymentInput$Outbound; } export declare function billPaymentInputToJSON(billPaymentInput: BillPaymentInput): string; export declare function billPaymentInputFromJSON(jsonString: string): SafeParseResult; //# sourceMappingURL=billpayment.d.ts.map