"use strict";
/**
 * PayPal Server SDKLib
 *
 * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
 */
exports.__esModule = true;
exports.cardRequestSchema = void 0;
var schema_1 = require("../schema");
var address_1 = require("./address");
var cardAttributes_1 = require("./cardAttributes");
var cardExperienceContext_1 = require("./cardExperienceContext");
var cardStoredCredential_1 = require("./cardStoredCredential");
var networkToken_1 = require("./networkToken");
exports.cardRequestSchema = (0, schema_1.object)({
    name: ['name', (0, schema_1.optional)((0, schema_1.string)())],
    number: ['number', (0, schema_1.optional)((0, schema_1.string)())],
    expiry: ['expiry', (0, schema_1.optional)((0, schema_1.string)())],
    securityCode: ['security_code', (0, schema_1.optional)((0, schema_1.string)())],
    billingAddress: ['billing_address', (0, schema_1.optional)((0, schema_1.lazy)(function () { return address_1.addressSchema; }))],
    attributes: ['attributes', (0, schema_1.optional)((0, schema_1.lazy)(function () { return cardAttributes_1.cardAttributesSchema; }))],
    vaultId: ['vault_id', (0, schema_1.optional)((0, schema_1.string)())],
    singleUseToken: ['single_use_token', (0, schema_1.optional)((0, schema_1.string)())],
    storedCredential: [
        'stored_credential',
        (0, schema_1.optional)((0, schema_1.lazy)(function () { return cardStoredCredential_1.cardStoredCredentialSchema; })),
    ],
    networkToken: ['network_token', (0, schema_1.optional)((0, schema_1.lazy)(function () { return networkToken_1.networkTokenSchema; }))],
    experienceContext: [
        'experience_context',
        (0, schema_1.optional)((0, schema_1.lazy)(function () { return cardExperienceContext_1.cardExperienceContextSchema; })),
    ]
});
//# sourceMappingURL=cardRequest.js.map