/**
 * PayPal Server SDKLib
 *
 * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
 */
import { lazy, object, optional, string } from '../schema';
import { orderApplicationContextLandingPageSchema, } from './orderApplicationContextLandingPage';
import { orderApplicationContextShippingPreferenceSchema, } from './orderApplicationContextShippingPreference';
import { orderApplicationContextUserActionSchema, } from './orderApplicationContextUserAction';
import { paymentMethodPreferenceSchema, } from './paymentMethodPreference';
import { storedPaymentSourceSchema, } from './storedPaymentSource';
export const orderApplicationContextSchema = object({
    brandName: ['brand_name', optional(string())],
    locale: ['locale', optional(string())],
    landingPage: [
        'landing_page',
        optional(orderApplicationContextLandingPageSchema),
    ],
    shippingPreference: [
        'shipping_preference',
        optional(orderApplicationContextShippingPreferenceSchema),
    ],
    userAction: [
        'user_action',
        optional(orderApplicationContextUserActionSchema),
    ],
    paymentMethod: [
        'payment_method',
        optional(lazy(() => paymentMethodPreferenceSchema)),
    ],
    returnUrl: ['return_url', optional(string())],
    cancelUrl: ['cancel_url', optional(string())],
    storedPaymentSource: [
        'stored_payment_source',
        optional(lazy(() => storedPaymentSourceSchema)),
    ],
});
//# sourceMappingURL=orderApplicationContext.js.map