import type * as Merge from "../../../../api/index";
import * as core from "../../../../core";
import type * as serializers from "../../../index";
import { RemoteData } from "./RemoteData";
import { RemoteField } from "./RemoteField";
import { SalesOrderCompany } from "./SalesOrderCompany";
import { SalesOrderCurrency } from "./SalesOrderCurrency";
import { SalesOrderCustomer } from "./SalesOrderCustomer";
import { SalesOrderLinesItem } from "./SalesOrderLinesItem";
import { SalesOrderPaymentTerm } from "./SalesOrderPaymentTerm";
import { SalesOrderShippingAddress } from "./SalesOrderShippingAddress";
import { SalesOrderStatus } from "./SalesOrderStatus";
import { SalesOrderTrackingCategoriesItem } from "./SalesOrderTrackingCategoriesItem";
export declare const SalesOrder: core.serialization.ObjectSchema<serializers.accounting.SalesOrder.Raw, Merge.accounting.SalesOrder>;
export declare namespace SalesOrder {
    interface Raw {
        id?: string | null;
        remote_id?: string | null;
        created_at?: string | null;
        modified_at?: string | null;
        customer?: SalesOrderCustomer.Raw | null;
        currency?: SalesOrderCurrency.Raw | null;
        exchange_rate?: string | null;
        company?: SalesOrderCompany.Raw | null;
        status?: SalesOrderStatus.Raw | null;
        payment_term?: SalesOrderPaymentTerm.Raw | null;
        memo?: string | null;
        shipping_address?: SalesOrderShippingAddress.Raw | null;
        tracking_categories?: (SalesOrderTrackingCategoriesItem.Raw | null | undefined)[] | null;
        issue_date?: string | null;
        transaction_number?: string | null;
        total?: number | null;
        lines?: SalesOrderLinesItem.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;
    }
}
