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 { DeprecatedLinkedTrackingCategory, DeprecatedLinkedTrackingCategory$Outbound } from "./deprecatedlinkedtrackingcategory.js"; import { LinkedCustomer, LinkedCustomer$Outbound } from "./linkedcustomer.js"; import { LinkedCustomerInput, LinkedCustomerInput$Outbound } from "./linkedcustomerinput.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 { LinkedTaxRate, LinkedTaxRate$Outbound } from "./linkedtaxrate.js"; import { LinkedTaxRateInput, LinkedTaxRateInput$Outbound } from "./linkedtaxrateinput.js"; import { LinkedTrackingCategory, LinkedTrackingCategory$Outbound } from "./linkedtrackingcategory.js"; /** * Debit entries are considered positive, and credit entries are considered negative. */ export declare const JournalEntryLineItemType: { readonly Debit: "debit"; readonly Credit: "credit"; }; /** * Debit entries are considered positive, and credit entries are considered negative. */ export type JournalEntryLineItemType = ClosedEnum; export type JournalEntryLineItem = { /** * A unique identifier for an object. */ id?: string | undefined; /** * User defined description */ description?: string | null | undefined; /** * Tax amount */ taxAmount?: number | null | undefined; /** * Sub-total amount, normally before tax. */ subTotal?: number | null | undefined; /** * Debit entries are considered positive, and credit entries are considered negative. */ totalAmount?: number | null | undefined; /** * Debit entries are considered positive, and credit entries are considered negative. */ type: JournalEntryLineItemType; taxRate?: LinkedTaxRate | undefined; /** * @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible. */ trackingCategory?: DeprecatedLinkedTrackingCategory | null | undefined; /** * A list of linked tracking categories. */ trackingCategories?: Array | null | undefined; ledgerAccount: LinkedLedgerAccount | null; /** * The customer this entity is linked to. */ customer?: LinkedCustomer | null | undefined; /** * The supplier this entity is linked to. */ supplier?: LinkedSupplier | null | undefined; /** * A unique identifier for an object. */ departmentId?: string | undefined; /** * A unique identifier for an object. */ locationId?: string | undefined; /** * Line number of the resource */ lineNumber?: number | null | undefined; }; export type JournalEntryLineItemInput = { /** * User defined description */ description?: string | null | undefined; /** * Tax amount */ taxAmount?: number | null | undefined; /** * Sub-total amount, normally before tax. */ subTotal?: number | null | undefined; /** * Debit entries are considered positive, and credit entries are considered negative. */ totalAmount?: number | null | undefined; /** * Debit entries are considered positive, and credit entries are considered negative. */ type: JournalEntryLineItemType; taxRate?: LinkedTaxRateInput | undefined; /** * @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible. */ trackingCategory?: DeprecatedLinkedTrackingCategory | null | undefined; /** * A list of linked tracking categories. */ trackingCategories?: Array | null | undefined; ledgerAccount: LinkedLedgerAccountInput | null; /** * The customer this entity is linked to. */ customer?: LinkedCustomerInput | null | undefined; /** * The supplier this entity is linked to. */ supplier?: LinkedSupplierInput | null | undefined; /** * Line number of the resource */ lineNumber?: number | null | undefined; }; /** @internal */ export declare const JournalEntryLineItemType$inboundSchema: z.ZodNativeEnum; /** @internal */ export declare const JournalEntryLineItemType$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 JournalEntryLineItemType$ { /** @deprecated use `JournalEntryLineItemType$inboundSchema` instead. */ const inboundSchema: z.ZodNativeEnum<{ readonly Debit: "debit"; readonly Credit: "credit"; }>; /** @deprecated use `JournalEntryLineItemType$outboundSchema` instead. */ const outboundSchema: z.ZodNativeEnum<{ readonly Debit: "debit"; readonly Credit: "credit"; }>; } /** @internal */ export declare const JournalEntryLineItem$inboundSchema: z.ZodType; /** @internal */ export type JournalEntryLineItem$Outbound = { id?: string | undefined; description?: string | null | undefined; tax_amount?: number | null | undefined; sub_total?: number | null | undefined; total_amount?: number | null | undefined; type: string; tax_rate?: LinkedTaxRate$Outbound | undefined; tracking_category?: DeprecatedLinkedTrackingCategory$Outbound | null | undefined; tracking_categories?: Array | null | undefined; ledger_account: LinkedLedgerAccount$Outbound | null; customer?: LinkedCustomer$Outbound | null | undefined; supplier?: LinkedSupplier$Outbound | null | undefined; department_id?: string | undefined; location_id?: string | undefined; line_number?: number | null | undefined; }; /** @internal */ export declare const JournalEntryLineItem$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 JournalEntryLineItem$ { /** @deprecated use `JournalEntryLineItem$inboundSchema` instead. */ const inboundSchema: z.ZodType; /** @deprecated use `JournalEntryLineItem$outboundSchema` instead. */ const outboundSchema: z.ZodType; /** @deprecated use `JournalEntryLineItem$Outbound` instead. */ type Outbound = JournalEntryLineItem$Outbound; } export declare function journalEntryLineItemToJSON(journalEntryLineItem: JournalEntryLineItem): string; export declare function journalEntryLineItemFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const JournalEntryLineItemInput$inboundSchema: z.ZodType; /** @internal */ export type JournalEntryLineItemInput$Outbound = { description?: string | null | undefined; tax_amount?: number | null | undefined; sub_total?: number | null | undefined; total_amount?: number | null | undefined; type: string; tax_rate?: LinkedTaxRateInput$Outbound | undefined; tracking_category?: DeprecatedLinkedTrackingCategory$Outbound | null | undefined; tracking_categories?: Array | null | undefined; ledger_account: LinkedLedgerAccountInput$Outbound | null; customer?: LinkedCustomerInput$Outbound | null | undefined; supplier?: LinkedSupplierInput$Outbound | null | undefined; line_number?: number | null | undefined; }; /** @internal */ export declare const JournalEntryLineItemInput$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 JournalEntryLineItemInput$ { /** @deprecated use `JournalEntryLineItemInput$inboundSchema` instead. */ const inboundSchema: z.ZodType; /** @deprecated use `JournalEntryLineItemInput$outboundSchema` instead. */ const outboundSchema: z.ZodType; /** @deprecated use `JournalEntryLineItemInput$Outbound` instead. */ type Outbound = JournalEntryLineItemInput$Outbound; } export declare function journalEntryLineItemInputToJSON(journalEntryLineItemInput: JournalEntryLineItemInput): string; export declare function journalEntryLineItemInputFromJSON(jsonString: string): SafeParseResult; //# sourceMappingURL=journalentrylineitem.d.ts.map