import type * as Merge from "../../../../api/index";
import * as core from "../../../../core";
import type * as serializers from "../../../index";
import { PurchaseOrderAccountingPeriod } from "./PurchaseOrderAccountingPeriod";
import { PurchaseOrderCompany } from "./PurchaseOrderCompany";
import { PurchaseOrderCurrency } from "./PurchaseOrderCurrency";
import { PurchaseOrderDeliveryAddress } from "./PurchaseOrderDeliveryAddress";
import { PurchaseOrderLineItemsItem } from "./PurchaseOrderLineItemsItem";
import { PurchaseOrderPaymentTerm } from "./PurchaseOrderPaymentTerm";
import { PurchaseOrderStatus } from "./PurchaseOrderStatus";
import { PurchaseOrderTrackingCategoriesItem } from "./PurchaseOrderTrackingCategoriesItem";
import { PurchaseOrderVendor } from "./PurchaseOrderVendor";
import { RemoteData } from "./RemoteData";
import { RemoteField } from "./RemoteField";
export declare const PurchaseOrder: core.serialization.ObjectSchema<serializers.accounting.PurchaseOrder.Raw, Merge.accounting.PurchaseOrder>;
export declare namespace PurchaseOrder {
    interface Raw {
        id?: string | null;
        remote_id?: string | null;
        created_at?: string | null;
        modified_at?: string | null;
        status?: PurchaseOrderStatus.Raw | null;
        issue_date?: string | null;
        purchase_order_number?: string | null;
        delivery_date?: string | null;
        delivery_address?: PurchaseOrderDeliveryAddress.Raw | null;
        customer?: string | null;
        vendor?: PurchaseOrderVendor.Raw | null;
        memo?: string | null;
        company?: PurchaseOrderCompany.Raw | null;
        total_amount?: number | null;
        currency?: PurchaseOrderCurrency.Raw | null;
        exchange_rate?: string | null;
        payment_term?: PurchaseOrderPaymentTerm.Raw | null;
        line_items?: PurchaseOrderLineItemsItem.Raw[] | null;
        inclusive_of_tax?: boolean | null;
        tracking_categories?: (PurchaseOrderTrackingCategoriesItem.Raw | null | undefined)[] | null;
        accounting_period?: PurchaseOrderAccountingPeriod.Raw | null;
        remote_created_at?: string | null;
        remote_updated_at?: string | null;
        remote_was_deleted?: boolean | null;
        field_mappings?: Record<string, unknown> | null;
        remote_data?: RemoteData.Raw[] | null;
        remote_fields?: RemoteField.Raw[] | null;
    }
}
