/**
 * PayPal Server SDKLib
 *
 * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
 */
import { array, lazy, object, optional, string } from '../schema';
import { authenticationResponseSchema, } from './authenticationResponse';
import { binDetailsSchema } from './binDetails';
import { cardAttributesResponseSchema, } from './cardAttributesResponse';
import { cardBrandSchema } from './cardBrand';
import { cardFromRequestSchema } from './cardFromRequest';
import { cardStoredCredentialSchema, } from './cardStoredCredential';
import { cardTypeSchema } from './cardType';
export const cardResponseSchema = object({
    name: ['name', optional(string())],
    lastDigits: ['last_digits', optional(string())],
    brand: ['brand', optional(cardBrandSchema)],
    availableNetworks: ['available_networks', optional(array(cardBrandSchema))],
    type: ['type', optional(cardTypeSchema)],
    authenticationResult: [
        'authentication_result',
        optional(lazy(() => authenticationResponseSchema)),
    ],
    attributes: [
        'attributes',
        optional(lazy(() => cardAttributesResponseSchema)),
    ],
    fromRequest: ['from_request', optional(lazy(() => cardFromRequestSchema))],
    expiry: ['expiry', optional(string())],
    binDetails: ['bin_details', optional(lazy(() => binDetailsSchema))],
    storedCredential: [
        'stored_credential',
        optional(lazy(() => cardStoredCredentialSchema)),
    ],
});
//# sourceMappingURL=cardResponse.js.map