/* tslint:disable */ /* eslint-disable */ /** * My API * API documentation for my Laravel app * * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { mapValues } from '../runtime'; import type { CreateCartRequestItemsInner } from './CreateCartRequestItemsInner'; import { CreateCartRequestItemsInnerFromJSON, CreateCartRequestItemsInnerFromJSONTyped, CreateCartRequestItemsInnerToJSON, CreateCartRequestItemsInnerToJSONTyped, } from './CreateCartRequestItemsInner'; import type { CreateCartRequestShippingAddress } from './CreateCartRequestShippingAddress'; import { CreateCartRequestShippingAddressFromJSON, CreateCartRequestShippingAddressFromJSONTyped, CreateCartRequestShippingAddressToJSON, CreateCartRequestShippingAddressToJSONTyped, } from './CreateCartRequestShippingAddress'; /** * * @export * @interface CreateCartRequest */ export interface CreateCartRequest { /** * * @type {number} * @memberof CreateCartRequest */ customerId: number; /** * * @type {number} * @memberof CreateCartRequest */ siteId: number; /** * * @type {string} * @memberof CreateCartRequest */ token?: string; /** * * @type {string} * @memberof CreateCartRequest */ sessionToken?: string; /** * * @type {string} * @memberof CreateCartRequest */ paymentToken?: string; /** * * @type {string} * @memberof CreateCartRequest */ guestEmail?: string; /** * * @type {string} * @memberof CreateCartRequest */ source: CreateCartRequestSourceEnum; /** * * @type {Array} * @memberof CreateCartRequest */ items?: Array; /** * * @type {Array} * @memberof CreateCartRequest */ couponCodes?: Array; /** * * @type {string} * @memberof CreateCartRequest */ shippingType?: CreateCartRequestShippingTypeEnum | null; /** * * @type {number} * @memberof CreateCartRequest */ shippingSubtotal?: number | null; /** * * @type {boolean} * @memberof CreateCartRequest */ overrideShipping?: boolean; /** * * @type {number} * @memberof CreateCartRequest */ insuranceAmount?: number | null; /** * * @type {boolean} * @memberof CreateCartRequest */ includeInsurance?: boolean; /** * * @type {boolean} * @memberof CreateCartRequest */ overrideInsurance?: boolean; /** * * @type {boolean} * @memberof CreateCartRequest */ useAsBillingAddress?: boolean; /** * * @type {number} * @memberof CreateCartRequest */ shippingAddressId?: number | null; /** * * @type {number} * @memberof CreateCartRequest */ billingAddressId?: number | null; /** * * @type {CreateCartRequestShippingAddress} * @memberof CreateCartRequest */ shippingAddress?: CreateCartRequestShippingAddress; /** * * @type {CreateCartRequestShippingAddress} * @memberof CreateCartRequest */ billingAddress?: CreateCartRequestShippingAddress; } /** * @export */ export const CreateCartRequestSourceEnum = { Checkout: 'checkout', Admin: 'admin' } as const; export type CreateCartRequestSourceEnum = typeof CreateCartRequestSourceEnum[keyof typeof CreateCartRequestSourceEnum]; /** * @export */ export const CreateCartRequestShippingTypeEnum = { Pickup: 'pickup', Delivery: 'delivery', AuspostStandard: 'auspost_standard', Express: 'express', Courier: 'courier', DontShip: 'dont_ship' } as const; export type CreateCartRequestShippingTypeEnum = typeof CreateCartRequestShippingTypeEnum[keyof typeof CreateCartRequestShippingTypeEnum]; /** * Check if a given object implements the CreateCartRequest interface. */ export function instanceOfCreateCartRequest(value: object): value is CreateCartRequest { if (!('customerId' in value) || value['customerId'] === undefined) return false; if (!('siteId' in value) || value['siteId'] === undefined) return false; if (!('source' in value) || value['source'] === undefined) return false; return true; } export function CreateCartRequestFromJSON(json: any): CreateCartRequest { return CreateCartRequestFromJSONTyped(json, false); } export function CreateCartRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): CreateCartRequest { if (json == null) { return json; } return { 'customerId': json['customer_id'], 'siteId': json['site_id'], 'token': json['token'] == null ? undefined : json['token'], 'sessionToken': json['session_token'] == null ? undefined : json['session_token'], 'paymentToken': json['payment_token'] == null ? undefined : json['payment_token'], 'guestEmail': json['guest_email'] == null ? undefined : json['guest_email'], 'source': json['source'], 'items': json['items'] == null ? undefined : ((json['items'] as Array).map(CreateCartRequestItemsInnerFromJSON)), 'couponCodes': json['coupon_codes'] == null ? undefined : json['coupon_codes'], 'shippingType': json['shipping_type'] == null ? undefined : json['shipping_type'], 'shippingSubtotal': json['shipping_subtotal'] == null ? undefined : json['shipping_subtotal'], 'overrideShipping': json['override_shipping'] == null ? undefined : json['override_shipping'], 'insuranceAmount': json['insurance_amount'] == null ? undefined : json['insurance_amount'], 'includeInsurance': json['include_insurance'] == null ? undefined : json['include_insurance'], 'overrideInsurance': json['override_insurance'] == null ? undefined : json['override_insurance'], 'useAsBillingAddress': json['use_as_billing_address'] == null ? undefined : json['use_as_billing_address'], 'shippingAddressId': json['shipping_address_id'] == null ? undefined : json['shipping_address_id'], 'billingAddressId': json['billing_address_id'] == null ? undefined : json['billing_address_id'], 'shippingAddress': json['shipping_address'] == null ? undefined : CreateCartRequestShippingAddressFromJSON(json['shipping_address']), 'billingAddress': json['billing_address'] == null ? undefined : CreateCartRequestShippingAddressFromJSON(json['billing_address']), }; } export function CreateCartRequestToJSON(json: any): CreateCartRequest { return CreateCartRequestToJSONTyped(json, false); } export function CreateCartRequestToJSONTyped(value?: CreateCartRequest | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'customer_id': value['customerId'], 'site_id': value['siteId'], 'token': value['token'], 'session_token': value['sessionToken'], 'payment_token': value['paymentToken'], 'guest_email': value['guestEmail'], 'source': value['source'], 'items': value['items'] == null ? undefined : ((value['items'] as Array).map(CreateCartRequestItemsInnerToJSON)), 'coupon_codes': value['couponCodes'], 'shipping_type': value['shippingType'], 'shipping_subtotal': value['shippingSubtotal'], 'override_shipping': value['overrideShipping'], 'insurance_amount': value['insuranceAmount'], 'include_insurance': value['includeInsurance'], 'override_insurance': value['overrideInsurance'], 'use_as_billing_address': value['useAsBillingAddress'], 'shipping_address_id': value['shippingAddressId'], 'billing_address_id': value['billingAddressId'], 'shipping_address': CreateCartRequestShippingAddressToJSON(value['shippingAddress']), 'billing_address': CreateCartRequestShippingAddressToJSON(value['billingAddress']), }; }