{"version":3,"file":"static/js/54c8d851bd9faea46009.bundle.js","mappings":"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","sources":["webpack://@msdyn365-commerce-partners/fabrikam/../../src/DataActions/BusinessPartnerUsersDataActions.g.ts?c8e5","webpack://@msdyn365-commerce-partners/fabrikam/../../src/DataActions/BusinessPartnersDataActions.g.ts?502e","webpack://@msdyn365-commerce-partners/fabrikam/../../src/DataActions/CartsDataActions.g.ts?f2f8","webpack://@msdyn365-commerce-partners/fabrikam/../../src/DataActions/CatalogsDataActions.g.ts?8b5c","webpack://@msdyn365-commerce-partners/fabrikam/../../src/DataActions/CategoriesDataActions.g.ts?d9f0","webpack://@msdyn365-commerce-partners/fabrikam/../../src/DataActions/CommerceListsDataActions.g.ts?d44a","webpack://@msdyn365-commerce-partners/fabrikam/../../src/DataActions/CustomersDataActions.g.ts?081a","webpack://@msdyn365-commerce-partners/fabrikam/../../src/DataActions/OrgUnitsDataActions.g.ts?c88f","webpack://@msdyn365-commerce-partners/fabrikam/../../src/DataActions/ProductListsDataActions.g.ts?81df","webpack://@msdyn365-commerce-partners/fabrikam/../../src/DataActions/ProductsDataActions.g.ts?8ea2","webpack://@msdyn365-commerce-partners/fabrikam/../../src/DataActions/RecommendationsDataActions.g.ts?31c0","webpack://@msdyn365-commerce-partners/fabrikam/../../src/DataActions/SalesOrdersDataActions.g.ts?4e0c","webpack://@msdyn365-commerce-partners/fabrikam/../../src/DataActions/ScanResultsDataActions.g.ts?42cd","webpack://@msdyn365-commerce-partners/fabrikam/../../src/DataActions/StoreOperationsDataActions.g.ts?85ae","webpack://@msdyn365-commerce-partners/fabrikam/../src/DataServiceQuery.ts?8aab","webpack://@msdyn365-commerce-partners/fabrikam/../src/DataServiceRequest.ts?423e"],"sourcesContent":["\n // \n\n import { AsyncResult } from '../async-result';\n import { DataServiceQuery } from '../DataServiceQuery';\n import { BusinessPartnerUser, AccountStatementRequest, BusinessPartnerOperationRequest } from '../Entities/CommerceTypes.g';\n import { IContext, IDataServiceRequest, IQueryResultSettings, NullResult } from '../Interfaces';\n import { executeAction } from '../retail-action';\n\n \n \n function businessPartnerUsersQuery(b2BUserId?: string): DataServiceQuery {\n var key = (b2BUserId) ? { B2BUserId: b2BUserId } : null;\n return new DataServiceQuery(\"BusinessPartnerUsers\", \"BusinessPartnerUser\", \"BusinessPartnerUserClass\", key);\n }\n \n export function createCreateInput(entity: BusinessPartnerUser): IDataServiceRequest {\n return businessPartnerUsersQuery().create(entity);\n }\n\n export function createBusinessPartnerUserAsync(context: IContext, entity: BusinessPartnerUser): AsyncResult {\n const request = createCreateInput(entity);\n return executeAction(request, context);\n }\n\n export function createUpdateInput(entity: BusinessPartnerUser): IDataServiceRequest {\n return businessPartnerUsersQuery(entity.B2BUserId).update(entity);\n }\n\n export function updateAsync(context: IContext, entity: BusinessPartnerUser): AsyncResult {\n const request = createUpdateInput(entity);\n return executeAction(request, context);\n }\n\n export function createDeleteAsync(entity: BusinessPartnerUser): IDataServiceRequest {\n return businessPartnerUsersQuery(entity.B2BUserId).delete();\n }\n\n export function deleteAsync(context: IContext, entity: BusinessPartnerUser): AsyncResult {\n const request = createDeleteAsync(entity);\n return executeAction(request, context);\n }\n\n export function createReadAsync(b2BUserId: string): IDataServiceRequest {\n return businessPartnerUsersQuery(b2BUserId).read();\n }\n\n export function readAsync(context: IContext, b2BUserId: string): AsyncResult {\n const request = createReadAsync(b2BUserId);\n return executeAction(request, context);\n }\n\n export function createReadAllAsync(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n return businessPartnerUsersQuery().resultSettings(queryResultSettings).read();\n }\n\n export function readAllAsync(context: IContext): AsyncResult {\n const request = createReadAllAsync(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createRequestAccountStatementInput(b2BUserId: string, accountStatementParameters?: AccountStatementRequest | null): IDataServiceRequest { \n const query = businessPartnerUsersQuery(b2BUserId);\n return query.createDataServiceRequestForOperation('RequestAccountStatement', true, '', '', {bypassCache: 'get', returnEntity: ''}, {accountStatementParameters: accountStatementParameters });\n } \n \n export function requestAccountStatementAsync(context: IContext, b2BUserId: string, accountStatementParameters?: AccountStatementRequest | null):AsyncResult {\n const request = createRequestAccountStatementInput(b2BUserId, accountStatementParameters);\n return executeAction(request, context);\n } \n \n export function createRequestInvoiceCopyInput(b2BUserId: string, invoiceId: string | null, deliveryType: number): IDataServiceRequest { \n const query = businessPartnerUsersQuery(b2BUserId);\n return query.createDataServiceRequestForOperation('RequestInvoiceCopy', true, '', '', {bypassCache: 'get', returnEntity: ''}, {invoiceId: invoiceId, deliveryType: deliveryType });\n } \n \n export function requestInvoiceCopyAsync(context: IContext, b2BUserId: string, invoiceId: string | null, deliveryType: number):AsyncResult {\n const request = createRequestInvoiceCopyInput(b2BUserId, invoiceId, deliveryType);\n return executeAction(request, context);\n } \n \n export function createGetOperationRequestsInput(queryResultSettings: IQueryResultSettings, b2BUserId: string, startDateTime: Date, endDateTime: Date): IDataServiceRequest { \n const query = businessPartnerUsersQuery(b2BUserId).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetOperationRequests', true, \n 'BusinessPartnerOperationRequestClass'\n , 'true', {bypassCache: 'none', returnEntity: 'BusinessPartnerOperationRequest'}, {startDateTime: startDateTime, endDateTime: endDateTime });\n } \n \n export function getOperationRequestsAsync(context: IContext, b2BUserId: string, startDateTime: Date, endDateTime: Date):AsyncResult {\n const request = createGetOperationRequestsInput(context.queryResultSettings, b2BUserId, startDateTime, endDateTime);\n return executeAction(request, context);\n } \n \n export function createGetCurrentInput(): IDataServiceRequest { \n const query = businessPartnerUsersQuery();\n return query.createDataServiceRequestForOperation('GetCurrent', false, \n 'BusinessPartnerUserClass'\n , 'false', {bypassCache: 'none', returnEntity: 'BusinessPartnerUser'}, { });\n } \n \n export function getCurrentAsync(context: IContext, ):AsyncResult {\n const request = createGetCurrentInput();\n return executeAction(request, context);\n } \n \n ","\n // \n\n import { AsyncResult } from '../async-result';\n import { DataServiceQuery } from '../DataServiceQuery';\n import { BusinessPartner, OrderShipments, BusinessPartnerProspect, BusinessPartnerUser } from '../Entities/CommerceTypes.g';\n import { IContext, IDataServiceRequest, IQueryResultSettings, NullResult } from '../Interfaces';\n import { executeAction } from '../retail-action';\n\n \n \n function businessPartnersQuery(businessPartnerId?: string): DataServiceQuery {\n var key = (businessPartnerId) ? { BusinessPartnerId: businessPartnerId } : null;\n return new DataServiceQuery(\"BusinessPartners\", \"BusinessPartner\", \"BusinessPartnerClass\", key);\n }\n \n export function createCreateInput(entity: BusinessPartner): IDataServiceRequest {\n return businessPartnersQuery().create(entity);\n }\n\n export function createBusinessPartnerAsync(context: IContext, entity: BusinessPartner): AsyncResult {\n const request = createCreateInput(entity);\n return executeAction(request, context);\n }\n\n export function createUpdateInput(entity: BusinessPartner): IDataServiceRequest {\n return businessPartnersQuery(entity.BusinessPartnerId).update(entity);\n }\n\n export function updateAsync(context: IContext, entity: BusinessPartner): AsyncResult {\n const request = createUpdateInput(entity);\n return executeAction(request, context);\n }\n\n export function createDeleteAsync(entity: BusinessPartner): IDataServiceRequest {\n return businessPartnersQuery(entity.BusinessPartnerId).delete();\n }\n\n export function deleteAsync(context: IContext, entity: BusinessPartner): AsyncResult {\n const request = createDeleteAsync(entity);\n return executeAction(request, context);\n }\n\n export function createReadAsync(businessPartnerId: string): IDataServiceRequest {\n return businessPartnersQuery(businessPartnerId).read();\n }\n\n export function readAsync(context: IContext, businessPartnerId: string): AsyncResult {\n const request = createReadAsync(businessPartnerId);\n return executeAction(request, context);\n }\n\n export function createReadAllAsync(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n return businessPartnersQuery().resultSettings(queryResultSettings).read();\n }\n\n export function readAllAsync(context: IContext): AsyncResult {\n const request = createReadAllAsync(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetOrderHistoryInput(queryResultSettings: IQueryResultSettings, businessPartnerId: string, ): IDataServiceRequest { \n const query = businessPartnersQuery(businessPartnerId).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetOrderHistory', false, \n 'OrderShipmentsClass'\n , 'true', {bypassCache: 'none', returnEntity: 'OrderShipments'}, { });\n } \n \n export function getOrderHistoryAsync(context: IContext, businessPartnerId: string):AsyncResult {\n const request = createGetOrderHistoryInput(context.queryResultSettings, businessPartnerId);\n return executeAction(request, context);\n } \n \n export function createCreateProspectInput(businessPartnerProspect?: BusinessPartnerProspect | null): IDataServiceRequest { \n const query = businessPartnersQuery();\n return query.createDataServiceRequestForOperation('CreateProspect', true, \n 'BusinessPartnerProspectClass'\n , 'false', {bypassCache: 'get', returnEntity: 'BusinessPartnerProspect'}, {businessPartnerProspect: businessPartnerProspect });\n } \n \n export function createProspectAsync(context: IContext, businessPartnerProspect?: BusinessPartnerProspect | null):AsyncResult {\n const request = createCreateProspectInput(businessPartnerProspect);\n return executeAction(request, context);\n } \n \n export function createPromoteToSellerInput(businessPartnerId: string, ): IDataServiceRequest { \n const query = businessPartnersQuery(businessPartnerId);\n return query.createDataServiceRequestForOperation('PromoteToSeller', true, '', '', {bypassCache: 'get', returnEntity: ''}, { });\n } \n \n export function promoteToSellerAsync(context: IContext, businessPartnerId: string):AsyncResult {\n const request = createPromoteToSellerInput(businessPartnerId);\n return executeAction(request, context);\n } \n \n export function createGetCurrentInput(): IDataServiceRequest { \n const query = businessPartnersQuery();\n return query.createDataServiceRequestForOperation('GetCurrent', false, \n 'BusinessPartnerClass'\n , 'false', {bypassCache: 'none', returnEntity: 'BusinessPartner'}, { });\n } \n \n export function getCurrentAsync(context: IContext, ):AsyncResult {\n const request = createGetCurrentInput();\n return executeAction(request, context);\n } \n \n export function createGetManagedBusinessPartnersInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest { \n const query = businessPartnersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetManagedBusinessPartners', false, \n 'BusinessPartnerClass'\n , 'true', {bypassCache: 'none', returnEntity: 'BusinessPartner'}, { });\n } \n \n export function getManagedBusinessPartnersAsync(context: IContext, ):AsyncResult {\n const request = createGetManagedBusinessPartnersInput(context.queryResultSettings, );\n return executeAction(request, context);\n } \n \n export function createGetUsersInput(queryResultSettings: IQueryResultSettings, businessPartnerId: string, ): IDataServiceRequest { \n const query = businessPartnersQuery(businessPartnerId).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetUsers', false, \n 'BusinessPartnerUserClass'\n , 'true', {bypassCache: 'none', returnEntity: 'BusinessPartnerUser'}, { });\n } \n \n export function getUsersAsync(context: IContext, businessPartnerId: string):AsyncResult {\n const request = createGetUsersInput(context.queryResultSettings, businessPartnerId);\n return executeAction(request, context);\n } \n \n ","\n // \n\n import { AsyncResult } from '../async-result';\n import { DataServiceQuery } from '../DataServiceQuery';\n import { Cart, CartSearchCriteria, TokenizedPaymentCard, CartTenderLine, SalesOrder, LoyaltyPointRedemptionEstimate, TenderLine, LineShippingAddress, SalesLineDeliveryOption, CartDeliveryPreferences, Address, DeliveryOption, LineDeliverySpecification, DeliverySpecification, ReasonCodeLine, CartLine, ReturnCartLine, TenderDiscountLine, ReceiptRetrievalCriteria, Receipt, RecallInvoicedSalesLineLookup, CardPaymentAcceptSettings, CommerceProperty, CardPaymentAcceptPoint, RetrievePaymentResultSettings, CardPaymentAcceptResult, RecallOrderSearchCriteria, CartPromotions, CartPromotionLine, CartLineUserAlerts, ChargeCode, TenderTypeAmount, CartConfiguration, CartLineValidationResults } from '../Entities/CommerceTypes.g';\n import { IContext, IDataServiceRequest, IQueryResultSettings, NullResult } from '../Interfaces';\n import { executeAction } from '../retail-action';\n\n \n \n function cartsQuery(id?: string): DataServiceQuery {\n var key = (id) ? { Id: id } : null;\n return new DataServiceQuery(\"Carts\", \"Cart\", \"CartClass\", key);\n }\n \n export function createCreateInput(entity: Cart): IDataServiceRequest {\n return cartsQuery().create(entity);\n }\n\n export function createCartAsync(context: IContext, entity: Cart): AsyncResult {\n const request = createCreateInput(entity);\n return executeAction(request, context);\n }\n\n export function createUpdateInput(entity: Cart): IDataServiceRequest {\n return cartsQuery(entity.Id).update(entity);\n }\n\n export function updateAsync(context: IContext, entity: Cart): AsyncResult {\n const request = createUpdateInput(entity);\n return executeAction(request, context);\n }\n\n export function createDeleteAsync(entity: Cart): IDataServiceRequest {\n return cartsQuery(entity.Id).delete();\n }\n\n export function deleteAsync(context: IContext, entity: Cart): AsyncResult {\n const request = createDeleteAsync(entity);\n return executeAction(request, context);\n }\n\n export function createReadAsync(id: string): IDataServiceRequest {\n return cartsQuery(id).read();\n }\n\n export function readAsync(context: IContext, id: string): AsyncResult {\n const request = createReadAsync(id);\n return executeAction(request, context);\n }\n\n export function createReadAllAsync(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n return cartsQuery().resultSettings(queryResultSettings).read();\n }\n\n export function readAllAsync(context: IContext): AsyncResult {\n const request = createReadAllAsync(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createSearchInput(queryResultSettings: IQueryResultSettings, cartSearchCriteria?: CartSearchCriteria | null): IDataServiceRequest { \n const query = cartsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('Search', true, \n 'CartClass'\n , 'true', {bypassCache: 'none', returnEntity: 'Cart'}, {cartSearchCriteria: cartSearchCriteria });\n } \n \n export function searchAsync(context: IContext, cartSearchCriteria?: CartSearchCriteria | null):AsyncResult {\n const request = createSearchInput(context.queryResultSettings, cartSearchCriteria);\n return executeAction(request, context);\n } \n \n export function createCheckoutInput(id: string, receiptEmail?: string | null, tokenizedPaymentCard?: TokenizedPaymentCard | null, receiptNumberSequence?: string | null, cartTenderLines?: CartTenderLine[] | null, cartVersion?: number | null, checkoutLocation?: number | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('Checkout', true, \n 'SalesOrderClass'\n , 'false', {bypassCache: 'get', returnEntity: 'SalesOrder'}, {receiptEmail: receiptEmail, tokenizedPaymentCard: tokenizedPaymentCard, receiptNumberSequence: receiptNumberSequence, cartTenderLines: cartTenderLines, cartVersion: cartVersion, checkoutLocation: checkoutLocation });\n } \n \n export function checkoutAsync(context: IContext, id: string, receiptEmail?: string | null, tokenizedPaymentCard?: TokenizedPaymentCard | null, receiptNumberSequence?: string | null, cartTenderLines?: CartTenderLine[] | null, cartVersion?: number | null, checkoutLocation?: number | null):AsyncResult {\n const request = createCheckoutInput(id, receiptEmail, tokenizedPaymentCard, receiptNumberSequence, cartTenderLines, cartVersion, checkoutLocation);\n return executeAction(request, context);\n } \n \n export function createGetMaxLoyaltyPointsToRedeemForTransactionBalanceInput(id: string, loyaltyCardId?: string | null, currencyCode?: string | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('GetMaxLoyaltyPointsToRedeemForTransactionBalance', true, \n 'LoyaltyPointRedemptionEstimateClass'\n , 'false', {bypassCache: 'none', returnEntity: 'LoyaltyPointRedemptionEstimate'}, {loyaltyCardId: loyaltyCardId, currencyCode: currencyCode });\n } \n \n export function getMaxLoyaltyPointsToRedeemForTransactionBalanceAsync(context: IContext, id: string, loyaltyCardId?: string | null, currencyCode?: string | null):AsyncResult {\n const request = createGetMaxLoyaltyPointsToRedeemForTransactionBalanceInput(id, loyaltyCardId, currencyCode);\n return executeAction(request, context);\n } \n \n export function createGetPaymentsHistoryInput(queryResultSettings: IQueryResultSettings, id: string, ): IDataServiceRequest { \n const query = cartsQuery(id).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetPaymentsHistory', true, \n 'TenderLineClass'\n , 'true', {bypassCache: 'none', returnEntity: 'TenderLine'}, { });\n } \n \n export function getPaymentsHistoryAsync(context: IContext, id: string):AsyncResult {\n const request = createGetPaymentsHistoryInput(context.queryResultSettings, id);\n return executeAction(request, context);\n } \n \n export function createGetLineDeliveryOptionsByChannelIdInput(queryResultSettings: IQueryResultSettings, id: string, lineShippingAddresses: LineShippingAddress[] | null, channelId: number, filterOption?: number | null): IDataServiceRequest { \n const query = cartsQuery(id).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetLineDeliveryOptionsByChannelId', true, \n 'SalesLineDeliveryOptionClass'\n , 'true', {bypassCache: 'none', returnEntity: 'SalesLineDeliveryOption'}, {lineShippingAddresses: lineShippingAddresses, channelId: channelId, filterOption: filterOption });\n } \n \n export function getLineDeliveryOptionsByChannelIdAsync(context: IContext, id: string, lineShippingAddresses: LineShippingAddress[] | null, channelId: number, filterOption?: number | null):AsyncResult {\n const request = createGetLineDeliveryOptionsByChannelIdInput(context.queryResultSettings, id, lineShippingAddresses, channelId, filterOption);\n return executeAction(request, context);\n } \n \n export function createGetLineDeliveryOptionsInput(queryResultSettings: IQueryResultSettings, id: string, lineShippingAddresses?: LineShippingAddress[] | null, filterOption?: number | null): IDataServiceRequest { \n const query = cartsQuery(id).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetLineDeliveryOptions', true, \n 'SalesLineDeliveryOptionClass'\n , 'true', {bypassCache: 'none', returnEntity: 'SalesLineDeliveryOption'}, {lineShippingAddresses: lineShippingAddresses, filterOption: filterOption });\n } \n \n export function getLineDeliveryOptionsAsync(context: IContext, id: string, lineShippingAddresses?: LineShippingAddress[] | null, filterOption?: number | null):AsyncResult {\n const request = createGetLineDeliveryOptionsInput(context.queryResultSettings, id, lineShippingAddresses, filterOption);\n return executeAction(request, context);\n } \n \n export function createGetDeliveryPreferencesInput(id: string, ): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('GetDeliveryPreferences', true, \n 'CartDeliveryPreferencesClass'\n , 'false', {bypassCache: 'none', returnEntity: 'CartDeliveryPreferences'}, { });\n } \n \n export function getDeliveryPreferencesAsync(context: IContext, id: string):AsyncResult {\n const request = createGetDeliveryPreferencesInput(id);\n return executeAction(request, context);\n } \n \n export function createGetDeliveryOptionsInput(queryResultSettings: IQueryResultSettings, id: string, shippingAddress?: Address | null, cartLineIds?: string[] | null, filterOption?: number | null, ignoreLinesWithDeliveryMode?: boolean | null): IDataServiceRequest { \n const query = cartsQuery(id).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetDeliveryOptions', true, \n 'DeliveryOptionClass'\n , 'true', {bypassCache: 'none', returnEntity: 'DeliveryOption'}, {shippingAddress: shippingAddress, cartLineIds: cartLineIds, filterOption: filterOption, ignoreLinesWithDeliveryMode: ignoreLinesWithDeliveryMode });\n } \n \n export function getDeliveryOptionsAsync(context: IContext, id: string, shippingAddress?: Address | null, cartLineIds?: string[] | null, filterOption?: number | null, ignoreLinesWithDeliveryMode?: boolean | null):AsyncResult {\n const request = createGetDeliveryOptionsInput(context.queryResultSettings, id, shippingAddress, cartLineIds, filterOption, ignoreLinesWithDeliveryMode);\n return executeAction(request, context);\n } \n \n export function createUpdateLineDeliverySpecificationsInput(id: string, lineDeliverySpecifications?: LineDeliverySpecification[] | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('UpdateLineDeliverySpecifications', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {lineDeliverySpecifications: lineDeliverySpecifications });\n } \n \n export function updateLineDeliverySpecificationsAsync(context: IContext, id: string, lineDeliverySpecifications?: LineDeliverySpecification[] | null):AsyncResult {\n const request = createUpdateLineDeliverySpecificationsInput(id, lineDeliverySpecifications);\n return executeAction(request, context);\n } \n \n export function createUpdateDeliverySpecificationInput(id: string, deliverySpecification?: DeliverySpecification | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('UpdateDeliverySpecification', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {deliverySpecification: deliverySpecification });\n } \n \n export function updateDeliverySpecificationAsync(context: IContext, id: string, deliverySpecification?: DeliverySpecification | null):AsyncResult {\n const request = createUpdateDeliverySpecificationInput(id, deliverySpecification);\n return executeAction(request, context);\n } \n \n export function createAddChargeInput(id: string, moduleTypeValue: number, chargeCode: string | null, amount: number): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('AddCharge', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {moduleTypeValue: moduleTypeValue, chargeCode: chargeCode, amount: amount });\n } \n \n export function addChargeAsync(context: IContext, id: string, moduleTypeValue: number, chargeCode: string | null, amount: number):AsyncResult {\n const request = createAddChargeInput(id, moduleTypeValue, chargeCode, amount);\n return executeAction(request, context);\n } \n \n export function createOverrideChargeInput(id: string, chargeLineId: string | null, amount: number, reasonCodeLines?: ReasonCodeLine[] | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('OverrideCharge', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {chargeLineId: chargeLineId, amount: amount, reasonCodeLines: reasonCodeLines });\n } \n \n export function overrideChargeAsync(context: IContext, id: string, chargeLineId: string | null, amount: number, reasonCodeLines?: ReasonCodeLine[] | null):AsyncResult {\n const request = createOverrideChargeInput(id, chargeLineId, amount, reasonCodeLines);\n return executeAction(request, context);\n } \n \n export function createAddCartLineChargeInput(id: string, cartLineId: string | null, moduleTypeValue: number, chargeCode: string | null, amount: number): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('AddCartLineCharge', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {cartLineId: cartLineId, moduleTypeValue: moduleTypeValue, chargeCode: chargeCode, amount: amount });\n } \n \n export function addCartLineChargeAsync(context: IContext, id: string, cartLineId: string | null, moduleTypeValue: number, chargeCode: string | null, amount: number):AsyncResult {\n const request = createAddCartLineChargeInput(id, cartLineId, moduleTypeValue, chargeCode, amount);\n return executeAction(request, context);\n } \n \n export function createOverrideCartLineChargeInput(id: string, cartLineId: string | null, chargeLineId: string | null, amount: number, reasonCodeLines?: ReasonCodeLine[] | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('OverrideCartLineCharge', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {cartLineId: cartLineId, chargeLineId: chargeLineId, amount: amount, reasonCodeLines: reasonCodeLines });\n } \n \n export function overrideCartLineChargeAsync(context: IContext, id: string, cartLineId: string | null, chargeLineId: string | null, amount: number, reasonCodeLines?: ReasonCodeLine[] | null):AsyncResult {\n const request = createOverrideCartLineChargeInput(id, cartLineId, chargeLineId, amount, reasonCodeLines);\n return executeAction(request, context);\n } \n \n export function createVoidInput(id: string, reasonCodeLines?: ReasonCodeLine[] | null, cartVersion?: number | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('Void', true, \n 'SalesOrderClass'\n , 'false', {bypassCache: 'get', returnEntity: 'SalesOrder'}, {reasonCodeLines: reasonCodeLines, cartVersion: cartVersion });\n } \n \n export function voidAsync(context: IContext, id: string, reasonCodeLines?: ReasonCodeLine[] | null, cartVersion?: number | null):AsyncResult {\n const request = createVoidInput(id, reasonCodeLines, cartVersion);\n return executeAction(request, context);\n } \n \n export function createAddCartLinesInput(id: string, cartLines?: CartLine[] | null, cartVersion?: number | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('AddCartLines', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {cartLines: cartLines, cartVersion: cartVersion });\n } \n \n export function addCartLinesAsync(context: IContext, id: string, cartLines?: CartLine[] | null, cartVersion?: number | null):AsyncResult {\n const request = createAddCartLinesInput(id, cartLines, cartVersion);\n return executeAction(request, context);\n } \n \n export function createAddReturnCartLinesInput(id: string, returnCartLines: ReturnCartLine[] | null, returnTransactionSearchLocation: number, cartVersion?: number | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('AddReturnCartLines', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {returnCartLines: returnCartLines, returnTransactionSearchLocation: returnTransactionSearchLocation, cartVersion: cartVersion });\n } \n \n export function addReturnCartLinesAsync(context: IContext, id: string, returnCartLines: ReturnCartLine[] | null, returnTransactionSearchLocation: number, cartVersion?: number | null):AsyncResult {\n const request = createAddReturnCartLinesInput(id, returnCartLines, returnTransactionSearchLocation, cartVersion);\n return executeAction(request, context);\n } \n \n export function createUpdateCartLinesInput(id: string, cartLines?: CartLine[] | null, cartVersion?: number | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('UpdateCartLines', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {cartLines: cartLines, cartVersion: cartVersion });\n } \n \n export function updateCartLinesAsync(context: IContext, id: string, cartLines?: CartLine[] | null, cartVersion?: number | null):AsyncResult {\n const request = createUpdateCartLinesInput(id, cartLines, cartVersion);\n return executeAction(request, context);\n } \n \n export function createVoidCartLinesInput(id: string, cartLines?: CartLine[] | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('VoidCartLines', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {cartLines: cartLines });\n } \n \n export function voidCartLinesAsync(context: IContext, id: string, cartLines?: CartLine[] | null):AsyncResult {\n const request = createVoidCartLinesInput(id, cartLines);\n return executeAction(request, context);\n } \n \n export function createRemoveCartLinesInput(id: string, cartLineIds?: string[] | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('RemoveCartLines', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {cartLineIds: cartLineIds });\n } \n \n export function removeCartLinesAsync(context: IContext, id: string, cartLineIds?: string[] | null):AsyncResult {\n const request = createRemoveCartLinesInput(id, cartLineIds);\n return executeAction(request, context);\n } \n \n export function createAddTenderLineInput(id: string, cartTenderLine?: CartTenderLine | null, cartVersion?: number | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('AddTenderLine', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {cartTenderLine: cartTenderLine, cartVersion: cartVersion });\n } \n \n export function addTenderLineAsync(context: IContext, id: string, cartTenderLine?: CartTenderLine | null, cartVersion?: number | null):AsyncResult {\n const request = createAddTenderLineInput(id, cartTenderLine, cartVersion);\n return executeAction(request, context);\n } \n \n export function createCalculateTenderDiscountInput(id: string, tenderLine?: TenderLine | null, cartVersion?: number | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('CalculateTenderDiscount', true, \n 'TenderDiscountLineClass'\n , 'false', {bypassCache: 'get', returnEntity: 'TenderDiscountLine'}, {tenderLine: tenderLine, cartVersion: cartVersion });\n } \n \n export function calculateTenderDiscountAsync(context: IContext, id: string, tenderLine?: TenderLine | null, cartVersion?: number | null):AsyncResult {\n const request = createCalculateTenderDiscountInput(id, tenderLine, cartVersion);\n return executeAction(request, context);\n } \n \n export function createAddPreprocessedTenderLineInput(id: string, preprocessedTenderLine?: TenderLine | null, cartVersion?: number | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('AddPreprocessedTenderLine', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {preprocessedTenderLine: preprocessedTenderLine, cartVersion: cartVersion });\n } \n \n export function addPreprocessedTenderLineAsync(context: IContext, id: string, preprocessedTenderLine?: TenderLine | null, cartVersion?: number | null):AsyncResult {\n const request = createAddPreprocessedTenderLineInput(id, preprocessedTenderLine, cartVersion);\n return executeAction(request, context);\n } \n \n export function createValidateTenderLineForAddInput(id: string, tenderLine?: TenderLine | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('ValidateTenderLineForAdd', true, '', '', {bypassCache: 'get', returnEntity: ''}, {tenderLine: tenderLine });\n } \n \n export function validateTenderLineForAddAsync(context: IContext, id: string, tenderLine?: TenderLine | null):AsyncResult {\n const request = createValidateTenderLineForAddInput(id, tenderLine);\n return executeAction(request, context);\n } \n \n export function createUpdateTenderLineSignatureInput(id: string, tenderLineId?: string | null, signatureData?: string | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('UpdateTenderLineSignature', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {tenderLineId: tenderLineId, signatureData: signatureData });\n } \n \n export function updateTenderLineSignatureAsync(context: IContext, id: string, tenderLineId?: string | null, signatureData?: string | null):AsyncResult {\n const request = createUpdateTenderLineSignatureInput(id, tenderLineId, signatureData);\n return executeAction(request, context);\n } \n \n export function createGetDeclinedOrVoidedCardReceiptsInput(queryResultSettings: IQueryResultSettings, id: string, preprocessedTenderLine?: TenderLine | null, receiptRetrievalCriteria?: ReceiptRetrievalCriteria | null): IDataServiceRequest { \n const query = cartsQuery(id).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetDeclinedOrVoidedCardReceipts', true, \n 'ReceiptClass'\n , 'true', {bypassCache: 'none', returnEntity: 'Receipt'}, {preprocessedTenderLine: preprocessedTenderLine, receiptRetrievalCriteria: receiptRetrievalCriteria });\n } \n \n export function getDeclinedOrVoidedCardReceiptsAsync(context: IContext, id: string, preprocessedTenderLine?: TenderLine | null, receiptRetrievalCriteria?: ReceiptRetrievalCriteria | null):AsyncResult {\n const request = createGetDeclinedOrVoidedCardReceiptsInput(context.queryResultSettings, id, preprocessedTenderLine, receiptRetrievalCriteria);\n return executeAction(request, context);\n } \n \n export function createCopyInput(id: string, targetCartType: number): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('Copy', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {targetCartType: targetCartType });\n } \n \n export function copyAsync(context: IContext, id: string, targetCartType: number):AsyncResult {\n const request = createCopyInput(id, targetCartType);\n return executeAction(request, context);\n } \n \n export function createAddInvoicedSalesLinesToCartInput(transactionId: string | null, invoicedSalesLinesIds: number[]): IDataServiceRequest { \n const query = cartsQuery();\n return query.createDataServiceRequestForOperation('AddInvoicedSalesLinesToCart', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {transactionId: transactionId, invoicedSalesLinesIds: invoicedSalesLinesIds });\n } \n \n export function addInvoicedSalesLinesToCartAsync(context: IContext, transactionId: string | null, invoicedSalesLinesIds: number[]):AsyncResult {\n const request = createAddInvoicedSalesLinesToCartInput(transactionId, invoicedSalesLinesIds);\n return executeAction(request, context);\n } \n \n export function createRecallInvoicedSalesLinesInput(id: string, recallInvoicedSalesLineLookups?: RecallInvoicedSalesLineLookup[] | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('RecallInvoicedSalesLines', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {recallInvoicedSalesLineLookups: recallInvoicedSalesLineLookups });\n } \n \n export function recallInvoicedSalesLinesAsync(context: IContext, id: string, recallInvoicedSalesLineLookups?: RecallInvoicedSalesLineLookup[] | null):AsyncResult {\n const request = createRecallInvoicedSalesLinesInput(id, recallInvoicedSalesLineLookups);\n return executeAction(request, context);\n } \n \n export function createVoidTenderLineInput(id: string, tenderLineId?: string | null, reasonCodeLines?: ReasonCodeLine[] | null, isPreprocessed?: boolean | null, forceVoid?: boolean | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('VoidTenderLine', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {tenderLineId: tenderLineId, reasonCodeLines: reasonCodeLines, isPreprocessed: isPreprocessed, forceVoid: forceVoid });\n } \n \n export function voidTenderLineAsync(context: IContext, id: string, tenderLineId?: string | null, reasonCodeLines?: ReasonCodeLine[] | null, isPreprocessed?: boolean | null, forceVoid?: boolean | null):AsyncResult {\n const request = createVoidTenderLineInput(id, tenderLineId, reasonCodeLines, isPreprocessed, forceVoid);\n return executeAction(request, context);\n } \n \n export function createIssueGiftCardInput(id: string, giftCardId: string | null, amount: number, currencyCode?: string | null, lineDescription?: string | null, tenderTypeId?: string | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('IssueGiftCard', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {giftCardId: giftCardId, amount: amount, currencyCode: currencyCode, lineDescription: lineDescription, tenderTypeId: tenderTypeId });\n } \n \n export function issueGiftCardAsync(context: IContext, id: string, giftCardId: string | null, amount: number, currencyCode?: string | null, lineDescription?: string | null, tenderTypeId?: string | null):AsyncResult {\n const request = createIssueGiftCardInput(id, giftCardId, amount, currencyCode, lineDescription, tenderTypeId);\n return executeAction(request, context);\n } \n \n export function createRefillGiftCardInput(id: string, giftCardId: string | null, amount: number, currencyCode?: string | null, lineDescription?: string | null, tenderTypeId?: string | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('RefillGiftCard', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {giftCardId: giftCardId, amount: amount, currencyCode: currencyCode, lineDescription: lineDescription, tenderTypeId: tenderTypeId });\n } \n \n export function refillGiftCardAsync(context: IContext, id: string, giftCardId: string | null, amount: number, currencyCode?: string | null, lineDescription?: string | null, tenderTypeId?: string | null):AsyncResult {\n const request = createRefillGiftCardInput(id, giftCardId, amount, currencyCode, lineDescription, tenderTypeId);\n return executeAction(request, context);\n } \n \n export function createCashOutGiftCardInput(id: string, giftCardId: string | null, amount: number, currencyCode?: string | null, lineDescription?: string | null, tenderTypeId?: string | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('CashOutGiftCard', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {giftCardId: giftCardId, amount: amount, currencyCode: currencyCode, lineDescription: lineDescription, tenderTypeId: tenderTypeId });\n } \n \n export function cashOutGiftCardAsync(context: IContext, id: string, giftCardId: string | null, amount: number, currencyCode?: string | null, lineDescription?: string | null, tenderTypeId?: string | null):AsyncResult {\n const request = createCashOutGiftCardInput(id, giftCardId, amount, currencyCode, lineDescription, tenderTypeId);\n return executeAction(request, context);\n } \n \n export function createSuspendInput(id: string, ): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('Suspend', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, { });\n } \n \n export function suspendAsync(context: IContext, id: string):AsyncResult {\n const request = createSuspendInput(id);\n return executeAction(request, context);\n } \n \n export function createSuspendWithJournalInput(id: string, journalCartId?: string | null, receiptNumberSequence?: string | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('SuspendWithJournal', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {journalCartId: journalCartId, receiptNumberSequence: receiptNumberSequence });\n } \n \n export function suspendWithJournalAsync(context: IContext, id: string, journalCartId?: string | null, receiptNumberSequence?: string | null):AsyncResult {\n const request = createSuspendWithJournalInput(id, journalCartId, receiptNumberSequence);\n return executeAction(request, context);\n } \n \n export function createResumeInput(id: string, ): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('Resume', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, { });\n } \n \n export function resumeAsync(context: IContext, id: string):AsyncResult {\n const request = createResumeInput(id);\n return executeAction(request, context);\n } \n \n export function createResumeFromReceiptIdInput(receiptId?: string | null): IDataServiceRequest { \n const query = cartsQuery();\n return query.createDataServiceRequestForOperation('ResumeFromReceiptId', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {receiptId: receiptId });\n } \n \n export function resumeFromReceiptIdAsync(context: IContext, receiptId?: string | null):AsyncResult {\n const request = createResumeFromReceiptIdInput(receiptId);\n return executeAction(request, context);\n } \n \n export function createRemoveDiscountCodesInput(id: string, discountCodes?: string[] | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('RemoveDiscountCodes', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {discountCodes: discountCodes });\n } \n \n export function removeDiscountCodesAsync(context: IContext, id: string, discountCodes?: string[] | null):AsyncResult {\n const request = createRemoveDiscountCodesInput(id, discountCodes);\n return executeAction(request, context);\n } \n \n export function createGetSuspendedInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest { \n const query = cartsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetSuspended', true, \n 'CartClass'\n , 'true', {bypassCache: 'none', returnEntity: 'Cart'}, { });\n } \n \n export function getSuspendedAsync(context: IContext, ):AsyncResult {\n const request = createGetSuspendedInput(context.queryResultSettings, );\n return executeAction(request, context);\n } \n \n export function createOverrideCartLinePriceInput(id: string, cartLineId: string | null, price: number): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('OverrideCartLinePrice', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {cartLineId: cartLineId, price: price });\n } \n \n export function overrideCartLinePriceAsync(context: IContext, id: string, cartLineId: string | null, price: number):AsyncResult {\n const request = createOverrideCartLinePriceInput(id, cartLineId, price);\n return executeAction(request, context);\n } \n \n export function createGetCardPaymentAcceptPointInput(id: string, cardPaymentAcceptSettings?: CardPaymentAcceptSettings | null, extensionProperties?: CommerceProperty[] | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('GetCardPaymentAcceptPoint', true, \n 'CardPaymentAcceptPointClass'\n , 'false', {bypassCache: 'none', returnEntity: 'CardPaymentAcceptPoint'}, {cardPaymentAcceptSettings: cardPaymentAcceptSettings, extensionProperties: extensionProperties });\n } \n \n export function getCardPaymentAcceptPointAsync(context: IContext, id: string, cardPaymentAcceptSettings?: CardPaymentAcceptSettings | null, extensionProperties?: CommerceProperty[] | null):AsyncResult {\n const request = createGetCardPaymentAcceptPointInput(id, cardPaymentAcceptSettings, extensionProperties);\n return executeAction(request, context);\n } \n \n export function createRetrieveCardPaymentAcceptResultInput(resultAccessCode?: string | null, extensionProperties?: CommerceProperty[] | null, cartId?: string | null, settings?: RetrievePaymentResultSettings | null): IDataServiceRequest { \n const query = cartsQuery();\n return query.createDataServiceRequestForOperation('RetrieveCardPaymentAcceptResult', true, \n 'CardPaymentAcceptResultClass'\n , 'false', {bypassCache: 'get', returnEntity: 'CardPaymentAcceptResult'}, {resultAccessCode: resultAccessCode, extensionProperties: extensionProperties, cartId: cartId, settings: settings });\n } \n \n export function retrieveCardPaymentAcceptResultAsync(context: IContext, resultAccessCode?: string | null, extensionProperties?: CommerceProperty[] | null, cartId?: string | null, settings?: RetrievePaymentResultSettings | null):AsyncResult {\n const request = createRetrieveCardPaymentAcceptResultInput(resultAccessCode, extensionProperties, cartId, settings);\n return executeAction(request, context);\n } \n \n export function createRecallOrderInput(transactionId?: string | null, salesId?: string | null, recallOrderSearchCriteria?: RecallOrderSearchCriteria | null): IDataServiceRequest { \n const query = cartsQuery();\n return query.createDataServiceRequestForOperation('RecallOrder', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {transactionId: transactionId, salesId: salesId, recallOrderSearchCriteria: recallOrderSearchCriteria });\n } \n \n export function recallOrderAsync(context: IContext, transactionId?: string | null, salesId?: string | null, recallOrderSearchCriteria?: RecallOrderSearchCriteria | null):AsyncResult {\n const request = createRecallOrderInput(transactionId, salesId, recallOrderSearchCriteria);\n return executeAction(request, context);\n } \n \n export function createRecallQuoteInput(transactionId?: string | null, quoteId?: string | null): IDataServiceRequest { \n const query = cartsQuery();\n return query.createDataServiceRequestForOperation('RecallQuote', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {transactionId: transactionId, quoteId: quoteId });\n } \n \n export function recallQuoteAsync(context: IContext, transactionId?: string | null, quoteId?: string | null):AsyncResult {\n const request = createRecallQuoteInput(transactionId, quoteId);\n return executeAction(request, context);\n } \n \n export function createRecalculateOrderInput(id: string, ): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('RecalculateOrder', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, { });\n } \n \n export function recalculateOrderAsync(context: IContext, id: string):AsyncResult {\n const request = createRecalculateOrderInput(id);\n return executeAction(request, context);\n } \n \n export function createResetAllChargesInput(id: string, ): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('ResetAllCharges', false, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, { });\n } \n \n export function resetAllChargesAsync(context: IContext, id: string):AsyncResult {\n const request = createResetAllChargesInput(id);\n return executeAction(request, context);\n } \n \n export function createGetPromotionsInput(id: string, ): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('GetPromotions', true, \n 'CartPromotionsClass'\n , 'false', {bypassCache: 'none', returnEntity: 'CartPromotions'}, { });\n } \n \n export function getPromotionsAsync(context: IContext, id: string):AsyncResult {\n const request = createGetPromotionsInput(id);\n return executeAction(request, context);\n } \n \n export function createGetAvailablePromotionsInput(queryResultSettings: IQueryResultSettings, id: string, cartLineIds?: string[] | null): IDataServiceRequest { \n const query = cartsQuery(id).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetAvailablePromotions', true, \n 'CartPromotionLineClass'\n , 'true', {bypassCache: 'none', returnEntity: 'CartPromotionLine'}, {cartLineIds: cartLineIds });\n } \n \n export function getAvailablePromotionsAsync(context: IContext, id: string, cartLineIds?: string[] | null):AsyncResult {\n const request = createGetAvailablePromotionsInput(context.queryResultSettings, id, cartLineIds);\n return executeAction(request, context);\n } \n \n export function createRecallSalesInvoiceInput(transactionId?: string | null, invoiceId?: string | null): IDataServiceRequest { \n const query = cartsQuery();\n return query.createDataServiceRequestForOperation('RecallSalesInvoice', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {transactionId: transactionId, invoiceId: invoiceId });\n } \n \n export function recallSalesInvoiceAsync(context: IContext, transactionId?: string | null, invoiceId?: string | null):AsyncResult {\n const request = createRecallSalesInvoiceInput(transactionId, invoiceId);\n return executeAction(request, context);\n } \n \n export function createAddOrderInvoiceInput(id: string, invoiceId?: string | null, lineDescription?: string | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('AddOrderInvoice', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {invoiceId: invoiceId, lineDescription: lineDescription });\n } \n \n export function addOrderInvoiceAsync(context: IContext, id: string, invoiceId?: string | null, lineDescription?: string | null):AsyncResult {\n const request = createAddOrderInvoiceInput(id, invoiceId, lineDescription);\n return executeAction(request, context);\n } \n \n export function createAddInvoicesInput(id: string, invoiceIds?: string[] | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('AddInvoices', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {invoiceIds: invoiceIds });\n } \n \n export function addInvoicesAsync(context: IContext, id: string, invoiceIds?: string[] | null):AsyncResult {\n const request = createAddInvoicesInput(id, invoiceIds);\n return executeAction(request, context);\n } \n \n export function createUpdateCommissionSalesGroupInput(transactionId: string | null, cartLineId: string | null, commissionSalesGroup: string | null, isUserInitiated: boolean): IDataServiceRequest { \n const query = cartsQuery();\n return query.createDataServiceRequestForOperation('UpdateCommissionSalesGroup', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {transactionId: transactionId, cartLineId: cartLineId, commissionSalesGroup: commissionSalesGroup, isUserInitiated: isUserInitiated });\n } \n \n export function updateCommissionSalesGroupAsync(context: IContext, transactionId: string | null, cartLineId: string | null, commissionSalesGroup: string | null, isUserInitiated: boolean):AsyncResult {\n const request = createUpdateCommissionSalesGroupInput(transactionId, cartLineId, commissionSalesGroup, isUserInitiated);\n return executeAction(request, context);\n } \n \n export function createAddCouponsInput(id: string, couponCodes?: string[] | null, isLegacyDiscountCode?: boolean | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('AddCoupons', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {couponCodes: couponCodes, isLegacyDiscountCode: isLegacyDiscountCode });\n } \n \n export function addCouponsAsync(context: IContext, id: string, couponCodes?: string[] | null, isLegacyDiscountCode?: boolean | null):AsyncResult {\n const request = createAddCouponsInput(id, couponCodes, isLegacyDiscountCode);\n return executeAction(request, context);\n } \n \n export function createRemoveCouponsInput(id: string, couponCodes?: string[] | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('RemoveCoupons', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {couponCodes: couponCodes });\n } \n \n export function removeCouponsAsync(context: IContext, id: string, couponCodes?: string[] | null):AsyncResult {\n const request = createRemoveCouponsInput(id, couponCodes);\n return executeAction(request, context);\n } \n \n export function createGetCartLineUserAlertsForAddInput(queryResultSettings: IQueryResultSettings, id: string, cartLines?: CartLine[] | null): IDataServiceRequest { \n const query = cartsQuery(id).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCartLineUserAlertsForAdd', true, \n 'CartLineUserAlertsClass'\n , 'true', {bypassCache: 'none', returnEntity: 'CartLineUserAlerts'}, {cartLines: cartLines });\n } \n \n export function getCartLineUserAlertsForAddAsync(context: IContext, id: string, cartLines?: CartLine[] | null):AsyncResult {\n const request = createGetCartLineUserAlertsForAddInput(context.queryResultSettings, id, cartLines);\n return executeAction(request, context);\n } \n \n export function createGetCartLineUserAlertsInput(queryResultSettings: IQueryResultSettings, id: string, cartLineIds?: string[] | null): IDataServiceRequest { \n const query = cartsQuery(id).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCartLineUserAlerts', true, \n 'CartLineUserAlertsClass'\n , 'true', {bypassCache: 'none', returnEntity: 'CartLineUserAlerts'}, {cartLineIds: cartLineIds });\n } \n \n export function getCartLineUserAlertsAsync(context: IContext, id: string, cartLineIds?: string[] | null):AsyncResult {\n const request = createGetCartLineUserAlertsInput(context.queryResultSettings, id, cartLineIds);\n return executeAction(request, context);\n } \n \n export function createGetChargeCodesInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest { \n const query = cartsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetChargeCodes', false, \n 'ChargeCodeClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ChargeCode'}, { });\n } \n \n export function getChargeCodesAsync(context: IContext, ):AsyncResult {\n const request = createGetChargeCodesInput(context.queryResultSettings, );\n return executeAction(request, context);\n } \n \n export function createGetReceiptTypesInput(queryResultSettings: IQueryResultSettings, id: string, ): IDataServiceRequest { \n const query = cartsQuery(id).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetReceiptTypes', false, '', 'true', {bypassCache: 'none', returnEntity: ''}, { });\n } \n \n export function getReceiptTypesAsync(context: IContext, id: string):AsyncResult {\n const request = createGetReceiptTypesInput(context.queryResultSettings, id);\n return executeAction(request, context);\n } \n \n export function createSetInvoiceLinePriceInput(id: string, cartLineId: string | null, price: number, cartVersion?: number | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('SetInvoiceLinePrice', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {cartLineId: cartLineId, price: price, cartVersion: cartVersion });\n } \n \n export function setInvoiceLinePriceAsync(context: IContext, id: string, cartLineId: string | null, price: number, cartVersion?: number | null):AsyncResult {\n const request = createSetInvoiceLinePriceInput(id, cartLineId, price, cartVersion);\n return executeAction(request, context);\n } \n \n export function createAddDiscountCodeInput(id: string, discountCode?: string | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('AddDiscountCode', true, \n 'CartClass'\n , 'false', {bypassCache: 'get', returnEntity: 'Cart'}, {discountCode: discountCode });\n } \n \n export function addDiscountCodeAsync(context: IContext, id: string, discountCode?: string | null):AsyncResult {\n const request = createAddDiscountCodeInput(id, discountCode);\n return executeAction(request, context);\n } \n \n export function createGetReturnOptionsInput(queryResultSettings: IQueryResultSettings, id: string, ): IDataServiceRequest { \n const query = cartsQuery(id).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetReturnOptions', false, \n 'TenderTypeAmountClass'\n , 'true', {bypassCache: 'none', returnEntity: 'TenderTypeAmount'}, { });\n } \n \n export function getReturnOptionsAsync(context: IContext, id: string):AsyncResult {\n const request = createGetReturnOptionsInput(context.queryResultSettings, id);\n return executeAction(request, context);\n } \n \n export function createGetConfigurationInput(): IDataServiceRequest { \n const query = cartsQuery();\n return query.createDataServiceRequestForOperation('GetConfiguration', false, \n 'CartConfigurationClass'\n , 'false', {bypassCache: 'none', returnEntity: 'CartConfiguration'}, { });\n } \n \n export function getConfigurationAsync(context: IContext, ):AsyncResult {\n const request = createGetConfigurationInput();\n return executeAction(request, context);\n } \n \n export function createValidateForCheckoutInput(id: string, cartVersion?: number | null): IDataServiceRequest { \n const query = cartsQuery(id);\n return query.createDataServiceRequestForOperation('ValidateForCheckout', false, \n 'CartLineValidationResultsClass'\n , 'false', {bypassCache: 'get', returnEntity: 'CartLineValidationResults'}, {cartVersion: cartVersion });\n } \n \n export function validateForCheckoutAsync(context: IContext, id: string, cartVersion?: number | null):AsyncResult {\n const request = createValidateForCheckoutInput(id, cartVersion);\n return executeAction(request, context);\n } \n \n export function createGetTenderSuggestionsInput(queryResultSettings: IQueryResultSettings, id: string, tenderTypeId?: string | null, currencyCode?: string | null): IDataServiceRequest { \n const query = cartsQuery(id).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetTenderSuggestions', false, \n 'TenderLineClass'\n , 'true', {bypassCache: 'none', returnEntity: 'TenderLine'}, {tenderTypeId: tenderTypeId, currencyCode: currencyCode });\n } \n \n export function getTenderSuggestionsAsync(context: IContext, id: string, tenderTypeId?: string | null, currencyCode?: string | null):AsyncResult {\n const request = createGetTenderSuggestionsInput(context.queryResultSettings, id, tenderTypeId, currencyCode);\n return executeAction(request, context);\n } \n \n ","\n // \n\n import { AsyncResult } from '../async-result';\n import { DataServiceQuery } from '../DataServiceQuery';\n import { ProductCatalog } from '../Entities/CommerceTypes.g';\n import { IContext, IDataServiceRequest, IQueryResultSettings, NullResult } from '../Interfaces';\n import { executeAction } from '../retail-action';\n\n \n \n function catalogsQuery(recordId?: number): DataServiceQuery {\n var key = (recordId) ? { RecordId: recordId } : null;\n return new DataServiceQuery(\"Catalogs\", \"ProductCatalog\", \"ProductCatalogClass\", key);\n }\n \n export function createCreateInput(entity: ProductCatalog): IDataServiceRequest {\n return catalogsQuery().create(entity);\n }\n\n export function createProductCatalogAsync(context: IContext, entity: ProductCatalog): AsyncResult {\n const request = createCreateInput(entity);\n return executeAction(request, context);\n }\n\n export function createUpdateInput(entity: ProductCatalog): IDataServiceRequest {\n return catalogsQuery(entity.RecordId).update(entity);\n }\n\n export function updateAsync(context: IContext, entity: ProductCatalog): AsyncResult {\n const request = createUpdateInput(entity);\n return executeAction(request, context);\n }\n\n export function createDeleteAsync(entity: ProductCatalog): IDataServiceRequest {\n return catalogsQuery(entity.RecordId).delete();\n }\n\n export function deleteAsync(context: IContext, entity: ProductCatalog): AsyncResult {\n const request = createDeleteAsync(entity);\n return executeAction(request, context);\n }\n\n export function createReadAsync(recordId: number): IDataServiceRequest {\n return catalogsQuery(recordId).read();\n }\n\n export function readAsync(context: IContext, recordId: number): AsyncResult {\n const request = createReadAsync(recordId);\n return executeAction(request, context);\n }\n\n export function createReadAllAsync(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n return catalogsQuery().resultSettings(queryResultSettings).read();\n }\n\n export function readAllAsync(context: IContext): AsyncResult {\n const request = createReadAllAsync(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetCatalogsInput(queryResultSettings: IQueryResultSettings, channelId: number, activeOnly: boolean): IDataServiceRequest { \n const query = catalogsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCatalogs', true, \n 'ProductCatalogClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductCatalog'}, {channelId: channelId, activeOnly: activeOnly });\n } \n \n export function getCatalogsAsync(context: IContext, channelId: number, activeOnly: boolean):AsyncResult {\n const request = createGetCatalogsInput(context.queryResultSettings, channelId, activeOnly);\n return executeAction(request, context);\n } \n \n ","\n // \n\n import { AsyncResult } from '../async-result';\n import { DataServiceQuery } from '../DataServiceQuery';\n import { Category, AttributeCategory } from '../Entities/CommerceTypes.g';\n import { IContext, IDataServiceRequest, IQueryResultSettings, NullResult } from '../Interfaces';\n import { executeAction } from '../retail-action';\n\n \n \n function categoriesQuery(recordId?: number): DataServiceQuery {\n var key = (recordId) ? { RecordId: recordId } : null;\n return new DataServiceQuery(\"Categories\", \"Category\", \"CategoryClass\", key);\n }\n \n export function createCreateInput(entity: Category): IDataServiceRequest {\n return categoriesQuery().create(entity);\n }\n\n export function createCategoryAsync(context: IContext, entity: Category): AsyncResult {\n const request = createCreateInput(entity);\n return executeAction(request, context);\n }\n\n export function createUpdateInput(entity: Category): IDataServiceRequest {\n return categoriesQuery(entity.RecordId).update(entity);\n }\n\n export function updateAsync(context: IContext, entity: Category): AsyncResult {\n const request = createUpdateInput(entity);\n return executeAction(request, context);\n }\n\n export function createDeleteAsync(entity: Category): IDataServiceRequest {\n return categoriesQuery(entity.RecordId).delete();\n }\n\n export function deleteAsync(context: IContext, entity: Category): AsyncResult {\n const request = createDeleteAsync(entity);\n return executeAction(request, context);\n }\n\n export function createReadAsync(recordId: number): IDataServiceRequest {\n return categoriesQuery(recordId).read();\n }\n\n export function readAsync(context: IContext, recordId: number): AsyncResult {\n const request = createReadAsync(recordId);\n return executeAction(request, context);\n }\n\n export function createReadAllAsync(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n return categoriesQuery().resultSettings(queryResultSettings).read();\n }\n\n export function readAllAsync(context: IContext): AsyncResult {\n const request = createReadAllAsync(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetCategoriesInput(queryResultSettings: IQueryResultSettings, channelId: number, catalogId?: number | null): IDataServiceRequest { \n const query = categoriesQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCategories', true, \n 'CategoryClass'\n , 'true', {bypassCache: 'none', returnEntity: 'Category'}, {channelId: channelId, catalogId: catalogId });\n } \n \n export function getCategoriesAsync(context: IContext, channelId: number, catalogId?: number | null):AsyncResult {\n const request = createGetCategoriesInput(context.queryResultSettings, channelId, catalogId);\n return executeAction(request, context);\n } \n \n export function createGetAttributesInput(queryResultSettings: IQueryResultSettings, categoryId: number): IDataServiceRequest { \n const query = categoriesQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetAttributes', false, \n 'AttributeCategoryClass'\n , 'true', {bypassCache: 'none', returnEntity: 'AttributeCategory'}, {categoryId: categoryId });\n } \n \n export function getAttributesAsync(context: IContext, categoryId: number):AsyncResult {\n const request = createGetAttributesInput(context.queryResultSettings, categoryId);\n return executeAction(request, context);\n } \n \n export function createGetCatalogAttributesInput(queryResultSettings: IQueryResultSettings, catalogId: number, categoryIds: number[]): IDataServiceRequest { \n const query = categoriesQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCatalogAttributes', true, \n 'AttributeCategoryClass'\n , 'true', {bypassCache: 'none', returnEntity: 'AttributeCategory'}, {catalogId: catalogId, categoryIds: categoryIds });\n } \n \n export function getCatalogAttributesAsync(context: IContext, catalogId: number, categoryIds: number[]):AsyncResult {\n const request = createGetCatalogAttributesInput(context.queryResultSettings, catalogId, categoryIds);\n return executeAction(request, context);\n } \n \n export function createGetChildrenInput(queryResultSettings: IQueryResultSettings, channelId: number, categoryId: number): IDataServiceRequest { \n const query = categoriesQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetChildren', true, \n 'CategoryClass'\n , 'true', {bypassCache: 'none', returnEntity: 'Category'}, {channelId: channelId, categoryId: categoryId });\n } \n \n export function getChildrenAsync(context: IContext, channelId: number, categoryId: number):AsyncResult {\n const request = createGetChildrenInput(context.queryResultSettings, channelId, categoryId);\n return executeAction(request, context);\n } \n \n ","\n // \n\n import { AsyncResult } from '../async-result';\n import { DataServiceQuery } from '../DataServiceQuery';\n import { CommerceList, CommerceListLine, CommerceListContributor, CommerceListInvitation } from '../Entities/CommerceTypes.g';\n import { IContext, IDataServiceRequest, IQueryResultSettings, NullResult } from '../Interfaces';\n import { executeAction } from '../retail-action';\n\n \n \n function commerceListsQuery(id?: number): DataServiceQuery {\n var key = (id) ? { Id: id } : null;\n return new DataServiceQuery(\"CommerceLists\", \"CommerceList\", \"CommerceListClass\", key);\n }\n \n export function createCreateInput(entity: CommerceList): IDataServiceRequest {\n return commerceListsQuery().create(entity);\n }\n\n export function createCommerceListAsync(context: IContext, entity: CommerceList): AsyncResult {\n const request = createCreateInput(entity);\n return executeAction(request, context);\n }\n\n export function createUpdateInput(entity: CommerceList): IDataServiceRequest {\n return commerceListsQuery(entity.Id).update(entity);\n }\n\n export function updateAsync(context: IContext, entity: CommerceList): AsyncResult {\n const request = createUpdateInput(entity);\n return executeAction(request, context);\n }\n\n export function createDeleteAsync(entity: CommerceList): IDataServiceRequest {\n return commerceListsQuery(entity.Id).delete();\n }\n\n export function deleteAsync(context: IContext, entity: CommerceList): AsyncResult {\n const request = createDeleteAsync(entity);\n return executeAction(request, context);\n }\n\n export function createReadAsync(id: number): IDataServiceRequest {\n return commerceListsQuery(id).read();\n }\n\n export function readAsync(context: IContext, id: number): AsyncResult {\n const request = createReadAsync(id);\n return executeAction(request, context);\n }\n\n export function createReadAllAsync(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n return commerceListsQuery().resultSettings(queryResultSettings).read();\n }\n\n export function readAllAsync(context: IContext): AsyncResult {\n const request = createReadAllAsync(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetByCustomerInput(queryResultSettings: IQueryResultSettings, customerId?: string | null): IDataServiceRequest { \n const query = commerceListsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetByCustomer', true, \n 'CommerceListClass'\n , 'true', {bypassCache: 'none', returnEntity: 'CommerceList'}, {customerId: customerId });\n } \n \n export function getByCustomerAsync(context: IContext, customerId?: string | null):AsyncResult {\n const request = createGetByCustomerInput(context.queryResultSettings, customerId);\n return executeAction(request, context);\n } \n \n export function createAddLinesInput(id: number, commerceListLines?: CommerceListLine[] | null): IDataServiceRequest { \n const query = commerceListsQuery(id);\n return query.createDataServiceRequestForOperation('AddLines', true, \n 'CommerceListClass'\n , 'false', {bypassCache: 'get', returnEntity: 'CommerceList'}, {commerceListLines: commerceListLines });\n } \n \n export function addLinesAsync(context: IContext, id: number, commerceListLines?: CommerceListLine[] | null):AsyncResult {\n const request = createAddLinesInput(id, commerceListLines);\n return executeAction(request, context);\n } \n \n export function createUpdateLinesInput(id: number, commerceListLines?: CommerceListLine[] | null): IDataServiceRequest { \n const query = commerceListsQuery(id);\n return query.createDataServiceRequestForOperation('UpdateLines', true, \n 'CommerceListClass'\n , 'false', {bypassCache: 'get', returnEntity: 'CommerceList'}, {commerceListLines: commerceListLines });\n } \n \n export function updateLinesAsync(context: IContext, id: number, commerceListLines?: CommerceListLine[] | null):AsyncResult {\n const request = createUpdateLinesInput(id, commerceListLines);\n return executeAction(request, context);\n } \n \n export function createRemoveLinesInput(id: number, commerceListLines?: CommerceListLine[] | null): IDataServiceRequest { \n const query = commerceListsQuery(id);\n return query.createDataServiceRequestForOperation('RemoveLines', true, \n 'CommerceListClass'\n , 'false', {bypassCache: 'get', returnEntity: 'CommerceList'}, {commerceListLines: commerceListLines });\n } \n \n export function removeLinesAsync(context: IContext, id: number, commerceListLines?: CommerceListLine[] | null):AsyncResult {\n const request = createRemoveLinesInput(id, commerceListLines);\n return executeAction(request, context);\n } \n \n export function createMoveLinesInput(commerceListLines: CommerceListLine[] | null, destinationId: number): IDataServiceRequest { \n const query = commerceListsQuery();\n return query.createDataServiceRequestForOperation('MoveLines', true, \n 'CommerceListClass'\n , 'false', {bypassCache: 'get', returnEntity: 'CommerceList'}, {commerceListLines: commerceListLines, destinationId: destinationId });\n } \n \n export function moveLinesAsync(context: IContext, commerceListLines: CommerceListLine[] | null, destinationId: number):AsyncResult {\n const request = createMoveLinesInput(commerceListLines, destinationId);\n return executeAction(request, context);\n } \n \n export function createCopyLinesInput(commerceListLines: CommerceListLine[] | null, destinationId: number): IDataServiceRequest { \n const query = commerceListsQuery();\n return query.createDataServiceRequestForOperation('CopyLines', true, \n 'CommerceListClass'\n , 'false', {bypassCache: 'get', returnEntity: 'CommerceList'}, {commerceListLines: commerceListLines, destinationId: destinationId });\n } \n \n export function copyLinesAsync(context: IContext, commerceListLines: CommerceListLine[] | null, destinationId: number):AsyncResult {\n const request = createCopyLinesInput(commerceListLines, destinationId);\n return executeAction(request, context);\n } \n \n export function createAddContributorsInput(id: number, commerceListContributors?: CommerceListContributor[] | null): IDataServiceRequest { \n const query = commerceListsQuery(id);\n return query.createDataServiceRequestForOperation('AddContributors', true, \n 'CommerceListClass'\n , 'false', {bypassCache: 'get', returnEntity: 'CommerceList'}, {commerceListContributors: commerceListContributors });\n } \n \n export function addContributorsAsync(context: IContext, id: number, commerceListContributors?: CommerceListContributor[] | null):AsyncResult {\n const request = createAddContributorsInput(id, commerceListContributors);\n return executeAction(request, context);\n } \n \n export function createRemoveContributorsInput(id: number, commerceListContributors?: CommerceListContributor[] | null): IDataServiceRequest { \n const query = commerceListsQuery(id);\n return query.createDataServiceRequestForOperation('RemoveContributors', true, \n 'CommerceListClass'\n , 'false', {bypassCache: 'get', returnEntity: 'CommerceList'}, {commerceListContributors: commerceListContributors });\n } \n \n export function removeContributorsAsync(context: IContext, id: number, commerceListContributors?: CommerceListContributor[] | null):AsyncResult {\n const request = createRemoveContributorsInput(id, commerceListContributors);\n return executeAction(request, context);\n } \n \n export function createCreateInvitationsInput(id: number, commerceListInvitations?: CommerceListInvitation[] | null): IDataServiceRequest { \n const query = commerceListsQuery(id);\n return query.createDataServiceRequestForOperation('CreateInvitations', true, \n 'CommerceListClass'\n , 'false', {bypassCache: 'get', returnEntity: 'CommerceList'}, {commerceListInvitations: commerceListInvitations });\n } \n \n export function createInvitationsAsync(context: IContext, id: number, commerceListInvitations?: CommerceListInvitation[] | null):AsyncResult {\n const request = createCreateInvitationsInput(id, commerceListInvitations);\n return executeAction(request, context);\n } \n \n export function createAcceptInvitationInput(invitationToken?: string | null, customerId?: string | null): IDataServiceRequest { \n const query = commerceListsQuery();\n return query.createDataServiceRequestForOperation('AcceptInvitation', true, '', '', {bypassCache: 'get', returnEntity: ''}, {invitationToken: invitationToken, customerId: customerId });\n } \n \n export function acceptInvitationAsync(context: IContext, invitationToken?: string | null, customerId?: string | null):AsyncResult {\n const request = createAcceptInvitationInput(invitationToken, customerId);\n return executeAction(request, context);\n } \n \n ","\n // \n\n import { AsyncResult } from '../async-result';\n import { DataServiceQuery } from '../DataServiceQuery';\n import { Customer, CustomerSearchCriteria, GlobalCustomer, CustomerSearchByFieldCriteria, CustomerTimelineItem, CustomerRefiner, SalesOrder, OrderShipments, PurchaseHistory, CustomerSearchField, CustomerTimelineItemTypeMap, CustomerTimelineRefiner, CustomerTitle } from '../Entities/CommerceTypes.g';\n import { IContext, IDataServiceRequest, IQueryResultSettings, NullResult } from '../Interfaces';\n import { executeAction } from '../retail-action';\n\n \n \n function customersQuery(accountNumber?: string): DataServiceQuery {\n var key = (accountNumber !== null && accountNumber !== undefined) ? { AccountNumber: accountNumber } : null;\n return new DataServiceQuery(\"Customers\", \"Customer\", \"CustomerClass\", key);\n }\n \n export function createCreateInput(entity: Customer): IDataServiceRequest {\n return customersQuery().create(entity);\n }\n\n export function createCustomerAsync(context: IContext, entity: Customer): AsyncResult {\n const request = createCreateInput(entity);\n return executeAction(request, context);\n }\n\n export function createUpdateInput(entity: Customer): IDataServiceRequest {\n return customersQuery(entity.AccountNumber).update(entity);\n }\n\n export function updateAsync(context: IContext, entity: Customer): AsyncResult {\n const request = createUpdateInput(entity);\n return executeAction(request, context);\n }\n\n export function createDeleteAsync(entity: Customer): IDataServiceRequest {\n return customersQuery(entity.AccountNumber).delete();\n }\n\n export function deleteAsync(context: IContext, entity: Customer): AsyncResult {\n const request = createDeleteAsync(entity);\n return executeAction(request, context);\n }\n\n export function createReadAsync(accountNumber: string): IDataServiceRequest {\n return customersQuery(accountNumber).read();\n }\n\n export function readAsync(context: IContext, accountNumber: string): AsyncResult {\n const request = createReadAsync(accountNumber);\n return executeAction(request, context);\n }\n\n export function createReadAllAsync(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n return customersQuery().resultSettings(queryResultSettings).read();\n }\n\n export function readAllAsync(context: IContext): AsyncResult {\n const request = createReadAllAsync(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createSearchInput(queryResultSettings: IQueryResultSettings, customerSearchCriteria?: CustomerSearchCriteria | null): IDataServiceRequest { \n const query = customersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('Search', true, \n 'GlobalCustomerClass'\n , 'true', {bypassCache: 'none', returnEntity: 'GlobalCustomer'}, {customerSearchCriteria: customerSearchCriteria });\n } \n \n export function searchAsync(context: IContext, customerSearchCriteria?: CustomerSearchCriteria | null):AsyncResult {\n const request = createSearchInput(context.queryResultSettings, customerSearchCriteria);\n return executeAction(request, context);\n } \n \n export function createSearchByFieldsInput(queryResultSettings: IQueryResultSettings, customerSearchByFieldCriteria?: CustomerSearchByFieldCriteria | null): IDataServiceRequest { \n const query = customersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('SearchByFields', true, \n 'GlobalCustomerClass'\n , 'true', {bypassCache: 'none', returnEntity: 'GlobalCustomer'}, {CustomerSearchByFieldCriteria: customerSearchByFieldCriteria });\n } \n \n export function searchByFieldsAsync(context: IContext, customerSearchByFieldCriteria?: CustomerSearchByFieldCriteria | null):AsyncResult {\n const request = createSearchByFieldsInput(context.queryResultSettings, customerSearchByFieldCriteria);\n return executeAction(request, context);\n } \n \n export function createGetByAccountNumbersInput(queryResultSettings: IQueryResultSettings, accountNumbers: string[] | null, searchLocationValue: number): IDataServiceRequest { \n const query = customersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetByAccountNumbers', true, \n 'CustomerClass'\n , 'true', {bypassCache: 'none', returnEntity: 'Customer'}, {accountNumbers: accountNumbers, searchLocationValue: searchLocationValue });\n } \n \n export function getByAccountNumbersAsync(context: IContext, accountNumbers: string[] | null, searchLocationValue: number):AsyncResult {\n const request = createGetByAccountNumbersInput(context.queryResultSettings, accountNumbers, searchLocationValue);\n return executeAction(request, context);\n } \n \n export function createCreateCustomerTimelineItemInput(customerTimelineItem?: CustomerTimelineItem | null): IDataServiceRequest { \n const query = customersQuery();\n return query.createDataServiceRequestForOperation('CreateCustomerTimelineItem', true, \n 'CustomerTimelineItemClass'\n , 'false', {bypassCache: 'get', returnEntity: 'CustomerTimelineItem'}, {customerTimelineItem: customerTimelineItem });\n } \n \n export function createCustomerTimelineItemAsync(context: IContext, customerTimelineItem?: CustomerTimelineItem | null):AsyncResult {\n const request = createCreateCustomerTimelineItemInput(customerTimelineItem);\n return executeAction(request, context);\n } \n \n export function createUpdateCustomerTimelineItemInput(customerTimelineItem?: CustomerTimelineItem | null): IDataServiceRequest { \n const query = customersQuery();\n return query.createDataServiceRequestForOperation('UpdateCustomerTimelineItem', true, \n 'CustomerTimelineItemClass'\n , 'false', {bypassCache: 'get', returnEntity: 'CustomerTimelineItem'}, {customerTimelineItem: customerTimelineItem });\n } \n \n export function updateCustomerTimelineItemAsync(context: IContext, customerTimelineItem?: CustomerTimelineItem | null):AsyncResult {\n const request = createUpdateCustomerTimelineItemInput(customerTimelineItem);\n return executeAction(request, context);\n } \n \n export function createGetRefinersInput(queryResultSettings: IQueryResultSettings, searchCriteria: CustomerSearchCriteria | null, refinerSourceTypes: number[]): IDataServiceRequest { \n const query = customersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetRefiners', true, \n 'CustomerRefinerClass'\n , 'true', {bypassCache: 'none', returnEntity: 'CustomerRefiner'}, {searchCriteria: searchCriteria, refinerSourceTypes: refinerSourceTypes });\n } \n \n export function getRefinersAsync(context: IContext, searchCriteria: CustomerSearchCriteria | null, refinerSourceTypes: number[]):AsyncResult {\n const request = createGetRefinersInput(context.queryResultSettings, searchCriteria, refinerSourceTypes);\n return executeAction(request, context);\n } \n \n export function createGetOrderHistoryInput(queryResultSettings: IQueryResultSettings, accountNumber: string, ): IDataServiceRequest { \n const query = customersQuery(accountNumber).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetOrderHistory', true, \n 'SalesOrderClass'\n , 'true', {bypassCache: 'none', returnEntity: 'SalesOrder'}, { });\n } \n \n export function getOrderHistoryAsync(context: IContext, accountNumber: string):AsyncResult {\n const request = createGetOrderHistoryInput(context.queryResultSettings, accountNumber);\n return executeAction(request, context);\n } \n \n export function createGetOrderShipmentsHistoryInput(queryResultSettings: IQueryResultSettings, accountNumber: string, nextPageToken?: string | null): IDataServiceRequest { \n const query = customersQuery(accountNumber).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetOrderShipmentsHistory', true, \n 'OrderShipmentsClass'\n , 'true', {bypassCache: 'none', returnEntity: 'OrderShipments'}, {nextPageToken: nextPageToken });\n } \n \n export function getOrderShipmentsHistoryAsync(context: IContext, accountNumber: string, nextPageToken?: string | null):AsyncResult {\n const request = createGetOrderShipmentsHistoryInput(context.queryResultSettings, accountNumber, nextPageToken);\n return executeAction(request, context);\n } \n \n export function createPostNonTransactionalActivityLoyaltyPointsInput(loyaltyCardId: string | null, channelId: number, affiliationId: number, activityTypeId?: string | null): IDataServiceRequest { \n const query = customersQuery();\n return query.createDataServiceRequestForOperation('PostNonTransactionalActivityLoyaltyPoints', true, '', '', {bypassCache: 'get', returnEntity: ''}, {loyaltyCardId: loyaltyCardId, channelId: channelId, affiliationId: affiliationId, activityTypeId: activityTypeId });\n } \n \n export function postNonTransactionalActivityLoyaltyPointsAsync(context: IContext, loyaltyCardId: string | null, channelId: number, affiliationId: number, activityTypeId?: string | null):AsyncResult {\n const request = createPostNonTransactionalActivityLoyaltyPointsInput(loyaltyCardId, channelId, affiliationId, activityTypeId);\n return executeAction(request, context);\n } \n \n export function createGetPurchaseHistoryInput(queryResultSettings: IQueryResultSettings, accountNumber: string, ): IDataServiceRequest { \n const query = customersQuery(accountNumber).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetPurchaseHistory', false, \n 'PurchaseHistoryClass'\n , 'true', {bypassCache: 'none', returnEntity: 'PurchaseHistory'}, { });\n } \n \n export function getPurchaseHistoryAsync(context: IContext, accountNumber: string):AsyncResult {\n const request = createGetPurchaseHistoryInput(context.queryResultSettings, accountNumber);\n return executeAction(request, context);\n } \n \n export function createGetCustomerSearchFieldsInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest { \n const query = customersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCustomerSearchFields', false, \n 'CustomerSearchFieldClass'\n , 'true', {bypassCache: 'none', returnEntity: 'CustomerSearchField'}, { });\n } \n \n export function getCustomerSearchFieldsAsync(context: IContext, ):AsyncResult {\n const request = createGetCustomerSearchFieldsInput(context.queryResultSettings, );\n return executeAction(request, context);\n } \n \n export function createGetCustomerTimelineItemTypesInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest { \n const query = customersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCustomerTimelineItemTypes', false, \n 'CustomerTimelineItemTypeMapClass'\n , 'true', {bypassCache: 'none', returnEntity: 'CustomerTimelineItemTypeMap'}, { });\n } \n \n export function getCustomerTimelineItemTypesAsync(context: IContext, ):AsyncResult {\n const request = createGetCustomerTimelineItemTypesInput(context.queryResultSettings, );\n return executeAction(request, context);\n } \n \n export function createGetCustomerTimelineItemsInput(queryResultSettings: IQueryResultSettings, accountNumber: string, ): IDataServiceRequest { \n const query = customersQuery(accountNumber).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCustomerTimelineItems', false, \n 'CustomerTimelineItemClass'\n , 'true', {bypassCache: 'none', returnEntity: 'CustomerTimelineItem'}, { });\n } \n \n export function getCustomerTimelineItemsAsync(context: IContext, accountNumber: string):AsyncResult {\n const request = createGetCustomerTimelineItemsInput(context.queryResultSettings, accountNumber);\n return executeAction(request, context);\n } \n \n export function createGetCustomerTimelineRefinersInput(queryResultSettings: IQueryResultSettings, accountNumber: string, ): IDataServiceRequest { \n const query = customersQuery(accountNumber).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCustomerTimelineRefiners', false, \n 'CustomerTimelineRefinerClass'\n , 'true', {bypassCache: 'none', returnEntity: 'CustomerTimelineRefiner'}, { });\n } \n \n export function getCustomerTimelineRefinersAsync(context: IContext, accountNumber: string):AsyncResult {\n const request = createGetCustomerTimelineRefinersInput(context.queryResultSettings, accountNumber);\n return executeAction(request, context);\n } \n \n export function createGetTitlesInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest { \n const query = customersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetTitles', false, \n 'CustomerTitleClass'\n , 'true', {bypassCache: 'none', returnEntity: 'CustomerTitle'}, { });\n } \n \n export function getTitlesAsync(context: IContext, ):AsyncResult {\n const request = createGetTitlesInput(context.queryResultSettings, );\n return executeAction(request, context);\n } \n \n ","\n // \n\n import { AsyncResult } from '../async-result';\n import { DataServiceQuery } from '../DataServiceQuery';\n import { OrgUnit, TillLayout, SearchStoreCriteria, SearchArea, OrgUnitLocation, OrgUnitLocationSearchCriteria, ChannelConfiguration, StoreHours, ChannelDeliveryOption, OrgUnitAvailability, ItemUnit, ProductDimensionCombination, OrgUnitAvailabilitySearchCriteria, AffiliationSearchCriteria, Affiliation, TerminalInfo } from '../Entities/CommerceTypes.g';\n import { IContext, IDataServiceRequest, IQueryResultSettings, NullResult } from '../Interfaces';\n import { executeAction } from '../retail-action';\n\n \n \n function orgUnitsQuery(orgUnitNumber?: string): DataServiceQuery {\n var key = (orgUnitNumber) ? { OrgUnitNumber: orgUnitNumber } : null;\n return new DataServiceQuery(\"OrgUnits\", \"OrgUnit\", \"OrgUnitClass\", key);\n }\n \n export function createCreateInput(entity: OrgUnit): IDataServiceRequest {\n return orgUnitsQuery().create(entity);\n }\n\n export function createOrgUnitAsync(context: IContext, entity: OrgUnit): AsyncResult {\n const request = createCreateInput(entity);\n return executeAction(request, context);\n }\n\n export function createUpdateInput(entity: OrgUnit): IDataServiceRequest {\n return orgUnitsQuery(entity.OrgUnitNumber).update(entity);\n }\n\n export function updateAsync(context: IContext, entity: OrgUnit): AsyncResult {\n const request = createUpdateInput(entity);\n return executeAction(request, context);\n }\n\n export function createDeleteAsync(entity: OrgUnit): IDataServiceRequest {\n return orgUnitsQuery(entity.OrgUnitNumber).delete();\n }\n\n export function deleteAsync(context: IContext, entity: OrgUnit): AsyncResult {\n const request = createDeleteAsync(entity);\n return executeAction(request, context);\n }\n\n export function createReadAsync(orgUnitNumber: string): IDataServiceRequest {\n return orgUnitsQuery(orgUnitNumber).read();\n }\n\n export function readAsync(context: IContext, orgUnitNumber: string): AsyncResult {\n const request = createReadAsync(orgUnitNumber);\n return executeAction(request, context);\n }\n\n export function createReadAllAsync(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n return orgUnitsQuery().resultSettings(queryResultSettings).read();\n }\n\n export function readAllAsync(context: IContext): AsyncResult {\n const request = createReadAllAsync(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetTillLayoutInput(height?: number | null, width?: number | null, includeImage?: boolean | null): IDataServiceRequest { \n const query = orgUnitsQuery();\n return query.createDataServiceRequestForOperation('GetTillLayout', true, \n 'TillLayoutClass'\n , 'false', {bypassCache: 'none', returnEntity: 'TillLayout'}, {height: height, width: width, includeImage: includeImage });\n } \n \n export function getTillLayoutAsync(context: IContext, height?: number | null, width?: number | null, includeImage?: boolean | null):AsyncResult {\n const request = createGetTillLayoutInput(height, width, includeImage);\n return executeAction(request, context);\n } \n \n export function createSearchInput(queryResultSettings: IQueryResultSettings, storeSearchCriteria?: SearchStoreCriteria | null): IDataServiceRequest { \n const query = orgUnitsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('Search', true, \n 'OrgUnitClass'\n , 'true', {bypassCache: 'none', returnEntity: 'OrgUnit'}, {storeSearchCriteria: storeSearchCriteria });\n } \n \n export function searchAsync(context: IContext, storeSearchCriteria?: SearchStoreCriteria | null):AsyncResult {\n const request = createSearchInput(context.queryResultSettings, storeSearchCriteria);\n return executeAction(request, context);\n } \n \n export function createGetOrgUnitLocationsByAreaInput(queryResultSettings: IQueryResultSettings, searchArea?: SearchArea | null, deliveryModeTypeFilter?: number | null): IDataServiceRequest { \n const query = orgUnitsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetOrgUnitLocationsByArea', true, \n 'OrgUnitLocationClass'\n , 'true', {bypassCache: 'none', returnEntity: 'OrgUnitLocation'}, {searchArea: searchArea, deliveryModeTypeFilter: deliveryModeTypeFilter });\n } \n \n export function getOrgUnitLocationsByAreaAsync(context: IContext, searchArea?: SearchArea | null, deliveryModeTypeFilter?: number | null):AsyncResult {\n const request = createGetOrgUnitLocationsByAreaInput(context.queryResultSettings, searchArea, deliveryModeTypeFilter);\n return executeAction(request, context);\n } \n \n export function createSearchOrgUnitLocationsInput(queryResultSettings: IQueryResultSettings, orgUnitLocationSearchCriteria?: OrgUnitLocationSearchCriteria | null): IDataServiceRequest { \n const query = orgUnitsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('SearchOrgUnitLocations', true, \n 'OrgUnitLocationClass'\n , 'true', {bypassCache: 'none', returnEntity: 'OrgUnitLocation'}, {orgUnitLocationSearchCriteria: orgUnitLocationSearchCriteria });\n } \n \n export function searchOrgUnitLocationsAsync(context: IContext, orgUnitLocationSearchCriteria?: OrgUnitLocationSearchCriteria | null):AsyncResult {\n const request = createSearchOrgUnitLocationsInput(context.queryResultSettings, orgUnitLocationSearchCriteria);\n return executeAction(request, context);\n } \n \n export function createGetOrgUnitConfigurationInput(): IDataServiceRequest { \n const query = orgUnitsQuery();\n return query.createDataServiceRequestForOperation('GetOrgUnitConfiguration', true, \n 'ChannelConfigurationClass'\n , 'false', {bypassCache: 'none', returnEntity: 'ChannelConfiguration'}, { });\n } \n \n export function getOrgUnitConfigurationAsync(context: IContext, ):AsyncResult {\n const request = createGetOrgUnitConfigurationInput();\n return executeAction(request, context);\n } \n \n export function createGetStoreHoursInput(storeNumber?: string | null): IDataServiceRequest { \n const query = orgUnitsQuery();\n return query.createDataServiceRequestForOperation('GetStoreHours', false, \n 'StoreHoursClass'\n , 'false', {bypassCache: 'none', returnEntity: 'StoreHours'}, {storeNumber: storeNumber });\n } \n \n export function getStoreHoursAsync(context: IContext, storeNumber?: string | null):AsyncResult {\n const request = createGetStoreHoursInput(storeNumber);\n return executeAction(request, context);\n } \n \n export function createGetChannelDeliveryOptionsInput(queryResultSettings: IQueryResultSettings, channelIds: number[], filterOption?: number | null): IDataServiceRequest { \n const query = orgUnitsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetChannelDeliveryOptions', true, \n 'ChannelDeliveryOptionClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ChannelDeliveryOption'}, {channelIds: channelIds, filterOption: filterOption });\n } \n \n export function getChannelDeliveryOptionsAsync(context: IContext, channelIds: number[], filterOption?: number | null):AsyncResult {\n const request = createGetChannelDeliveryOptionsInput(context.queryResultSettings, channelIds, filterOption);\n return executeAction(request, context);\n } \n \n export function createGetAvailableInventoryInput(queryResultSettings: IQueryResultSettings, itemId?: string | null, variantId?: string | null, barcode?: string | null): IDataServiceRequest { \n const query = orgUnitsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetAvailableInventory', true, \n 'OrgUnitAvailabilityClass'\n , 'true', {bypassCache: 'none', returnEntity: 'OrgUnitAvailability'}, {itemId: itemId, variantId: variantId, barcode: barcode });\n } \n \n export function getAvailableInventoryAsync(context: IContext, itemId?: string | null, variantId?: string | null, barcode?: string | null):AsyncResult {\n const request = createGetAvailableInventoryInput(context.queryResultSettings, itemId, variantId, barcode);\n return executeAction(request, context);\n } \n \n export function createGetAvailableInventoryNearbyInput(queryResultSettings: IQueryResultSettings, itemIds?: ItemUnit[] | null, searchArea?: SearchArea | null): IDataServiceRequest { \n const query = orgUnitsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetAvailableInventoryNearby', true, \n 'OrgUnitAvailabilityClass'\n , 'true', {bypassCache: 'none', returnEntity: 'OrgUnitAvailability'}, {itemIds: itemIds, searchArea: searchArea });\n } \n \n export function getAvailableInventoryNearbyAsync(context: IContext, itemIds?: ItemUnit[] | null, searchArea?: SearchArea | null):AsyncResult {\n const request = createGetAvailableInventoryNearbyInput(context.queryResultSettings, itemIds, searchArea);\n return executeAction(request, context);\n } \n \n export function createGetProductAvailabilityByDimensionsInput(queryResultSettings: IQueryResultSettings, inventLocationIds: string[] | null, productId: number, productDimensionCombinations?: ProductDimensionCombination[] | null): IDataServiceRequest { \n const query = orgUnitsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetProductAvailabilityByDimensions', true, \n 'OrgUnitAvailabilityClass'\n , 'true', {bypassCache: 'none', returnEntity: 'OrgUnitAvailability'}, {inventLocationIds: inventLocationIds, productId: productId, productDimensionCombinations: productDimensionCombinations });\n } \n \n export function getProductAvailabilityByDimensionsAsync(context: IContext, inventLocationIds: string[] | null, productId: number, productDimensionCombinations?: ProductDimensionCombination[] | null):AsyncResult {\n const request = createGetProductAvailabilityByDimensionsInput(context.queryResultSettings, inventLocationIds, productId, productDimensionCombinations);\n return executeAction(request, context);\n } \n \n export function createSearchProductAvailabilityInput(queryResultSettings: IQueryResultSettings, productId: number, orgUnitAvailabilitySearchCriteria?: OrgUnitAvailabilitySearchCriteria | null): IDataServiceRequest { \n const query = orgUnitsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('SearchProductAvailability', true, \n 'OrgUnitAvailabilityClass'\n , 'true', {bypassCache: 'none', returnEntity: 'OrgUnitAvailability'}, {productId: productId, orgUnitAvailabilitySearchCriteria: orgUnitAvailabilitySearchCriteria });\n } \n \n export function searchProductAvailabilityAsync(context: IContext, productId: number, orgUnitAvailabilitySearchCriteria?: OrgUnitAvailabilitySearchCriteria | null):AsyncResult {\n const request = createSearchProductAvailabilityInput(context.queryResultSettings, productId, orgUnitAvailabilitySearchCriteria);\n return executeAction(request, context);\n } \n \n export function createSearchAffiliationsInput(queryResultSettings: IQueryResultSettings, affiliationSearchCriteria?: AffiliationSearchCriteria | null): IDataServiceRequest { \n const query = orgUnitsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('SearchAffiliations', true, \n 'AffiliationClass'\n , 'true', {bypassCache: 'none', returnEntity: 'Affiliation'}, {affiliationSearchCriteria: affiliationSearchCriteria });\n } \n \n export function searchAffiliationsAsync(context: IContext, affiliationSearchCriteria?: AffiliationSearchCriteria | null):AsyncResult {\n const request = createSearchAffiliationsInput(context.queryResultSettings, affiliationSearchCriteria);\n return executeAction(request, context);\n } \n \n export function createGetTerminalInfoInput(queryResultSettings: IQueryResultSettings, orgUnitNumber: string, deviceType: number): IDataServiceRequest { \n const query = orgUnitsQuery(orgUnitNumber).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetTerminalInfo', false, \n 'TerminalInfoClass'\n , 'true', {bypassCache: 'none', returnEntity: 'TerminalInfo'}, {deviceType: deviceType });\n } \n \n export function getTerminalInfoAsync(context: IContext, orgUnitNumber: string, deviceType: number):AsyncResult {\n const request = createGetTerminalInfoInput(context.queryResultSettings, orgUnitNumber, deviceType);\n return executeAction(request, context);\n } \n \n export function createGetProductAvailabilityInput(queryResultSettings: IQueryResultSettings, productId: number): IDataServiceRequest { \n const query = orgUnitsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetProductAvailability', false, \n 'OrgUnitAvailabilityClass'\n , 'true', {bypassCache: 'none', returnEntity: 'OrgUnitAvailability'}, {productId: productId });\n } \n \n export function getProductAvailabilityAsync(context: IContext, productId: number):AsyncResult {\n const request = createGetProductAvailabilityInput(context.queryResultSettings, productId);\n return executeAction(request, context);\n } \n \n ","\n // \n\n import { AsyncResult } from '../async-result';\n import { DataServiceQuery } from '../DataServiceQuery';\n import { ProductList, ProductListSearchCriteria, ProductListLine } from '../Entities/CommerceTypes.g';\n import { IContext, IDataServiceRequest, IQueryResultSettings, NullResult } from '../Interfaces';\n import { executeAction } from '../retail-action';\n\n \n \n function productListsQuery(id?: string): DataServiceQuery {\n var key = (id) ? { Id: id } : null;\n return new DataServiceQuery(\"ProductLists\", \"ProductList\", \"ProductListClass\", key);\n }\n \n export function createCreateInput(entity: ProductList): IDataServiceRequest {\n return productListsQuery().create(entity);\n }\n\n export function createProductListAsync(context: IContext, entity: ProductList): AsyncResult {\n const request = createCreateInput(entity);\n return executeAction(request, context);\n }\n\n export function createUpdateInput(entity: ProductList): IDataServiceRequest {\n return productListsQuery(entity.Id).update(entity);\n }\n\n export function updateAsync(context: IContext, entity: ProductList): AsyncResult {\n const request = createUpdateInput(entity);\n return executeAction(request, context);\n }\n\n export function createDeleteAsync(entity: ProductList): IDataServiceRequest {\n return productListsQuery(entity.Id).delete();\n }\n\n export function deleteAsync(context: IContext, entity: ProductList): AsyncResult {\n const request = createDeleteAsync(entity);\n return executeAction(request, context);\n }\n\n export function createReadAsync(id: string): IDataServiceRequest {\n return productListsQuery(id).read();\n }\n\n export function readAsync(context: IContext, id: string): AsyncResult {\n const request = createReadAsync(id);\n return executeAction(request, context);\n }\n\n export function createReadAllAsync(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n return productListsQuery().resultSettings(queryResultSettings).read();\n }\n\n export function readAllAsync(context: IContext): AsyncResult {\n const request = createReadAllAsync(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createSearchInput(queryResultSettings: IQueryResultSettings, searchCriteria?: ProductListSearchCriteria | null): IDataServiceRequest { \n const query = productListsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('Search', true, \n 'ProductListClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductList'}, {searchCriteria: searchCriteria });\n } \n \n export function searchAsync(context: IContext, searchCriteria?: ProductListSearchCriteria | null):AsyncResult {\n const request = createSearchInput(context.queryResultSettings, searchCriteria);\n return executeAction(request, context);\n } \n \n export function createGetProductListLinesInput(queryResultSettings: IQueryResultSettings, id: string, searchText?: string | null): IDataServiceRequest { \n const query = productListsQuery(id).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetProductListLines', true, \n 'ProductListLineClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductListLine'}, {searchText: searchText });\n } \n \n export function getProductListLinesAsync(context: IContext, id: string, searchText?: string | null):AsyncResult {\n const request = createGetProductListLinesInput(context.queryResultSettings, id, searchText);\n return executeAction(request, context);\n } \n \n export function createAddProductListLinesInput(queryResultSettings: IQueryResultSettings, id: string, productListLines?: ProductListLine[] | null): IDataServiceRequest { \n const query = productListsQuery(id).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('AddProductListLines', true, \n 'ProductListLineClass'\n , 'true', {bypassCache: 'get', returnEntity: 'ProductListLine'}, {productListLines: productListLines });\n } \n \n export function addProductListLinesAsync(context: IContext, id: string, productListLines?: ProductListLine[] | null):AsyncResult {\n const request = createAddProductListLinesInput(context.queryResultSettings, id, productListLines);\n return executeAction(request, context);\n } \n \n export function createUpdateProductListLinesInput(queryResultSettings: IQueryResultSettings, id: string, productListLines?: ProductListLine[] | null): IDataServiceRequest { \n const query = productListsQuery(id).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('UpdateProductListLines', true, \n 'ProductListLineClass'\n , 'true', {bypassCache: 'get', returnEntity: 'ProductListLine'}, {productListLines: productListLines });\n } \n \n export function updateProductListLinesAsync(context: IContext, id: string, productListLines?: ProductListLine[] | null):AsyncResult {\n const request = createUpdateProductListLinesInput(context.queryResultSettings, id, productListLines);\n return executeAction(request, context);\n } \n \n export function createRemoveProductListLinesInput(id: string, productListLines?: ProductListLine[] | null): IDataServiceRequest { \n const query = productListsQuery(id);\n return query.createDataServiceRequestForOperation('RemoveProductListLines', true, '', '', {bypassCache: 'get', returnEntity: ''}, {productListLines: productListLines });\n } \n \n export function removeProductListLinesAsync(context: IContext, id: string, productListLines?: ProductListLine[] | null):AsyncResult {\n const request = createRemoveProductListLinesInput(id, productListLines);\n return executeAction(request, context);\n } \n \n export function createCopyCartToProductListInput(id: string, cartId?: string | null, isRewrite?: boolean | null, isQuantityAggregate?: boolean | null): IDataServiceRequest { \n const query = productListsQuery(id);\n return query.createDataServiceRequestForOperation('CopyCartToProductList', true, \n 'ProductListClass'\n , 'false', {bypassCache: 'get', returnEntity: 'ProductList'}, {cartId: cartId, isRewrite: isRewrite, isQuantityAggregate: isQuantityAggregate });\n } \n \n export function copyCartToProductListAsync(context: IContext, id: string, cartId?: string | null, isRewrite?: boolean | null, isQuantityAggregate?: boolean | null):AsyncResult {\n const request = createCopyCartToProductListInput(id, cartId, isRewrite, isQuantityAggregate);\n return executeAction(request, context);\n } \n \n ","\n // \n\n import { AsyncResult } from '../async-result';\n import { DataServiceQuery } from '../DataServiceQuery';\n import { Product, ProductSearchCriteria, ProductRefiner, ProductDimension, ProductVariantResolutionOnKitSelectionContext, ProductDimensionValue, ProductDimensionAvailabilitySearchCriteria, ProductDimensionValueInventoryAvailability, SimpleProduct, ComponentInSlotRelation, ProductComparisonLine, ProductSearchResult, ProductRefinerValue, Address, ProductDeliveryOptions, ChangedProductsSearchCriteria, ReadChangedProductsSession, DeletedListingsResult, AssortedProductIdentity, ProductExistenceCriteria, ProductExistenceId, ProductRating, ProductAssortmentInterval, ListingPublishStatus, AttributeProduct, MediaLocationSearchCriteria, MediaLocation, ProductPrice, ProductAvailableQuantity, ProjectionDomain, AffiliationLoyaltyTier, PriceLookupContext, ProductPromotion, ProductComponent, SearchSuggestion, CategoryPathLookup, CategoryPathResult, UnitOfMeasure, UnitOfMeasureSearchCriteria, ProductUnitOfMeasure, ProductLookupClause, AttributeValue, MediaBlob, ProductRelationType, ProductWarrantiesMapping, ProductWarehouse, ProductWarehouseInventoryInformation, ProductWarehouseQuantity, UpdateProductWarehouseAvailabilityResult, InventoryAvailabilitySearchCriteria } from '../Entities/CommerceTypes.g';\n import { IContext, IDataServiceRequest, IQueryResultSettings, NullResult } from '../Interfaces';\n import { executeAction } from '../retail-action';\n\n \n \n function productsQuery(recordId?: number): DataServiceQuery {\n var key = (recordId) ? { RecordId: recordId } : null;\n return new DataServiceQuery(\"Products\", \"Product\", \"ProductClass\", key);\n }\n \n export function createCreateInput(entity: Product): IDataServiceRequest {\n return productsQuery().create(entity);\n }\n\n export function createProductAsync(context: IContext, entity: Product): AsyncResult {\n const request = createCreateInput(entity);\n return executeAction(request, context);\n }\n\n export function createUpdateInput(entity: Product): IDataServiceRequest {\n return productsQuery(entity.RecordId).update(entity);\n }\n\n export function updateAsync(context: IContext, entity: Product): AsyncResult {\n const request = createUpdateInput(entity);\n return executeAction(request, context);\n }\n\n export function createDeleteAsync(entity: Product): IDataServiceRequest {\n return productsQuery(entity.RecordId).delete();\n }\n\n export function deleteAsync(context: IContext, entity: Product): AsyncResult {\n const request = createDeleteAsync(entity);\n return executeAction(request, context);\n }\n\n export function createReadAsync(recordId: number): IDataServiceRequest {\n return productsQuery(recordId).read();\n }\n\n export function readAsync(context: IContext, recordId: number): AsyncResult {\n const request = createReadAsync(recordId);\n return executeAction(request, context);\n }\n\n export function createReadAllAsync(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n return productsQuery().resultSettings(queryResultSettings).read();\n }\n\n export function readAllAsync(context: IContext): AsyncResult {\n const request = createReadAllAsync(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createSearchInput(queryResultSettings: IQueryResultSettings, productSearchCriteria?: ProductSearchCriteria | null): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('Search', true, \n 'ProductClass'\n , 'true', {bypassCache: 'none', returnEntity: 'Product'}, {productSearchCriteria: productSearchCriteria });\n } \n \n export function searchAsync(context: IContext, productSearchCriteria?: ProductSearchCriteria | null):AsyncResult {\n const request = createSearchInput(context.queryResultSettings, productSearchCriteria);\n return executeAction(request, context);\n } \n \n export function createGetRefinersInput(queryResultSettings: IQueryResultSettings, productSearchCriteria?: ProductSearchCriteria | null): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetRefiners', true, \n 'ProductRefinerClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductRefiner'}, {productSearchCriteria: productSearchCriteria });\n } \n \n export function getRefinersAsync(context: IContext, productSearchCriteria?: ProductSearchCriteria | null):AsyncResult {\n const request = createGetRefinersInput(context.queryResultSettings, productSearchCriteria);\n return executeAction(request, context);\n } \n \n export function createGetDimensionValuesInput(queryResultSettings: IQueryResultSettings, recordId: number, channelId: number, dimension: number, matchingDimensionValues?: ProductDimension[] | null, kitVariantResolutionContext?: ProductVariantResolutionOnKitSelectionContext | null): IDataServiceRequest { \n const query = productsQuery(recordId).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetDimensionValues', true, \n 'ProductDimensionValueClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductDimensionValue'}, {channelId: channelId, dimension: dimension, matchingDimensionValues: matchingDimensionValues, kitVariantResolutionContext: kitVariantResolutionContext });\n } \n \n export function getDimensionValuesAsync(context: IContext, recordId: number, channelId: number, dimension: number, matchingDimensionValues?: ProductDimension[] | null, kitVariantResolutionContext?: ProductVariantResolutionOnKitSelectionContext | null):AsyncResult {\n const request = createGetDimensionValuesInput(context.queryResultSettings, recordId, channelId, dimension, matchingDimensionValues, kitVariantResolutionContext);\n return executeAction(request, context);\n } \n \n export function createGetDimensionValuesWithEstimatedAvailabilitiesInput(queryResultSettings: IQueryResultSettings, recordId: number, searchCriteria?: ProductDimensionAvailabilitySearchCriteria | null): IDataServiceRequest { \n const query = productsQuery(recordId).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetDimensionValuesWithEstimatedAvailabilities', true, \n 'ProductDimensionValueInventoryAvailabilityClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductDimensionValueInventoryAvailability'}, {searchCriteria: searchCriteria });\n } \n \n export function getDimensionValuesWithEstimatedAvailabilitiesAsync(context: IContext, recordId: number, searchCriteria?: ProductDimensionAvailabilitySearchCriteria | null):AsyncResult {\n const request = createGetDimensionValuesWithEstimatedAvailabilitiesInput(context.queryResultSettings, recordId, searchCriteria);\n return executeAction(request, context);\n } \n \n export function createGetVariantsByDimensionValuesInput(queryResultSettings: IQueryResultSettings, recordId: number, channelId: number, matchingDimensionValues?: ProductDimension[] | null): IDataServiceRequest { \n const query = productsQuery(recordId).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetVariantsByDimensionValues', true, \n 'SimpleProductClass'\n , 'true', {bypassCache: 'none', returnEntity: 'SimpleProduct'}, {channelId: channelId, matchingDimensionValues: matchingDimensionValues });\n } \n \n export function getVariantsByDimensionValuesAsync(context: IContext, recordId: number, channelId: number, matchingDimensionValues?: ProductDimension[] | null):AsyncResult {\n const request = createGetVariantsByDimensionValuesInput(context.queryResultSettings, recordId, channelId, matchingDimensionValues);\n return executeAction(request, context);\n } \n \n export function createGetVariantsByComponentsInSlotsInput(queryResultSettings: IQueryResultSettings, recordId: number, channelId: number, matchingSlotToComponentRelationship?: ComponentInSlotRelation[] | null): IDataServiceRequest { \n const query = productsQuery(recordId).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetVariantsByComponentsInSlots', true, \n 'SimpleProductClass'\n , 'true', {bypassCache: 'none', returnEntity: 'SimpleProduct'}, {channelId: channelId, matchingSlotToComponentRelationship: matchingSlotToComponentRelationship });\n } \n \n export function getVariantsByComponentsInSlotsAsync(context: IContext, recordId: number, channelId: number, matchingSlotToComponentRelationship?: ComponentInSlotRelation[] | null):AsyncResult {\n const request = createGetVariantsByComponentsInSlotsInput(context.queryResultSettings, recordId, channelId, matchingSlotToComponentRelationship);\n return executeAction(request, context);\n } \n \n export function createGetByIdsInput(queryResultSettings: IQueryResultSettings, channelId: number, productIds: number[], inventLocationId?: string | null, catalogId?: number | null): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetByIds', true, \n 'SimpleProductClass'\n , 'true', {bypassCache: 'none', returnEntity: 'SimpleProduct'}, {channelId: channelId, productIds: productIds, inventLocationId: inventLocationId, catalogId: catalogId });\n } \n \n export function getByIdsAsync(context: IContext, channelId: number, productIds: number[], inventLocationId?: string | null, catalogId?: number | null):AsyncResult {\n const request = createGetByIdsInput(context.queryResultSettings, channelId, productIds, inventLocationId, catalogId);\n return executeAction(request, context);\n } \n \n export function createCompareInput(queryResultSettings: IQueryResultSettings, channelId: number, catalogId: number, productIds: number[]): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('Compare', true, \n 'ProductComparisonLineClass'\n , 'true', {bypassCache: 'get', returnEntity: 'ProductComparisonLine'}, {channelId: channelId, catalogId: catalogId, productIds: productIds });\n } \n \n export function compareAsync(context: IContext, channelId: number, catalogId: number, productIds: number[]):AsyncResult {\n const request = createCompareInput(context.queryResultSettings, channelId, catalogId, productIds);\n return executeAction(request, context);\n } \n \n export function createGetRecommendedProductsInput(queryResultSettings: IQueryResultSettings, productIds: number[], customerId?: string | null): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetRecommendedProducts', true, \n 'ProductSearchResultClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductSearchResult'}, {productIds: productIds, customerId: customerId });\n } \n \n export function getRecommendedProductsAsync(context: IContext, productIds: number[], customerId?: string | null):AsyncResult {\n const request = createGetRecommendedProductsInput(context.queryResultSettings, productIds, customerId);\n return executeAction(request, context);\n } \n \n export function createRefineSearchByCategoryInput(queryResultSettings: IQueryResultSettings, channelId: number, catalogId: number, categoryId: number, refinementCriteria?: ProductRefinerValue[] | null): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('RefineSearchByCategory', true, \n 'ProductSearchResultClass'\n , 'true', {bypassCache: 'get', returnEntity: 'ProductSearchResult'}, {channelId: channelId, catalogId: catalogId, categoryId: categoryId, refinementCriteria: refinementCriteria });\n } \n \n export function refineSearchByCategoryAsync(context: IContext, channelId: number, catalogId: number, categoryId: number, refinementCriteria?: ProductRefinerValue[] | null):AsyncResult {\n const request = createRefineSearchByCategoryInput(context.queryResultSettings, channelId, catalogId, categoryId, refinementCriteria);\n return executeAction(request, context);\n } \n \n export function createRefineSearchByTextInput(queryResultSettings: IQueryResultSettings, channelId: number, catalogId: number, searchText?: string | null, refinementCriteria?: ProductRefinerValue[] | null): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('RefineSearchByText', true, \n 'ProductSearchResultClass'\n , 'true', {bypassCache: 'get', returnEntity: 'ProductSearchResult'}, {channelId: channelId, catalogId: catalogId, searchText: searchText, refinementCriteria: refinementCriteria });\n } \n \n export function refineSearchByTextAsync(context: IContext, channelId: number, catalogId: number, searchText?: string | null, refinementCriteria?: ProductRefinerValue[] | null):AsyncResult {\n const request = createRefineSearchByTextInput(context.queryResultSettings, channelId, catalogId, searchText, refinementCriteria);\n return executeAction(request, context);\n } \n \n export function createGetProductSearchRefinersInput(queryResultSettings: IQueryResultSettings, searchCriteria?: ProductSearchCriteria | null): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetProductSearchRefiners', true, \n 'ProductRefinerClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductRefiner'}, {searchCriteria: searchCriteria });\n } \n \n export function getProductSearchRefinersAsync(context: IContext, searchCriteria?: ProductSearchCriteria | null):AsyncResult {\n const request = createGetProductSearchRefinersInput(context.queryResultSettings, searchCriteria);\n return executeAction(request, context);\n } \n \n export function createGetDeliveryOptionsInput(queryResultSettings: IQueryResultSettings, productIds: number[], address?: Address | null, filterOption?: number | null): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetDeliveryOptions', true, \n 'ProductDeliveryOptionsClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductDeliveryOptions'}, {productIds: productIds, address: address, filterOption: filterOption });\n } \n \n export function getDeliveryOptionsAsync(context: IContext, productIds: number[], address?: Address | null, filterOption?: number | null):AsyncResult {\n const request = createGetDeliveryOptionsInput(context.queryResultSettings, productIds, address, filterOption);\n return executeAction(request, context);\n } \n \n export function createChangesInput(queryResultSettings: IQueryResultSettings, productSearchCriteria?: ChangedProductsSearchCriteria | null): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('Changes', true, \n 'ProductClass'\n , 'true', {bypassCache: 'get', returnEntity: 'Product'}, {productSearchCriteria: productSearchCriteria });\n } \n \n export function changesAsync(context: IContext, productSearchCriteria?: ChangedProductsSearchCriteria | null):AsyncResult {\n const request = createChangesInput(context.queryResultSettings, productSearchCriteria);\n return executeAction(request, context);\n } \n \n export function createBeginReadChangedProductsInput(changedProductSearchCriteria?: ChangedProductsSearchCriteria | null): IDataServiceRequest { \n const query = productsQuery();\n return query.createDataServiceRequestForOperation('BeginReadChangedProducts', true, \n 'ReadChangedProductsSessionClass'\n , 'false', {bypassCache: 'get', returnEntity: 'ReadChangedProductsSession'}, {changedProductSearchCriteria: changedProductSearchCriteria });\n } \n \n export function beginReadChangedProductsAsync(context: IContext, changedProductSearchCriteria?: ChangedProductsSearchCriteria | null):AsyncResult {\n const request = createBeginReadChangedProductsInput(changedProductSearchCriteria);\n return executeAction(request, context);\n } \n \n export function createReadChangedProductsInput(queryResultSettings: IQueryResultSettings, productSearchCriteria: ChangedProductsSearchCriteria | null, skipProductPriceCalculation?: boolean): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('ReadChangedProducts', true, \n 'ProductClass'\n , 'true', {bypassCache: 'none', returnEntity: 'Product'}, {productSearchCriteria: productSearchCriteria, skipProductPriceCalculation: skipProductPriceCalculation });\n } \n \n export function readChangedProductsAsync(context: IContext, productSearchCriteria: ChangedProductsSearchCriteria | null, skipProductPriceCalculation?: boolean):AsyncResult {\n const request = createReadChangedProductsInput(context.queryResultSettings, productSearchCriteria, skipProductPriceCalculation);\n return executeAction(request, context);\n } \n \n export function createGetDeletedListingsInput(catalogId: number, skip: number, top: number): IDataServiceRequest { \n const query = productsQuery();\n return query.createDataServiceRequestForOperation('GetDeletedListings', true, \n 'DeletedListingsResultClass'\n , 'false', {bypassCache: 'none', returnEntity: 'DeletedListingsResult'}, {catalogId: catalogId, skip: skip, top: top });\n } \n \n export function getDeletedListingsAsync(context: IContext, catalogId: number, skip: number, top: number):AsyncResult {\n const request = createGetDeletedListingsInput(catalogId, skip, top);\n return executeAction(request, context);\n } \n \n export function createGetAssortedProductIdsInput(queryResultSettings: IQueryResultSettings, productIds: number[], includeFutureAssortedProducts: boolean): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetAssortedProductIds', true, \n 'AssortedProductIdentityClass'\n , 'true', {bypassCache: 'none', returnEntity: 'AssortedProductIdentity'}, {productIds: productIds, includeFutureAssortedProducts: includeFutureAssortedProducts });\n } \n \n export function getAssortedProductIdsAsync(context: IContext, productIds: number[], includeFutureAssortedProducts: boolean):AsyncResult {\n const request = createGetAssortedProductIdsInput(context.queryResultSettings, productIds, includeFutureAssortedProducts);\n return executeAction(request, context);\n } \n \n export function createCheckProductsExistenceInput(queryResultSettings: IQueryResultSettings, productExistenceCriteria?: ProductExistenceCriteria | null): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('CheckProductsExistence', true, \n 'ProductExistenceIdClass'\n , 'true', {bypassCache: 'get', returnEntity: 'ProductExistenceId'}, {productExistenceCriteria: productExistenceCriteria });\n } \n \n export function checkProductsExistenceAsync(context: IContext, productExistenceCriteria?: ProductExistenceCriteria | null):AsyncResult {\n const request = createCheckProductsExistenceInput(context.queryResultSettings, productExistenceCriteria);\n return executeAction(request, context);\n } \n \n export function createGetDeletedCatalogsInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetDeletedCatalogs', false, '', 'true', {bypassCache: 'none', returnEntity: ''}, { });\n } \n \n export function getDeletedCatalogsAsync(context: IContext, ):AsyncResult {\n const request = createGetDeletedCatalogsInput(context.queryResultSettings, );\n return executeAction(request, context);\n } \n \n export function createGetDeletedLanguagesInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetDeletedLanguages', false, '', 'true', {bypassCache: 'none', returnEntity: ''}, { });\n } \n \n export function getDeletedLanguagesAsync(context: IContext, ):AsyncResult {\n const request = createGetDeletedLanguagesInput(context.queryResultSettings, );\n return executeAction(request, context);\n } \n \n export function createGetProductRatingsInput(queryResultSettings: IQueryResultSettings, productIds: number[]): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetProductRatings', true, \n 'ProductRatingClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductRating'}, {productIds: productIds });\n } \n \n export function getProductRatingsAsync(context: IContext, productIds: number[]):AsyncResult {\n const request = createGetProductRatingsInput(context.queryResultSettings, productIds);\n return executeAction(request, context);\n } \n \n export function createGetProductAssortmentIntervalsInput(queryResultSettings: IQueryResultSettings, productIds: number[]): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetProductAssortmentIntervals', true, \n 'ProductAssortmentIntervalClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductAssortmentInterval'}, {productIds: productIds });\n } \n \n export function getProductAssortmentIntervalsAsync(context: IContext, productIds: number[]):AsyncResult {\n const request = createGetProductAssortmentIntervalsInput(context.queryResultSettings, productIds);\n return executeAction(request, context);\n } \n \n export function createDeleteListingsByCatalogsInput(catalogIds: number[]): IDataServiceRequest { \n const query = productsQuery();\n return query.createDataServiceRequestForOperation('DeleteListingsByCatalogs', true, '', '', {bypassCache: 'get', returnEntity: ''}, {catalogIds: catalogIds });\n } \n \n export function deleteListingsByCatalogsAsync(context: IContext, catalogIds: number[]):AsyncResult {\n const request = createDeleteListingsByCatalogsInput(catalogIds);\n return executeAction(request, context);\n } \n \n export function createDeleteListingsByLanguagesInput(languages?: string[] | null): IDataServiceRequest { \n const query = productsQuery();\n return query.createDataServiceRequestForOperation('DeleteListingsByLanguages', true, '', '', {bypassCache: 'get', returnEntity: ''}, {languages: languages });\n } \n \n export function deleteListingsByLanguagesAsync(context: IContext, languages?: string[] | null):AsyncResult {\n const request = createDeleteListingsByLanguagesInput(languages);\n return executeAction(request, context);\n } \n \n export function createEndReadChangedProductsInput(session?: ReadChangedProductsSession | null): IDataServiceRequest { \n const query = productsQuery();\n return query.createDataServiceRequestForOperation('EndReadChangedProducts', true, '', '', {bypassCache: 'get', returnEntity: ''}, {session: session });\n } \n \n export function endReadChangedProductsAsync(context: IContext, session?: ReadChangedProductsSession | null):AsyncResult {\n const request = createEndReadChangedProductsInput(session);\n return executeAction(request, context);\n } \n \n export function createUpdateListingPublishingStatusInput(publishingStatuses?: ListingPublishStatus[] | null): IDataServiceRequest { \n const query = productsQuery();\n return query.createDataServiceRequestForOperation('UpdateListingPublishingStatus', true, '', '', {bypassCache: 'get', returnEntity: ''}, {publishingStatuses: publishingStatuses });\n } \n \n export function updateListingPublishingStatusAsync(context: IContext, publishingStatuses?: ListingPublishStatus[] | null):AsyncResult {\n const request = createUpdateListingPublishingStatusInput(publishingStatuses);\n return executeAction(request, context);\n } \n \n export function createGetCatalogProductAttributesInput(queryResultSettings: IQueryResultSettings, catalogId: number): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCatalogProductAttributes', true, \n 'AttributeProductClass'\n , 'true', {bypassCache: 'none', returnEntity: 'AttributeProduct'}, {catalogId: catalogId });\n } \n \n export function getCatalogProductAttributesAsync(context: IContext, catalogId: number):AsyncResult {\n const request = createGetCatalogProductAttributesInput(context.queryResultSettings, catalogId);\n return executeAction(request, context);\n } \n \n export function createSearchMediaLocationsInput(queryResultSettings: IQueryResultSettings, mediaLocationSearchCriteria?: MediaLocationSearchCriteria | null): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('SearchMediaLocations', true, \n 'MediaLocationClass'\n , 'true', {bypassCache: 'none', returnEntity: 'MediaLocation'}, {mediaLocationSearchCriteria: mediaLocationSearchCriteria });\n } \n \n export function searchMediaLocationsAsync(context: IContext, mediaLocationSearchCriteria?: MediaLocationSearchCriteria | null):AsyncResult {\n const request = createSearchMediaLocationsInput(context.queryResultSettings, mediaLocationSearchCriteria);\n return executeAction(request, context);\n } \n \n export function createGetPricesInput(queryResultSettings: IQueryResultSettings, itemId: string | null, inventoryDimensionId: string | null, barcode: string | null, customerAccountNumber: string | null, unitOfMeasureSymbol: string | null, quantity: number): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetPrices', true, \n 'ProductPriceClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductPrice'}, {itemId: itemId, inventoryDimensionId: inventoryDimensionId, barcode: barcode, customerAccountNumber: customerAccountNumber, unitOfMeasureSymbol: unitOfMeasureSymbol, quantity: quantity });\n } \n \n export function getPricesAsync(context: IContext, itemId: string | null, inventoryDimensionId: string | null, barcode: string | null, customerAccountNumber: string | null, unitOfMeasureSymbol: string | null, quantity: number):AsyncResult {\n const request = createGetPricesInput(context.queryResultSettings, itemId, inventoryDimensionId, barcode, customerAccountNumber, unitOfMeasureSymbol, quantity);\n return executeAction(request, context);\n } \n \n export function createGetProductAvailabilitiesInput(queryResultSettings: IQueryResultSettings, itemIds: number[], channelId: number): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetProductAvailabilities', true, \n 'ProductAvailableQuantityClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductAvailableQuantity'}, {itemIds: itemIds, channelId: channelId });\n } \n \n export function getProductAvailabilitiesAsync(context: IContext, itemIds: number[], channelId: number):AsyncResult {\n const request = createGetProductAvailabilitiesInput(context.queryResultSettings, itemIds, channelId);\n return executeAction(request, context);\n } \n \n export function createGetActivePricesInput(queryResultSettings: IQueryResultSettings, projectDomain: ProjectionDomain | null, productIds?: number[], activeDate?: Date, customerId?: string | null, affiliationLoyaltyTiers?: AffiliationLoyaltyTier[] | null, includeSimpleDiscountsInContextualPrice?: boolean | null, includeVariantPriceRange?: boolean | null, includeAttainablePricesAndDiscounts?: boolean | null, priceLookupContext?: PriceLookupContext | null): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetActivePrices', true, \n 'ProductPriceClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductPrice'}, {projectDomain: projectDomain, productIds: productIds, activeDate: activeDate, customerId: customerId, affiliationLoyaltyTiers: affiliationLoyaltyTiers, includeSimpleDiscountsInContextualPrice: includeSimpleDiscountsInContextualPrice, includeVariantPriceRange: includeVariantPriceRange, includeAttainablePricesAndDiscounts: includeAttainablePricesAndDiscounts, priceLookupContext: priceLookupContext });\n } \n \n export function getActivePricesAsync(context: IContext, projectDomain: ProjectionDomain | null, productIds?: number[], activeDate?: Date, customerId?: string | null, affiliationLoyaltyTiers?: AffiliationLoyaltyTier[] | null, includeSimpleDiscountsInContextualPrice?: boolean | null, includeVariantPriceRange?: boolean | null, includeAttainablePricesAndDiscounts?: boolean | null, priceLookupContext?: PriceLookupContext | null):AsyncResult {\n const request = createGetActivePricesInput(context.queryResultSettings, projectDomain, productIds, activeDate, customerId, affiliationLoyaltyTiers, includeSimpleDiscountsInContextualPrice, includeVariantPriceRange, includeAttainablePricesAndDiscounts, priceLookupContext);\n return executeAction(request, context);\n } \n \n export function createGetProductPromotionsInput(queryResultSettings: IQueryResultSettings, productDiscountIds: string[] | null, priceLookupContext: PriceLookupContext | null, activeDate?: Date): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetProductPromotions', true, \n 'ProductPromotionClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductPromotion'}, {productDiscountIds: productDiscountIds, priceLookupContext: priceLookupContext, activeDate: activeDate });\n } \n \n export function getProductPromotionsAsync(context: IContext, productDiscountIds: string[] | null, priceLookupContext: PriceLookupContext | null, activeDate?: Date):AsyncResult {\n const request = createGetProductPromotionsInput(context.queryResultSettings, productDiscountIds, priceLookupContext, activeDate);\n return executeAction(request, context);\n } \n \n export function createGetFilteredSlotComponentsInput(queryResultSettings: IQueryResultSettings, recordId: number, channelId: number, slotId: number, selectedComponents?: ComponentInSlotRelation[] | null): IDataServiceRequest { \n const query = productsQuery(recordId).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetFilteredSlotComponents', true, \n 'ProductComponentClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductComponent'}, {channelId: channelId, slotId: slotId, selectedComponents: selectedComponents });\n } \n \n export function getFilteredSlotComponentsAsync(context: IContext, recordId: number, channelId: number, slotId: number, selectedComponents?: ComponentInSlotRelation[] | null):AsyncResult {\n const request = createGetFilteredSlotComponentsInput(context.queryResultSettings, recordId, channelId, slotId, selectedComponents);\n return executeAction(request, context);\n } \n \n export function createGetComponentByProductSlotRelationInput(channelId: number, componentRelation?: ComponentInSlotRelation | null): IDataServiceRequest { \n const query = productsQuery();\n return query.createDataServiceRequestForOperation('GetComponentByProductSlotRelation', true, \n 'ProductComponentClass'\n , 'false', {bypassCache: 'none', returnEntity: 'ProductComponent'}, {channelId: channelId, componentRelation: componentRelation });\n } \n \n export function getComponentByProductSlotRelationAsync(context: IContext, channelId: number, componentRelation?: ComponentInSlotRelation | null):AsyncResult {\n const request = createGetComponentByProductSlotRelationInput(channelId, componentRelation);\n return executeAction(request, context);\n } \n \n export function createGetSearchSuggestionsInput(queryResultSettings: IQueryResultSettings, channelId: number, catalogId: number, searchText?: string | null, hitPrefix?: string | null, hitSuffix?: string | null): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetSearchSuggestions', false, \n 'SearchSuggestionClass'\n , 'true', {bypassCache: 'none', returnEntity: 'SearchSuggestion'}, {channelId: channelId, catalogId: catalogId, searchText: searchText, hitPrefix: hitPrefix, hitSuffix: hitSuffix });\n } \n \n export function getSearchSuggestionsAsync(context: IContext, channelId: number, catalogId: number, searchText?: string | null, hitPrefix?: string | null, hitSuffix?: string | null):AsyncResult {\n const request = createGetSearchSuggestionsInput(context.queryResultSettings, channelId, catalogId, searchText, hitPrefix, hitSuffix);\n return executeAction(request, context);\n } \n \n export function createGetCategoryPathsInput(queryResultSettings: IQueryResultSettings, channelId: number, catalogId: number, categoryPathLookups?: CategoryPathLookup[] | null): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCategoryPaths', true, \n 'CategoryPathResultClass'\n , 'true', {bypassCache: 'none', returnEntity: 'CategoryPathResult'}, {channelId: channelId, catalogId: catalogId, CategoryPathLookups: categoryPathLookups });\n } \n \n export function getCategoryPathsAsync(context: IContext, channelId: number, catalogId: number, categoryPathLookups?: CategoryPathLookup[] | null):AsyncResult {\n const request = createGetCategoryPathsInput(context.queryResultSettings, channelId, catalogId, categoryPathLookups);\n return executeAction(request, context);\n } \n \n export function createGetUnitsOfMeasureInput(queryResultSettings: IQueryResultSettings, recordId: number, ): IDataServiceRequest { \n const query = productsQuery(recordId).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetUnitsOfMeasure', false, \n 'UnitOfMeasureClass'\n , 'true', {bypassCache: 'none', returnEntity: 'UnitOfMeasure'}, { });\n } \n \n export function getUnitsOfMeasureAsync(context: IContext, recordId: number):AsyncResult {\n const request = createGetUnitsOfMeasureInput(context.queryResultSettings, recordId);\n return executeAction(request, context);\n } \n \n export function createGetProductUnitsOfMeasureInput(queryResultSettings: IQueryResultSettings, productId: number, unitOfMeasureSearchCriteria?: UnitOfMeasureSearchCriteria | null): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetProductUnitsOfMeasure', true, \n 'ProductUnitOfMeasureClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductUnitOfMeasure'}, {productId: productId, unitOfMeasureSearchCriteria: unitOfMeasureSearchCriteria });\n } \n \n export function getProductUnitsOfMeasureAsync(context: IContext, productId: number, unitOfMeasureSearchCriteria?: UnitOfMeasureSearchCriteria | null):AsyncResult {\n const request = createGetProductUnitsOfMeasureInput(context.queryResultSettings, productId, unitOfMeasureSearchCriteria);\n return executeAction(request, context);\n } \n \n export function createSearchByCategoryInput(queryResultSettings: IQueryResultSettings, channelId: number, catalogId: number, categoryId: number): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('SearchByCategory', false, \n 'ProductSearchResultClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductSearchResult'}, {channelId: channelId, catalogId: catalogId, categoryId: categoryId });\n } \n \n export function searchByCategoryAsync(context: IContext, channelId: number, catalogId: number, categoryId: number):AsyncResult {\n const request = createSearchByCategoryInput(context.queryResultSettings, channelId, catalogId, categoryId);\n return executeAction(request, context);\n } \n \n export function createSearchByTextInput(queryResultSettings: IQueryResultSettings, channelId: number, catalogId: number, searchText?: string | null): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('SearchByText', false, \n 'ProductSearchResultClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductSearchResult'}, {channelId: channelId, catalogId: catalogId, searchText: searchText });\n } \n \n export function searchByTextAsync(context: IContext, channelId: number, catalogId: number, searchText?: string | null):AsyncResult {\n const request = createSearchByTextInput(context.queryResultSettings, channelId, catalogId, searchText);\n return executeAction(request, context);\n } \n \n export function createSearchByCriteriaInput(queryResultSettings: IQueryResultSettings, searchCriteria?: ProductSearchCriteria | null): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('SearchByCriteria', true, \n 'ProductSearchResultClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductSearchResult'}, {searchCriteria: searchCriteria });\n } \n \n export function searchByCriteriaAsync(context: IContext, searchCriteria?: ProductSearchCriteria | null):AsyncResult {\n const request = createSearchByCriteriaInput(context.queryResultSettings, searchCriteria);\n return executeAction(request, context);\n } \n \n export function createGetByLookupClausesInput(queryResultSettings: IQueryResultSettings, channelId: number, productLookupClauses?: ProductLookupClause[] | null, catalogId?: number | null): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetByLookupClauses', true, \n 'SimpleProductClass'\n , 'true', {bypassCache: 'none', returnEntity: 'SimpleProduct'}, {channelId: channelId, productLookupClauses: productLookupClauses, catalogId: catalogId });\n } \n \n export function getByLookupClausesAsync(context: IContext, channelId: number, productLookupClauses?: ProductLookupClause[] | null, catalogId?: number | null):AsyncResult {\n const request = createGetByLookupClausesInput(context.queryResultSettings, channelId, productLookupClauses, catalogId);\n return executeAction(request, context);\n } \n \n export function createGetRefinersByCategoryInput(queryResultSettings: IQueryResultSettings, catalogId: number, categoryId: number): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetRefinersByCategory', false, \n 'ProductRefinerClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductRefiner'}, {catalogId: catalogId, categoryId: categoryId });\n } \n \n export function getRefinersByCategoryAsync(context: IContext, catalogId: number, categoryId: number):AsyncResult {\n const request = createGetRefinersByCategoryInput(context.queryResultSettings, catalogId, categoryId);\n return executeAction(request, context);\n } \n \n export function createGetRefinersByTextInput(queryResultSettings: IQueryResultSettings, catalogId: number, searchText?: string | null): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetRefinersByText', false, \n 'ProductRefinerClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductRefiner'}, {catalogId: catalogId, searchText: searchText });\n } \n \n export function getRefinersByTextAsync(context: IContext, catalogId: number, searchText?: string | null):AsyncResult {\n const request = createGetRefinersByTextInput(context.queryResultSettings, catalogId, searchText);\n return executeAction(request, context);\n } \n \n export function createGetRefinerValuesByCategoryInput(queryResultSettings: IQueryResultSettings, catalogId: number, categoryId: number, refinerId: number, refinerSourceValue: number): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetRefinerValuesByCategory', false, \n 'ProductRefinerValueClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductRefinerValue'}, {catalogId: catalogId, categoryId: categoryId, refinerId: refinerId, refinerSourceValue: refinerSourceValue });\n } \n \n export function getRefinerValuesByCategoryAsync(context: IContext, catalogId: number, categoryId: number, refinerId: number, refinerSourceValue: number):AsyncResult {\n const request = createGetRefinerValuesByCategoryInput(context.queryResultSettings, catalogId, categoryId, refinerId, refinerSourceValue);\n return executeAction(request, context);\n } \n \n export function createGetRefinerValuesByTextInput(queryResultSettings: IQueryResultSettings, catalogId: number, searchText: string | null, refinerId: number, refinerSourceValue: number): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetRefinerValuesByText', false, \n 'ProductRefinerValueClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductRefinerValue'}, {catalogId: catalogId, searchText: searchText, refinerId: refinerId, refinerSourceValue: refinerSourceValue });\n } \n \n export function getRefinerValuesByTextAsync(context: IContext, catalogId: number, searchText: string | null, refinerId: number, refinerSourceValue: number):AsyncResult {\n const request = createGetRefinerValuesByTextInput(context.queryResultSettings, catalogId, searchText, refinerId, refinerSourceValue);\n return executeAction(request, context);\n } \n \n export function createGetChannelProductAttributesInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetChannelProductAttributes', false, \n 'AttributeProductClass'\n , 'true', {bypassCache: 'none', returnEntity: 'AttributeProduct'}, { });\n } \n \n export function getChannelProductAttributesAsync(context: IContext, ):AsyncResult {\n const request = createGetChannelProductAttributesInput(context.queryResultSettings, );\n return executeAction(request, context);\n } \n \n export function createGetByIdInput(recordId: number, channelId: number): IDataServiceRequest { \n const query = productsQuery(recordId);\n return query.createDataServiceRequestForOperation('GetById', false, \n 'SimpleProductClass'\n , 'false', {bypassCache: 'none', returnEntity: 'SimpleProduct'}, {channelId: channelId });\n } \n \n export function getByIdAsync(context: IContext, recordId: number, channelId: number):AsyncResult {\n const request = createGetByIdInput(recordId, channelId);\n return executeAction(request, context);\n } \n \n export function createGetAttributeValuesInput(queryResultSettings: IQueryResultSettings, recordId: number, channelId: number, catalogId: number): IDataServiceRequest { \n const query = productsQuery(recordId).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetAttributeValues', false, \n 'AttributeValueClass'\n , 'true', {bypassCache: 'none', returnEntity: 'AttributeValue'}, {channelId: channelId, catalogId: catalogId });\n } \n \n export function getAttributeValuesAsync(context: IContext, recordId: number, channelId: number, catalogId: number):AsyncResult {\n const request = createGetAttributeValuesInput(context.queryResultSettings, recordId, channelId, catalogId);\n return executeAction(request, context);\n } \n \n export function createGetMediaLocationsInput(queryResultSettings: IQueryResultSettings, recordId: number, channelId: number, catalogId: number): IDataServiceRequest { \n const query = productsQuery(recordId).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetMediaLocations', false, \n 'MediaLocationClass'\n , 'true', {bypassCache: 'none', returnEntity: 'MediaLocation'}, {channelId: channelId, catalogId: catalogId });\n } \n \n export function getMediaLocationsAsync(context: IContext, recordId: number, channelId: number, catalogId: number):AsyncResult {\n const request = createGetMediaLocationsInput(context.queryResultSettings, recordId, channelId, catalogId);\n return executeAction(request, context);\n } \n \n export function createGetMediaBlobsInput(queryResultSettings: IQueryResultSettings, recordId: number, channelId: number, catalogId: number): IDataServiceRequest { \n const query = productsQuery(recordId).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetMediaBlobs', false, \n 'MediaBlobClass'\n , 'true', {bypassCache: 'none', returnEntity: 'MediaBlob'}, {channelId: channelId, catalogId: catalogId });\n } \n \n export function getMediaBlobsAsync(context: IContext, recordId: number, channelId: number, catalogId: number):AsyncResult {\n const request = createGetMediaBlobsInput(context.queryResultSettings, recordId, channelId, catalogId);\n return executeAction(request, context);\n } \n \n export function createGetDefaultComponentsInput(queryResultSettings: IQueryResultSettings, recordId: number, channelId: number): IDataServiceRequest { \n const query = productsQuery(recordId).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetDefaultComponents', false, \n 'ProductComponentClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductComponent'}, {channelId: channelId });\n } \n \n export function getDefaultComponentsAsync(context: IContext, recordId: number, channelId: number):AsyncResult {\n const request = createGetDefaultComponentsInput(context.queryResultSettings, recordId, channelId);\n return executeAction(request, context);\n } \n \n export function createGetSlotComponentsInput(queryResultSettings: IQueryResultSettings, recordId: number, channelId: number, slotId: number): IDataServiceRequest { \n const query = productsQuery(recordId).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetSlotComponents', false, \n 'ProductComponentClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductComponent'}, {channelId: channelId, slotId: slotId });\n } \n \n export function getSlotComponentsAsync(context: IContext, recordId: number, channelId: number, slotId: number):AsyncResult {\n const request = createGetSlotComponentsInput(context.queryResultSettings, recordId, channelId, slotId);\n return executeAction(request, context);\n } \n \n export function createGetAllRelationTypesInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetAllRelationTypes', false, \n 'ProductRelationTypeClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductRelationType'}, { });\n } \n \n export function getAllRelationTypesAsync(context: IContext, ):AsyncResult {\n const request = createGetAllRelationTypesInput(context.queryResultSettings, );\n return executeAction(request, context);\n } \n \n export function createGetRelationTypesInput(queryResultSettings: IQueryResultSettings, recordId: number, channelId: number, catalogId: number): IDataServiceRequest { \n const query = productsQuery(recordId).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetRelationTypes', false, \n 'ProductRelationTypeClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductRelationType'}, {channelId: channelId, catalogId: catalogId });\n } \n \n export function getRelationTypesAsync(context: IContext, recordId: number, channelId: number, catalogId: number):AsyncResult {\n const request = createGetRelationTypesInput(context.queryResultSettings, recordId, channelId, catalogId);\n return executeAction(request, context);\n } \n \n export function createGetRelatedProductsInput(queryResultSettings: IQueryResultSettings, recordId: number, channelId: number, catalogId: number, relationTypeId: number): IDataServiceRequest { \n const query = productsQuery(recordId).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetRelatedProducts', false, \n 'ProductSearchResultClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductSearchResult'}, {channelId: channelId, catalogId: catalogId, relationTypeId: relationTypeId });\n } \n \n export function getRelatedProductsAsync(context: IContext, recordId: number, channelId: number, catalogId: number, relationTypeId: number):AsyncResult {\n const request = createGetRelatedProductsInput(context.queryResultSettings, recordId, channelId, catalogId, relationTypeId);\n return executeAction(request, context);\n } \n \n export function createGetApplicableWarrantiesInput(queryResultSettings: IQueryResultSettings, catalogId: number, warrantableProductIds: number[]): IDataServiceRequest { \n const query = productsQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetApplicableWarranties', true, \n 'ProductWarrantiesMappingClass'\n , 'true', {bypassCache: 'none', returnEntity: 'ProductWarrantiesMapping'}, {catalogId: catalogId, warrantableProductIds: warrantableProductIds });\n } \n \n export function getApplicableWarrantiesAsync(context: IContext, catalogId: number, warrantableProductIds: number[]):AsyncResult {\n const request = createGetApplicableWarrantiesInput(context.queryResultSettings, catalogId, warrantableProductIds);\n return executeAction(request, context);\n } \n \n export function createGetPriceInput(recordId: number, customerAccountNumber?: string | null, unitOfMeasureSymbol?: string | null): IDataServiceRequest { \n const query = productsQuery(recordId);\n return query.createDataServiceRequestForOperation('GetPrice', false, \n 'ProductPriceClass'\n , 'false', {bypassCache: 'none', returnEntity: 'ProductPrice'}, {customerAccountNumber: customerAccountNumber, unitOfMeasureSymbol: unitOfMeasureSymbol });\n } \n \n export function getPriceAsync(context: IContext, recordId: number, customerAccountNumber?: string | null, unitOfMeasureSymbol?: string | null):AsyncResult {\n const request = createGetPriceInput(recordId, customerAccountNumber, unitOfMeasureSymbol);\n return executeAction(request, context);\n } \n \n export function createCalculateProductPriceInput(recordId: number, customerAccountNumber?: string | null, unitOfMeasureSymbol?: string | null, loyaltyCardId?: string | null, affiliationLoyaltyTiers?: AffiliationLoyaltyTier[] | null): IDataServiceRequest { \n const query = productsQuery(recordId);\n return query.createDataServiceRequestForOperation('CalculateProductPrice', true, \n 'ProductPriceClass'\n , 'false', {bypassCache: 'get', returnEntity: 'ProductPrice'}, {customerAccountNumber: customerAccountNumber, unitOfMeasureSymbol: unitOfMeasureSymbol, loyaltyCardId: loyaltyCardId, affiliationLoyaltyTiers: affiliationLoyaltyTiers });\n } \n \n export function calculateProductPriceAsync(context: IContext, recordId: number, customerAccountNumber?: string | null, unitOfMeasureSymbol?: string | null, loyaltyCardId?: string | null, affiliationLoyaltyTiers?: AffiliationLoyaltyTier[] | null):AsyncResult {\n const request = createCalculateProductPriceInput(recordId, customerAccountNumber, unitOfMeasureSymbol, loyaltyCardId, affiliationLoyaltyTiers);\n return executeAction(request, context);\n } \n \n export function createGetEstimatedProductWarehouseAvailabilityInput(productWarehouses?: ProductWarehouse[] | null, quantityUnitType?: number | null): IDataServiceRequest { \n const query = productsQuery();\n return query.createDataServiceRequestForOperation('GetEstimatedProductWarehouseAvailability', true, \n 'ProductWarehouseInventoryInformationClass'\n , 'false', {bypassCache: 'none', returnEntity: 'ProductWarehouseInventoryInformation'}, {productWarehouses: productWarehouses, quantityUnitType: quantityUnitType });\n } \n \n export function getEstimatedProductWarehouseAvailabilityAsync(context: IContext, productWarehouses?: ProductWarehouse[] | null, quantityUnitType?: number | null):AsyncResult {\n const request = createGetEstimatedProductWarehouseAvailabilityInput(productWarehouses, quantityUnitType);\n return executeAction(request, context);\n } \n \n export function createUpdateProductWarehouseAvailabilityInput(quantities?: ProductWarehouseQuantity[] | null): IDataServiceRequest { \n const query = productsQuery();\n return query.createDataServiceRequestForOperation('UpdateProductWarehouseAvailability', true, \n 'UpdateProductWarehouseAvailabilityResultClass'\n , 'false', {bypassCache: 'get', returnEntity: 'UpdateProductWarehouseAvailabilityResult'}, {quantities: quantities });\n } \n \n export function updateProductWarehouseAvailabilityAsync(context: IContext, quantities?: ProductWarehouseQuantity[] | null):AsyncResult {\n const request = createUpdateProductWarehouseAvailabilityInput(quantities);\n return executeAction(request, context);\n } \n \n export function createGetEstimatedAvailabilityInput(searchCriteria?: InventoryAvailabilitySearchCriteria | null): IDataServiceRequest { \n const query = productsQuery();\n return query.createDataServiceRequestForOperation('GetEstimatedAvailability', true, \n 'ProductWarehouseInventoryInformationClass'\n , 'false', {bypassCache: 'none', returnEntity: 'ProductWarehouseInventoryInformation'}, {searchCriteria: searchCriteria });\n } \n \n export function getEstimatedAvailabilityAsync(context: IContext, searchCriteria?: InventoryAvailabilitySearchCriteria | null):AsyncResult {\n const request = createGetEstimatedAvailabilityInput(searchCriteria);\n return executeAction(request, context);\n } \n \n ","\n // \n\n import { AsyncResult } from '../async-result';\n import { DataServiceQuery } from '../DataServiceQuery';\n import { Recommendation, RecommendationCriteria, RecommendedElement } from '../Entities/CommerceTypes.g';\n import { IContext, IDataServiceRequest, IQueryResultSettings, NullResult } from '../Interfaces';\n import { executeAction } from '../retail-action';\n\n \n \n function recommendationsQuery(id?: string): DataServiceQuery {\n var key = (id) ? { Id: id } : null;\n return new DataServiceQuery(\"Recommendations\", \"Recommendation\", \"RecommendationClass\", key);\n }\n \n export function createCreateInput(entity: Recommendation): IDataServiceRequest {\n return recommendationsQuery().create(entity);\n }\n\n export function createRecommendationAsync(context: IContext, entity: Recommendation): AsyncResult {\n const request = createCreateInput(entity);\n return executeAction(request, context);\n }\n\n export function createUpdateInput(entity: Recommendation): IDataServiceRequest {\n return recommendationsQuery(entity.Id).update(entity);\n }\n\n export function updateAsync(context: IContext, entity: Recommendation): AsyncResult {\n const request = createUpdateInput(entity);\n return executeAction(request, context);\n }\n\n export function createDeleteAsync(entity: Recommendation): IDataServiceRequest {\n return recommendationsQuery(entity.Id).delete();\n }\n\n export function deleteAsync(context: IContext, entity: Recommendation): AsyncResult {\n const request = createDeleteAsync(entity);\n return executeAction(request, context);\n }\n\n export function createReadAsync(id: string): IDataServiceRequest {\n return recommendationsQuery(id).read();\n }\n\n export function readAsync(context: IContext, id: string): AsyncResult {\n const request = createReadAsync(id);\n return executeAction(request, context);\n }\n\n export function createReadAllAsync(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n return recommendationsQuery().resultSettings(queryResultSettings).read();\n }\n\n export function readAllAsync(context: IContext): AsyncResult {\n const request = createReadAllAsync(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetElementsInput(queryResultSettings: IQueryResultSettings, id: string, recommendationCriteria?: RecommendationCriteria | null): IDataServiceRequest { \n const query = recommendationsQuery(id).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetElements', true, \n 'RecommendedElementClass'\n , 'true', {bypassCache: 'none', returnEntity: 'RecommendedElement'}, {recommendationCriteria: recommendationCriteria });\n } \n \n export function getElementsAsync(context: IContext, id: string, recommendationCriteria?: RecommendationCriteria | null):AsyncResult {\n const request = createGetElementsInput(context.queryResultSettings, id, recommendationCriteria);\n return executeAction(request, context);\n } \n \n ","\n // \n\n import { AsyncResult } from '../async-result';\n import { DataServiceQuery } from '../DataServiceQuery';\n import { SalesOrder, SalesOrderSearchCriteria, OrderSearchCriteria, FulfillmentLineSearchCriteria, FulfillmentLine, ReceiptRetrievalCriteria, Receipt, SearchReceiptCriteria, ElectronicAddress, ChannelReferenceLookupCriteria, OrderOriginatorSearchCriteria, OrderOriginator, SalesOrdersLookupCriteria, ShipFulfillmentLine, FulfillmentLineParameter, RejectFulfillmentLine, SalesInvoice, OrderInvoice, InvoiceSearchCriteria, InvoiceDetailsSearchCriteria, SalesLine, InvoicedSalesLinesSearchCriteria, PickAndPackSalesLineParameter, PickingList, FulfillmentLineUserAlerts, CommerceProperty, CheckInForOrderPickupConfirmation, SalesOrderConfirmedShipDateChange, OrderCancellationResult, PackingSlipData } from '../Entities/CommerceTypes.g';\n import { IContext, IDataServiceRequest, IQueryResultSettings, NullResult } from '../Interfaces';\n import { executeAction } from '../retail-action';\n\n \n \n function salesOrdersQuery(id?: string): DataServiceQuery {\n var key = (id) ? { Id: id } : null;\n return new DataServiceQuery(\"SalesOrders\", \"SalesOrder\", \"SalesOrderClass\", key);\n }\n \n export function createCreateInput(entity: SalesOrder): IDataServiceRequest {\n return salesOrdersQuery().create(entity);\n }\n\n export function createSalesOrderAsync(context: IContext, entity: SalesOrder): AsyncResult {\n const request = createCreateInput(entity);\n return executeAction(request, context);\n }\n\n export function createUpdateInput(entity: SalesOrder): IDataServiceRequest {\n return salesOrdersQuery(entity.Id).update(entity);\n }\n\n export function updateAsync(context: IContext, entity: SalesOrder): AsyncResult {\n const request = createUpdateInput(entity);\n return executeAction(request, context);\n }\n\n export function createDeleteAsync(entity: SalesOrder): IDataServiceRequest {\n return salesOrdersQuery(entity.Id).delete();\n }\n\n export function deleteAsync(context: IContext, entity: SalesOrder): AsyncResult {\n const request = createDeleteAsync(entity);\n return executeAction(request, context);\n }\n\n export function createReadAsync(id: string): IDataServiceRequest {\n return salesOrdersQuery(id).read();\n }\n\n export function readAsync(context: IContext, id: string): AsyncResult {\n const request = createReadAsync(id);\n return executeAction(request, context);\n }\n\n export function createReadAllAsync(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n return salesOrdersQuery().resultSettings(queryResultSettings).read();\n }\n\n export function readAllAsync(context: IContext): AsyncResult {\n const request = createReadAllAsync(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createSearchInput(queryResultSettings: IQueryResultSettings, salesOrderSearchCriteria?: SalesOrderSearchCriteria | null): IDataServiceRequest { \n const query = salesOrdersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('Search', true, \n 'SalesOrderClass'\n , 'true', {bypassCache: 'none', returnEntity: 'SalesOrder'}, {salesOrderSearchCriteria: salesOrderSearchCriteria });\n } \n \n export function searchAsync(context: IContext, salesOrderSearchCriteria?: SalesOrderSearchCriteria | null):AsyncResult {\n const request = createSearchInput(context.queryResultSettings, salesOrderSearchCriteria);\n return executeAction(request, context);\n } \n \n export function createSearchSalesTransactionsByReceiptIdInput(queryResultSettings: IQueryResultSettings, receiptId?: string | null): IDataServiceRequest { \n const query = salesOrdersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('SearchSalesTransactionsByReceiptId', true, \n 'SalesOrderClass'\n , 'true', {bypassCache: 'none', returnEntity: 'SalesOrder'}, {receiptId: receiptId });\n } \n \n export function searchSalesTransactionsByReceiptIdAsync(context: IContext, receiptId?: string | null):AsyncResult {\n const request = createSearchSalesTransactionsByReceiptIdInput(context.queryResultSettings, receiptId);\n return executeAction(request, context);\n } \n \n export function createSearchOrdersInput(queryResultSettings: IQueryResultSettings, orderSearchCriteria?: OrderSearchCriteria | null, nextPageToken?: string | null): IDataServiceRequest { \n const query = salesOrdersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('SearchOrders', true, \n 'SalesOrderClass'\n , 'true', {bypassCache: 'none', returnEntity: 'SalesOrder'}, {orderSearchCriteria: orderSearchCriteria, nextPageToken: nextPageToken });\n } \n \n export function searchOrdersAsync(context: IContext, orderSearchCriteria?: OrderSearchCriteria | null, nextPageToken?: string | null):AsyncResult {\n const request = createSearchOrdersInput(context.queryResultSettings, orderSearchCriteria, nextPageToken);\n return executeAction(request, context);\n } \n \n export function createGetFulfillmentLinesInput(queryResultSettings: IQueryResultSettings, fulfillmentLineSearchCriteria?: FulfillmentLineSearchCriteria | null): IDataServiceRequest { \n const query = salesOrdersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetFulfillmentLines', true, \n 'FulfillmentLineClass'\n , 'true', {bypassCache: 'none', returnEntity: 'FulfillmentLine'}, {fulfillmentLineSearchCriteria: fulfillmentLineSearchCriteria });\n } \n \n export function getFulfillmentLinesAsync(context: IContext, fulfillmentLineSearchCriteria?: FulfillmentLineSearchCriteria | null):AsyncResult {\n const request = createGetFulfillmentLinesInput(context.queryResultSettings, fulfillmentLineSearchCriteria);\n return executeAction(request, context);\n } \n \n export function createGetReceiptsInput(queryResultSettings: IQueryResultSettings, id: string, receiptRetrievalCriteria: ReceiptRetrievalCriteria | null, customerOrderType?: number): IDataServiceRequest { \n const query = salesOrdersQuery(id).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetReceipts', true, \n 'ReceiptClass'\n , 'true', {bypassCache: 'none', returnEntity: 'Receipt'}, {receiptRetrievalCriteria: receiptRetrievalCriteria, customerOrderType: customerOrderType });\n } \n \n export function getReceiptsAsync(context: IContext, id: string, receiptRetrievalCriteria: ReceiptRetrievalCriteria | null, customerOrderType?: number):AsyncResult {\n const request = createGetReceiptsInput(context.queryResultSettings, id, receiptRetrievalCriteria, customerOrderType);\n return executeAction(request, context);\n } \n \n export function createSendReceiptInput(searchCriteria?: SearchReceiptCriteria | null, recipientAddresses?: ElectronicAddress[] | null): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('SendReceipt', true, '', '', {bypassCache: 'get', returnEntity: ''}, {searchCriteria: searchCriteria, recipientAddresses: recipientAddresses });\n } \n \n export function sendReceiptAsync(context: IContext, searchCriteria?: SearchReceiptCriteria | null, recipientAddresses?: ElectronicAddress[] | null):AsyncResult {\n const request = createSendReceiptInput(searchCriteria, recipientAddresses);\n return executeAction(request, context);\n } \n \n export function createGetGiftReceiptsInput(queryResultSettings: IQueryResultSettings, id: string, salesLineNumbers: number[], receiptRetrievalCriteria?: ReceiptRetrievalCriteria | null): IDataServiceRequest { \n const query = salesOrdersQuery(id).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetGiftReceipts', true, \n 'ReceiptClass'\n , 'true', {bypassCache: 'none', returnEntity: 'Receipt'}, {SalesLineNumbers: salesLineNumbers, receiptRetrievalCriteria: receiptRetrievalCriteria });\n } \n \n export function getGiftReceiptsAsync(context: IContext, id: string, salesLineNumbers: number[], receiptRetrievalCriteria?: ReceiptRetrievalCriteria | null):AsyncResult {\n const request = createGetGiftReceiptsInput(context.queryResultSettings, id, salesLineNumbers, receiptRetrievalCriteria);\n return executeAction(request, context);\n } \n \n export function createGetByReceiptIdInput(queryResultSettings: IQueryResultSettings, receiptId?: string | null, orderStoreNumber?: string | null, orderTerminalId?: string | null): IDataServiceRequest { \n const query = salesOrdersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetByReceiptId', true, \n 'SalesOrderClass'\n , 'true', {bypassCache: 'none', returnEntity: 'SalesOrder'}, {receiptId: receiptId, orderStoreNumber: orderStoreNumber, orderTerminalId: orderTerminalId });\n } \n \n export function getByReceiptIdAsync(context: IContext, receiptId?: string | null, orderStoreNumber?: string | null, orderTerminalId?: string | null):AsyncResult {\n const request = createGetByReceiptIdInput(context.queryResultSettings, receiptId, orderStoreNumber, orderTerminalId);\n return executeAction(request, context);\n } \n \n export function createGetSalesOrderDetailsByTransactionIdInput(transactionId: string | null, searchLocationValue: number): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('GetSalesOrderDetailsByTransactionId', false, \n 'SalesOrderClass'\n , 'false', {bypassCache: 'none', returnEntity: 'SalesOrder'}, {transactionId: transactionId, searchLocationValue: searchLocationValue });\n } \n \n export function getSalesOrderDetailsByTransactionIdAsync(context: IContext, transactionId: string | null, searchLocationValue: number):AsyncResult {\n const request = createGetSalesOrderDetailsByTransactionIdInput(transactionId, searchLocationValue);\n return executeAction(request, context);\n } \n \n export function createGetSalesOrderDetailsBySalesIdInput(salesId?: string | null): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('GetSalesOrderDetailsBySalesId', false, \n 'SalesOrderClass'\n , 'false', {bypassCache: 'none', returnEntity: 'SalesOrder'}, {salesId: salesId });\n } \n \n export function getSalesOrderDetailsBySalesIdAsync(context: IContext, salesId?: string | null):AsyncResult {\n const request = createGetSalesOrderDetailsBySalesIdInput(salesId);\n return executeAction(request, context);\n } \n \n export function createGetOrderByChannelReferenceLookupCriteriaInput(channelReferenceLookupCriteria?: ChannelReferenceLookupCriteria | null): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('GetOrderByChannelReferenceLookupCriteria', true, \n 'SalesOrderClass'\n , 'false', {bypassCache: 'none', returnEntity: 'SalesOrder'}, {channelReferenceLookupCriteria: channelReferenceLookupCriteria });\n } \n \n export function getOrderByChannelReferenceLookupCriteriaAsync(context: IContext, channelReferenceLookupCriteria?: ChannelReferenceLookupCriteria | null):AsyncResult {\n const request = createGetOrderByChannelReferenceLookupCriteriaInput(channelReferenceLookupCriteria);\n return executeAction(request, context);\n } \n \n export function createGetSalesOrderDetailsByQuotationIdInput(quotationId?: string | null): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('GetSalesOrderDetailsByQuotationId', false, \n 'SalesOrderClass'\n , 'false', {bypassCache: 'none', returnEntity: 'SalesOrder'}, {quotationId: quotationId });\n } \n \n export function getSalesOrderDetailsByQuotationIdAsync(context: IContext, quotationId?: string | null):AsyncResult {\n const request = createGetSalesOrderDetailsByQuotationIdInput(quotationId);\n return executeAction(request, context);\n } \n \n export function createGetOrderOriginatorsInput(queryResultSettings: IQueryResultSettings, orderOriginatorSearchCriteria?: OrderOriginatorSearchCriteria | null): IDataServiceRequest { \n const query = salesOrdersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetOrderOriginators', true, \n 'OrderOriginatorClass'\n , 'true', {bypassCache: 'none', returnEntity: 'OrderOriginator'}, {orderOriginatorSearchCriteria: orderOriginatorSearchCriteria });\n } \n \n export function getOrderOriginatorsAsync(context: IContext, orderOriginatorSearchCriteria?: OrderOriginatorSearchCriteria | null):AsyncResult {\n const request = createGetOrderOriginatorsInput(context.queryResultSettings, orderOriginatorSearchCriteria);\n return executeAction(request, context);\n } \n \n export function createGetSalesOrdersByLookupCriteriaInput(queryResultSettings: IQueryResultSettings, salesOrdersLookupCriteria?: SalesOrdersLookupCriteria | null): IDataServiceRequest { \n const query = salesOrdersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetSalesOrdersByLookupCriteria', true, \n 'SalesOrderClass'\n , 'true', {bypassCache: 'none', returnEntity: 'SalesOrder'}, {salesOrdersLookupCriteria: salesOrdersLookupCriteria });\n } \n \n export function getSalesOrdersByLookupCriteriaAsync(context: IContext, salesOrdersLookupCriteria?: SalesOrdersLookupCriteria | null):AsyncResult {\n const request = createGetSalesOrdersByLookupCriteriaInput(context.queryResultSettings, salesOrdersLookupCriteria);\n return executeAction(request, context);\n } \n \n export function createShipFulfillmentLinesInput(shipFulfillmentLines?: ShipFulfillmentLine[] | null): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('ShipFulfillmentLines', true, '', '', {bypassCache: 'get', returnEntity: ''}, {ShipFulfillmentLines: shipFulfillmentLines });\n } \n \n export function shipFulfillmentLinesAsync(context: IContext, shipFulfillmentLines?: ShipFulfillmentLine[] | null):AsyncResult {\n const request = createShipFulfillmentLinesInput(shipFulfillmentLines);\n return executeAction(request, context);\n } \n \n export function createAcceptFulfillmentLinesInput(fulfillmentLineParameter?: FulfillmentLineParameter[] | null): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('AcceptFulfillmentLines', true, '', '', {bypassCache: 'get', returnEntity: ''}, {FulfillmentLineParameter: fulfillmentLineParameter });\n } \n \n export function acceptFulfillmentLinesAsync(context: IContext, fulfillmentLineParameter?: FulfillmentLineParameter[] | null):AsyncResult {\n const request = createAcceptFulfillmentLinesInput(fulfillmentLineParameter);\n return executeAction(request, context);\n } \n \n export function createPickFulfillmentLinesInput(fulfillmentLineParameter?: FulfillmentLineParameter[] | null): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('PickFulfillmentLines', true, '', '', {bypassCache: 'get', returnEntity: ''}, {FulfillmentLineParameter: fulfillmentLineParameter });\n } \n \n export function pickFulfillmentLinesAsync(context: IContext, fulfillmentLineParameter?: FulfillmentLineParameter[] | null):AsyncResult {\n const request = createPickFulfillmentLinesInput(fulfillmentLineParameter);\n return executeAction(request, context);\n } \n \n export function createPackFulfillmentLinesInput(fulfillmentLineParameter?: FulfillmentLineParameter[] | null): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('PackFulfillmentLines', true, '', '', {bypassCache: 'get', returnEntity: ''}, {FulfillmentLineParameter: fulfillmentLineParameter });\n } \n \n export function packFulfillmentLinesAsync(context: IContext, fulfillmentLineParameter?: FulfillmentLineParameter[] | null):AsyncResult {\n const request = createPackFulfillmentLinesInput(fulfillmentLineParameter);\n return executeAction(request, context);\n } \n \n export function createMarkFulfillmentLinesAsPackedInput(fulfillmentLineParameter?: FulfillmentLineParameter[] | null): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('MarkFulfillmentLinesAsPacked', true, '', 'false', {bypassCache: 'get', returnEntity: ''}, {FulfillmentLineParameter: fulfillmentLineParameter });\n } \n \n export function markFulfillmentLinesAsPackedAsync(context: IContext, fulfillmentLineParameter?: FulfillmentLineParameter[] | null):AsyncResult {\n const request = createMarkFulfillmentLinesAsPackedInput(fulfillmentLineParameter);\n return executeAction(request, context);\n } \n \n export function createMarkAsPickedInput(fulfillmentLineParameter?: FulfillmentLineParameter[] | null): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('MarkAsPicked', true, '', '', {bypassCache: 'get', returnEntity: ''}, {FulfillmentLineParameter: fulfillmentLineParameter });\n } \n \n export function markAsPickedAsync(context: IContext, fulfillmentLineParameter?: FulfillmentLineParameter[] | null):AsyncResult {\n const request = createMarkAsPickedInput(fulfillmentLineParameter);\n return executeAction(request, context);\n } \n \n export function createGetFulfillmentPickingListsInput(queryResultSettings: IQueryResultSettings, pickingListFulfillmentLine?: FulfillmentLineParameter[] | null, hardwareProfileId?: string | null): IDataServiceRequest { \n const query = salesOrdersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetFulfillmentPickingLists', true, \n 'ReceiptClass'\n , 'true', {bypassCache: 'none', returnEntity: 'Receipt'}, {pickingListFulfillmentLine: pickingListFulfillmentLine, hardwareProfileId: hardwareProfileId });\n } \n \n export function getFulfillmentPickingListsAsync(context: IContext, pickingListFulfillmentLine?: FulfillmentLineParameter[] | null, hardwareProfileId?: string | null):AsyncResult {\n const request = createGetFulfillmentPickingListsInput(context.queryResultSettings, pickingListFulfillmentLine, hardwareProfileId);\n return executeAction(request, context);\n } \n \n export function createGetFulfillmentPackingSlipsInput(queryResultSettings: IQueryResultSettings, packFulfillmentLines?: FulfillmentLineParameter[] | null, hardwareProfileId?: string | null): IDataServiceRequest { \n const query = salesOrdersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetFulfillmentPackingSlips', true, \n 'ReceiptClass'\n , 'true', {bypassCache: 'none', returnEntity: 'Receipt'}, {packFulfillmentLines: packFulfillmentLines, hardwareProfileId: hardwareProfileId });\n } \n \n export function getFulfillmentPackingSlipsAsync(context: IContext, packFulfillmentLines?: FulfillmentLineParameter[] | null, hardwareProfileId?: string | null):AsyncResult {\n const request = createGetFulfillmentPackingSlipsInput(context.queryResultSettings, packFulfillmentLines, hardwareProfileId);\n return executeAction(request, context);\n } \n \n export function createGetFulfillmentPackingSlipsByIdInput(queryResultSettings: IQueryResultSettings, salesId?: string | null, packingSlipId?: string | null, hardwareProfileId?: string | null): IDataServiceRequest { \n const query = salesOrdersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetFulfillmentPackingSlipsById', true, \n 'ReceiptClass'\n , 'true', {bypassCache: 'none', returnEntity: 'Receipt'}, {salesId: salesId, PackingSlipId: packingSlipId, hardwareProfileId: hardwareProfileId });\n } \n \n export function getFulfillmentPackingSlipsByIdAsync(context: IContext, salesId?: string | null, packingSlipId?: string | null, hardwareProfileId?: string | null):AsyncResult {\n const request = createGetFulfillmentPackingSlipsByIdInput(context.queryResultSettings, salesId, packingSlipId, hardwareProfileId);\n return executeAction(request, context);\n } \n \n export function createRejectFulfillmentLinesInput(rejectFulfillmentLines?: RejectFulfillmentLine[] | null): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('RejectFulfillmentLines', true, '', '', {bypassCache: 'get', returnEntity: ''}, {RejectFulfillmentLines: rejectFulfillmentLines });\n } \n \n export function rejectFulfillmentLinesAsync(context: IContext, rejectFulfillmentLines?: RejectFulfillmentLine[] | null):AsyncResult {\n const request = createRejectFulfillmentLinesInput(rejectFulfillmentLines);\n return executeAction(request, context);\n } \n \n export function createGetInvoicesBySalesIdInput(queryResultSettings: IQueryResultSettings, salesId?: string | null): IDataServiceRequest { \n const query = salesOrdersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetInvoicesBySalesId', true, \n 'SalesInvoiceClass'\n , 'true', {bypassCache: 'none', returnEntity: 'SalesInvoice'}, {salesId: salesId });\n } \n \n export function getInvoicesBySalesIdAsync(context: IContext, salesId?: string | null):AsyncResult {\n const request = createGetInvoicesBySalesIdInput(context.queryResultSettings, salesId);\n return executeAction(request, context);\n } \n \n export function createGetOrderInvoicesInput(queryResultSettings: IQueryResultSettings, customerId?: string | null): IDataServiceRequest { \n const query = salesOrdersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetOrderInvoices', true, \n 'OrderInvoiceClass'\n , 'true', {bypassCache: 'none', returnEntity: 'OrderInvoice'}, {customerId: customerId });\n } \n \n export function getOrderInvoicesAsync(context: IContext, customerId?: string | null):AsyncResult {\n const request = createGetOrderInvoicesInput(context.queryResultSettings, customerId);\n return executeAction(request, context);\n } \n \n export function createGetInvoicesInput(queryResultSettings: IQueryResultSettings, invoiceSearchCriteria?: InvoiceSearchCriteria | null): IDataServiceRequest { \n const query = salesOrdersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetInvoices', true, \n 'OrderInvoiceClass'\n , 'true', {bypassCache: 'none', returnEntity: 'OrderInvoice'}, {invoiceSearchCriteria: invoiceSearchCriteria });\n } \n \n export function getInvoicesAsync(context: IContext, invoiceSearchCriteria?: InvoiceSearchCriteria | null):AsyncResult {\n const request = createGetInvoicesInput(context.queryResultSettings, invoiceSearchCriteria);\n return executeAction(request, context);\n } \n \n export function createGetInvoiceDetailsInput(invoiceDetailsSearchCriteria?: InvoiceDetailsSearchCriteria | null): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('GetInvoiceDetails', true, \n 'SalesInvoiceClass'\n , 'false', {bypassCache: 'none', returnEntity: 'SalesInvoice'}, {invoiceDetailsSearchCriteria: invoiceDetailsSearchCriteria });\n } \n \n export function getInvoiceDetailsAsync(context: IContext, invoiceDetailsSearchCriteria?: InvoiceDetailsSearchCriteria | null):AsyncResult {\n const request = createGetInvoiceDetailsInput(invoiceDetailsSearchCriteria);\n return executeAction(request, context);\n } \n \n export function createGetInvoicedSalesLinesBySalesIdsInput(queryResultSettings: IQueryResultSettings, salesIds?: string[] | null): IDataServiceRequest { \n const query = salesOrdersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetInvoicedSalesLinesBySalesIds', true, \n 'SalesLineClass'\n , 'true', {bypassCache: 'none', returnEntity: 'SalesLine'}, {salesIds: salesIds });\n } \n \n export function getInvoicedSalesLinesBySalesIdsAsync(context: IContext, salesIds?: string[] | null):AsyncResult {\n const request = createGetInvoicedSalesLinesBySalesIdsInput(context.queryResultSettings, salesIds);\n return executeAction(request, context);\n } \n \n export function createSearchInvoicedSalesLinesInput(queryResultSettings: IQueryResultSettings, invoicedSalesLinesSearchCriteria?: InvoicedSalesLinesSearchCriteria | null): IDataServiceRequest { \n const query = salesOrdersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('SearchInvoicedSalesLines', true, \n 'SalesLineClass'\n , 'true', {bypassCache: 'none', returnEntity: 'SalesLine'}, {invoicedSalesLinesSearchCriteria: invoicedSalesLinesSearchCriteria });\n } \n \n export function searchInvoicedSalesLinesAsync(context: IContext, invoicedSalesLinesSearchCriteria?: InvoicedSalesLinesSearchCriteria | null):AsyncResult {\n const request = createSearchInvoicedSalesLinesInput(context.queryResultSettings, invoicedSalesLinesSearchCriteria);\n return executeAction(request, context);\n } \n \n export function createCreatePickingListInput(salesId?: string | null): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('CreatePickingList', true, '', '', {bypassCache: 'get', returnEntity: ''}, {salesId: salesId });\n } \n \n export function createPickingListAsync(context: IContext, salesId?: string | null):AsyncResult {\n const request = createCreatePickingListInput(salesId);\n return executeAction(request, context);\n } \n \n export function createCreatePickingListForItemsInput(salesId?: string | null, pickAndPackSalesLineParameters?: PickAndPackSalesLineParameter[] | null): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('CreatePickingListForItems', true, '', 'false', {bypassCache: 'get', returnEntity: ''}, {salesId: salesId, pickAndPackSalesLineParameters: pickAndPackSalesLineParameters });\n } \n \n export function createPickingListForItemsAsync(context: IContext, salesId?: string | null, pickAndPackSalesLineParameters?: PickAndPackSalesLineParameter[] | null):AsyncResult {\n const request = createCreatePickingListForItemsInput(salesId, pickAndPackSalesLineParameters);\n return executeAction(request, context);\n } \n \n export function createGetPickingListsInput(queryResultSettings: IQueryResultSettings, id: string, ): IDataServiceRequest { \n const query = salesOrdersQuery(id).resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetPickingLists', false, \n 'PickingListClass'\n , 'true', {bypassCache: 'none', returnEntity: 'PickingList'}, { });\n } \n \n export function getPickingListsAsync(context: IContext, id: string):AsyncResult {\n const request = createGetPickingListsInput(context.queryResultSettings, id);\n return executeAction(request, context);\n } \n \n export function createCreatePackingSlipInput(salesId?: string | null): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('CreatePackingSlip', true, '', '', {bypassCache: 'get', returnEntity: ''}, {salesId: salesId });\n } \n \n export function createPackingSlipAsync(context: IContext, salesId?: string | null):AsyncResult {\n const request = createCreatePackingSlipInput(salesId);\n return executeAction(request, context);\n } \n \n export function createGetFulfillmentLineUserAlertsInput(queryResultSettings: IQueryResultSettings, fulfillmentLineParameter: FulfillmentLineParameter[] | null, fulfillmentOperation: number): IDataServiceRequest { \n const query = salesOrdersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetFulfillmentLineUserAlerts', true, \n 'FulfillmentLineUserAlertsClass'\n , 'true', {bypassCache: 'none', returnEntity: 'FulfillmentLineUserAlerts'}, {FulfillmentLineParameter: fulfillmentLineParameter, FulfillmentOperation: fulfillmentOperation });\n } \n \n export function getFulfillmentLineUserAlertsAsync(context: IContext, fulfillmentLineParameter: FulfillmentLineParameter[] | null, fulfillmentOperation: number):AsyncResult {\n const request = createGetFulfillmentLineUserAlertsInput(context.queryResultSettings, fulfillmentLineParameter, fulfillmentOperation);\n return executeAction(request, context);\n } \n \n export function createCheckInForOrderPickupInput(channelId: number, packingSlipId?: string | null, channelReferenceId?: string | null, extensionProperties?: CommerceProperty[] | null): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('CheckInForOrderPickup', true, \n 'CheckInForOrderPickupConfirmationClass'\n , 'false', {bypassCache: 'get', returnEntity: 'CheckInForOrderPickupConfirmation'}, {channelId: channelId, PackingSlipId: packingSlipId, channelReferenceId: channelReferenceId, extensionProperties: extensionProperties });\n } \n \n export function checkInForOrderPickupAsync(context: IContext, channelId: number, packingSlipId?: string | null, channelReferenceId?: string | null, extensionProperties?: CommerceProperty[] | null):AsyncResult {\n const request = createCheckInForOrderPickupInput(channelId, packingSlipId, channelReferenceId, extensionProperties);\n return executeAction(request, context);\n } \n \n export function createUpdateConfirmedShipDateInput(confirmedShipDateChange?: SalesOrderConfirmedShipDateChange | null): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('UpdateConfirmedShipDate', true, \n 'SalesOrderClass'\n , 'false', {bypassCache: 'get', returnEntity: 'SalesOrder'}, {confirmedShipDateChange: confirmedShipDateChange });\n } \n \n export function updateConfirmedShipDateAsync(context: IContext, confirmedShipDateChange?: SalesOrderConfirmedShipDateChange | null):AsyncResult {\n const request = createUpdateConfirmedShipDateInput(confirmedShipDateChange);\n return executeAction(request, context);\n } \n \n export function createRequestCancellationInput(salesOrdersLookupCriteria?: SalesOrdersLookupCriteria | null): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('RequestCancellation', true, \n 'OrderCancellationResultClass'\n , 'false', {bypassCache: 'get', returnEntity: 'OrderCancellationResult'}, {salesOrdersLookupCriteria: salesOrdersLookupCriteria });\n } \n \n export function requestCancellationAsync(context: IContext, salesOrdersLookupCriteria?: SalesOrdersLookupCriteria | null):AsyncResult {\n const request = createRequestCancellationInput(salesOrdersLookupCriteria);\n return executeAction(request, context);\n } \n \n export function createConfirmInput(salesId?: string | null): IDataServiceRequest { \n const query = salesOrdersQuery();\n return query.createDataServiceRequestForOperation('Confirm', true, \n 'SalesOrderClass'\n , 'false', {bypassCache: 'get', returnEntity: 'SalesOrder'}, {salesId: salesId });\n } \n \n export function confirmAsync(context: IContext, salesId?: string | null):AsyncResult {\n const request = createConfirmInput(salesId);\n return executeAction(request, context);\n } \n \n export function createGetPackingSlipsDataInput(queryResultSettings: IQueryResultSettings, salesId?: string | null): IDataServiceRequest { \n const query = salesOrdersQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetPackingSlipsData', false, \n 'PackingSlipDataClass'\n , 'true', {bypassCache: 'none', returnEntity: 'PackingSlipData'}, {salesId: salesId });\n } \n \n export function getPackingSlipsDataAsync(context: IContext, salesId?: string | null):AsyncResult {\n const request = createGetPackingSlipsDataInput(context.queryResultSettings, salesId);\n return executeAction(request, context);\n } \n \n ","\n // \n\n import { AsyncResult } from '../async-result';\n import { DataServiceQuery } from '../DataServiceQuery';\n import { ScanResult } from '../Entities/CommerceTypes.g';\n import { IContext, IDataServiceRequest, IQueryResultSettings, NullResult } from '../Interfaces';\n import { executeAction } from '../retail-action';\n\n \n \n function scanResultsQuery(scannedText?: string): DataServiceQuery {\n var key = (scannedText) ? { ScannedText: scannedText } : null;\n return new DataServiceQuery(\"ScanResults\", \"ScanResult\", \"ScanResultClass\", key);\n }\n \n export function createCreateInput(entity: ScanResult): IDataServiceRequest {\n return scanResultsQuery().create(entity);\n }\n\n export function createScanResultAsync(context: IContext, entity: ScanResult): AsyncResult {\n const request = createCreateInput(entity);\n return executeAction(request, context);\n }\n\n export function createUpdateInput(entity: ScanResult): IDataServiceRequest {\n return scanResultsQuery(entity.ScannedText).update(entity);\n }\n\n export function updateAsync(context: IContext, entity: ScanResult): AsyncResult {\n const request = createUpdateInput(entity);\n return executeAction(request, context);\n }\n\n export function createDeleteAsync(entity: ScanResult): IDataServiceRequest {\n return scanResultsQuery(entity.ScannedText).delete();\n }\n\n export function deleteAsync(context: IContext, entity: ScanResult): AsyncResult {\n const request = createDeleteAsync(entity);\n return executeAction(request, context);\n }\n\n export function createReadAsync(scannedText: string): IDataServiceRequest {\n return scanResultsQuery(scannedText).read();\n }\n\n export function readAsync(context: IContext, scannedText: string): AsyncResult {\n const request = createReadAsync(scannedText);\n return executeAction(request, context);\n }\n\n export function createReadAllAsync(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n return scanResultsQuery().resultSettings(queryResultSettings).read();\n }\n\n export function readAllAsync(context: IContext): AsyncResult {\n const request = createReadAllAsync(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n ","\n // \n import { AsyncResult } from '../async-result';\n import { DataServiceQuery } from '../DataServiceQuery';\n import { DeliveryOption, Affiliation, ReasonCodeLine, DiscountsSearchCriteria, Promotion, PaymentMerchantInformation, StoreSafe, ShiftReconciliationLineRetrievalCriteria, ShiftReconciliationLine, ReceiptMask, SearchSuggestionCriteria, SearchSuggestion, DeviceActivationResult, CreateHardwareStationTokenResult, ValidateHardwareStationTokenResult, Barcode, ButtonGrid, GetButtonGridsByIdsCriteria, MediaBlob, CardTypeInfo, CityInfo, CountryRegionInfo, OnlineChannel, CountyInfo, CreditMemo, TerminalDataDownloadRequestInfo, DataDownloadParameters, TerminalDataUploadRequestInfo, DataUploadParameters, DownloadSession, OfflineTerminalState, NumberSequenceSeedData, ReceiptNumberResetInfo, LoyaltyRewardPointActivity, CurrencyRequest, CurrencyAmount, DiscountCode, DistrictInfo, HardwareStationProfile, HardwareProfile, LocalizedString, OperationPermission, ReasonCode, CommerceProperty, ReportDataSet, IncomeExpenseAccount, StateProvinceInfo, ZipCodeInfo, KitTransaction, LoyaltyCard, LoyaltyCardSearchCriteria, LoyaltyCardTransaction, TransactionSearchCriteria, Transaction, GiftCard, NonSalesTransaction, DropAndDeclareTransaction, TaxOverride, CustomerBalances, NameValuePair, LinkToExistingCustomerResult, OfflineSyncStatsLine, Shift, StorageAccessToken, Framework, TaskGuidesSearchResult, Recording, AttributeDefinitionCriteria, AttributeDefinition, AttributeGroupDefinitionCriteria, AttributeGroupDefinition, FiscalTransaction, SalesOrder, AuditEvent, InventoryAvailableToPromise, NotificationItem, PurchaseHistorySearchCriteria, PurchaseHistory, FiscalIntegrationDocumentRetrievalCriteria, FiscalIntegrationDocument, FiscalIntegrationRegistrationResult, FiscalIntegrationRegistrationProcess, FiscalIntegrationSupportedEvents, FiscalIntegrationTechnicalProfile, FiscalIntegrationFiscalRegistrationProcessSummary, FiscalIntegrationTechnicalProfileSearchCriteria, FiscalIntegrationServiceInfo, FiscalIntegrationServiceStatus, FiscalIntegrationServiceCommunicationResult, FeatureState, FiscalIntegrationSequentialSignatureData, PickupTimeslotAvailabilitySearchCriteria, PickupTimeslotAvailability, Cart, VendorSearchCriteria, Vendor, VendorValidationResult, BusinessVerticalsIndia, OperationalInsightsConfiguration, CashDeclaration, CustomerGroup, ChannelDeliveryOptionConfiguration, ChannelIdentity, OnlineChannelAzureB2CConfiguration, ChannelSearchCriteria, EnvironmentConfiguration, OrderManagementConfiguration, SearchConfiguration, ExtensionPackageDefinition, ExtensionProfile, DeviceConfiguration, VisualProfile, SupportedLanguage, SalesTaxGroup, TenderType, UnitOfMeasure, Currency, CommissionSalesGroup, ChannelInventoryConfiguration, ChannelMerchandisingConfiguration, ChannelPurchaseConfiguration, InventoryJournalNameSearchCriteria, InventoryJournalName, Device, UserDefinedSecretCertificateResult, ExtensibleEnumerationContainer, AddressPurpose, ReturnPolicy, EmailReceiptSettings, FiscalIntegrationComplianceResult, } from '../Entities/CommerceTypes.g';\n import { IContext, IDataServiceRequest, IQueryResultSettings, NullResult } from '../Interfaces';\n import { executeAction } from '../retail-action';\n\n function storeQuery(): DataServiceQuery {\n return new DataServiceQuery();\n }\n \n export function createGetDeliveryOptionsInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetDeliveryOptions', false, \n 'DeliveryOptionClass'\n , 'true', { bypassCache: 'none', returnEntity: 'DeliveryOption'}, { });\n }\n\n export function getDeliveryOptionsAsync(context: IContext):AsyncResult {\n const request = createGetDeliveryOptionsInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createRoundAmountByTenderTypeInput(amount: number, tenderTypeId?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('RoundAmountByTenderType', true, '', 'false', { bypassCache: 'get', returnEntity: ''}, {amount: amount, tenderTypeId: tenderTypeId });\n }\n\n export function roundAmountByTenderTypeAsync(context: IContext, amount: number, tenderTypeId?: string | null):AsyncResult {\n const request = createRoundAmountByTenderTypeInput(amount, tenderTypeId);\n return executeAction(request, context);\n }\n \n export function createGetAffiliationsByNameInput(queryResultSettings: IQueryResultSettings, affiliationNames?: string[] | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetAffiliationsByName', true, \n 'AffiliationClass'\n , 'true', { bypassCache: 'none', returnEntity: 'Affiliation'}, {affiliationNames: affiliationNames });\n }\n\n export function getAffiliationsByNameAsync(context: IContext, affiliationNames?: string[] | null):AsyncResult {\n const request = createGetAffiliationsByNameInput(context.queryResultSettings, affiliationNames);\n return executeAction(request, context);\n }\n \n export function createVoidSuspendedTransactionsInput(suspendedCartIds?: string[] | null, shiftId?: number | null, shiftTerminalId?: string | null, reasonCodeLines?: ReasonCodeLine[] | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('VoidSuspendedTransactions', true, '', '', { bypassCache: 'get', returnEntity: ''}, {suspendedCartIds: suspendedCartIds, shiftId: shiftId, shiftTerminalId: shiftTerminalId, reasonCodeLines: reasonCodeLines });\n }\n\n export function voidSuspendedTransactionsAsync(context: IContext, suspendedCartIds?: string[] | null, shiftId?: number | null, shiftTerminalId?: string | null, reasonCodeLines?: ReasonCodeLine[] | null):AsyncResult {\n const request = createVoidSuspendedTransactionsInput(suspendedCartIds, shiftId, shiftTerminalId, reasonCodeLines);\n return executeAction(request, context);\n }\n \n export function createGetAvailablePromotionsInput(queryResultSettings: IQueryResultSettings, searchCriteria?: DiscountsSearchCriteria | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetAvailablePromotions', true, \n 'PromotionClass'\n , 'true', { bypassCache: 'none', returnEntity: 'Promotion'}, {searchCriteria: searchCriteria });\n }\n\n export function getAvailablePromotionsAsync(context: IContext, searchCriteria?: DiscountsSearchCriteria | null):AsyncResult {\n const request = createGetAvailablePromotionsInput(context.queryResultSettings, searchCriteria);\n return executeAction(request, context);\n }\n \n export function createGetMerchantPropertiesByServiceAccountIdInput(queryResultSettings: IQueryResultSettings, serviceAccountIds?: string[] | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetMerchantPropertiesByServiceAccountId', true, \n 'PaymentMerchantInformationClass'\n , 'true', { bypassCache: 'none', returnEntity: 'PaymentMerchantInformation'}, {serviceAccountIds: serviceAccountIds });\n }\n\n export function getMerchantPropertiesByServiceAccountIdAsync(context: IContext, serviceAccountIds?: string[] | null):AsyncResult {\n const request = createGetMerchantPropertiesByServiceAccountIdInput(context.queryResultSettings, serviceAccountIds);\n return executeAction(request, context);\n }\n \n export function createGetStoreSafesInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetStoreSafes', true, \n 'StoreSafeClass'\n , 'true', { bypassCache: 'none', returnEntity: 'StoreSafe'}, { });\n }\n\n export function getStoreSafesAsync(context: IContext):AsyncResult {\n const request = createGetStoreSafesInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetShiftReconciliationLinesInput(queryResultSettings: IQueryResultSettings, shiftReconciliationLineRetrievalCriteria?: ShiftReconciliationLineRetrievalCriteria | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetShiftReconciliationLines', true, \n 'ShiftReconciliationLineClass'\n , 'true', { bypassCache: 'none', returnEntity: 'ShiftReconciliationLine'}, {shiftReconciliationLineRetrievalCriteria: shiftReconciliationLineRetrievalCriteria });\n }\n\n export function getShiftReconciliationLinesAsync(context: IContext, shiftReconciliationLineRetrievalCriteria?: ShiftReconciliationLineRetrievalCriteria | null):AsyncResult {\n const request = createGetShiftReconciliationLinesInput(context.queryResultSettings, shiftReconciliationLineRetrievalCriteria);\n return executeAction(request, context);\n }\n \n export function createReconcileLinesInput(shiftReconciliationLines?: ShiftReconciliationLine[] | null, description?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('ReconcileLines', true, '', '', { bypassCache: 'get', returnEntity: ''}, {shiftReconciliationLines: shiftReconciliationLines, Description: description });\n }\n\n export function reconcileLinesAsync(context: IContext, shiftReconciliationLines?: ShiftReconciliationLine[] | null, description?: string | null):AsyncResult {\n const request = createReconcileLinesInput(shiftReconciliationLines, description);\n return executeAction(request, context);\n }\n \n export function createUndoReconciliationInput(shiftReconciliationLines?: ShiftReconciliationLine[] | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('UndoReconciliation', true, '', '', { bypassCache: 'get', returnEntity: ''}, {shiftReconciliationLines: shiftReconciliationLines });\n }\n\n export function undoReconciliationAsync(context: IContext, shiftReconciliationLines?: ShiftReconciliationLine[] | null):AsyncResult {\n const request = createUndoReconciliationInput(shiftReconciliationLines);\n return executeAction(request, context);\n }\n \n export function createGetReceiptMasksInput(queryResultSettings: IQueryResultSettings, receiptTransactionType?: number | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetReceiptMasks', true, \n 'ReceiptMaskClass'\n , 'true', { bypassCache: 'none', returnEntity: 'ReceiptMask'}, {receiptTransactionType: receiptTransactionType });\n }\n\n export function getReceiptMasksAsync(context: IContext, receiptTransactionType?: number | null):AsyncResult {\n const request = createGetReceiptMasksInput(context.queryResultSettings, receiptTransactionType);\n return executeAction(request, context);\n }\n \n export function createGetSearchSuggestionsInput(queryResultSettings: IQueryResultSettings, searchSuggestionCriteria?: SearchSuggestionCriteria | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetSearchSuggestions', true, \n 'SearchSuggestionClass'\n , 'true', { bypassCache: 'none', returnEntity: 'SearchSuggestion'}, {searchSuggestionCriteria: searchSuggestionCriteria });\n }\n\n export function getSearchSuggestionsAsync(context: IContext, searchSuggestionCriteria?: SearchSuggestionCriteria | null):AsyncResult {\n const request = createGetSearchSuggestionsInput(context.queryResultSettings, searchSuggestionCriteria);\n return executeAction(request, context);\n }\n \n export function createStartSessionInput(transactionId: string | null, overrideSession?: boolean): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('StartSession', true, '', '', { bypassCache: 'get', returnEntity: ''}, {transactionId: transactionId, overrideSession: overrideSession });\n }\n\n export function startSessionAsync(context: IContext, transactionId: string | null, overrideSession?: boolean):AsyncResult {\n const request = createStartSessionInput(transactionId, overrideSession);\n return executeAction(request, context);\n }\n \n export function createEndSessionInput(transactionId?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('EndSession', true, '', '', { bypassCache: 'get', returnEntity: ''}, {transactionId: transactionId });\n }\n\n export function endSessionAsync(context: IContext, transactionId?: string | null):AsyncResult {\n const request = createEndSessionInput(transactionId);\n return executeAction(request, context);\n }\n \n export function createActivateDeviceInput(deviceNumber: string | null, terminalId: string | null, deviceId: string | null, forceActivate: boolean, deviceType?: number | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('ActivateDevice', true, \n 'DeviceActivationResultClass'\n , 'false', { bypassCache: 'get', returnEntity: 'DeviceActivationResult'}, {deviceNumber: deviceNumber, terminalId: terminalId, deviceId: deviceId, forceActivate: forceActivate, deviceType: deviceType });\n }\n\n export function activateDeviceAsync(context: IContext, deviceNumber: string | null, terminalId: string | null, deviceId: string | null, forceActivate: boolean, deviceType?: number | null):AsyncResult {\n const request = createActivateDeviceInput(deviceNumber, terminalId, deviceId, forceActivate, deviceType);\n return executeAction(request, context);\n }\n \n export function createMassActivateDeviceInput(deviceNumber?: string | null, terminalId?: string | null, deviceId?: string | null, deviceType?: number | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('MassActivateDevice', true, \n 'DeviceActivationResultClass'\n , 'false', { bypassCache: 'get', returnEntity: 'DeviceActivationResult'}, {deviceNumber: deviceNumber, terminalId: terminalId, deviceId: deviceId, deviceType: deviceType });\n }\n\n export function massActivateDeviceAsync(context: IContext, deviceNumber?: string | null, terminalId?: string | null, deviceId?: string | null, deviceType?: number | null):AsyncResult {\n const request = createMassActivateDeviceInput(deviceNumber, terminalId, deviceId, deviceType);\n return executeAction(request, context);\n }\n \n export function createDeactivateDeviceInput(transactionId?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('DeactivateDevice', true, '', '', { bypassCache: 'get', returnEntity: ''}, {transactionId: transactionId });\n }\n\n export function deactivateDeviceAsync(context: IContext, transactionId?: string | null):AsyncResult {\n const request = createDeactivateDeviceInput(transactionId);\n return executeAction(request, context);\n }\n \n export function createCreateHardwareStationTokenInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('CreateHardwareStationToken', true, \n 'CreateHardwareStationTokenResultClass'\n , 'false', { bypassCache: 'get', returnEntity: 'CreateHardwareStationTokenResult'}, { });\n }\n\n export function createHardwareStationTokenAsync(context: IContext):AsyncResult {\n const request = createCreateHardwareStationTokenInput();\n return executeAction(request, context);\n }\n \n export function createValidateHardwareStationTokenInput(deviceNumber?: string | null, hardwareStationToken?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('ValidateHardwareStationToken', true, \n 'ValidateHardwareStationTokenResultClass'\n , 'false', { bypassCache: 'get', returnEntity: 'ValidateHardwareStationTokenResult'}, {deviceNumber: deviceNumber, hardwareStationToken: hardwareStationToken });\n }\n\n export function validateHardwareStationTokenAsync(context: IContext, deviceNumber?: string | null, hardwareStationToken?: string | null):AsyncResult {\n const request = createValidateHardwareStationTokenInput(deviceNumber, hardwareStationToken);\n return executeAction(request, context);\n }\n \n export function createGetBarcodeByIdInput(barcodeId?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetBarcodeById', true, \n 'BarcodeClass'\n , 'false', { bypassCache: 'none', returnEntity: 'Barcode'}, {barcodeId: barcodeId });\n }\n\n export function getBarcodeByIdAsync(context: IContext, barcodeId?: string | null):AsyncResult {\n const request = createGetBarcodeByIdInput(barcodeId);\n return executeAction(request, context);\n }\n \n export function createGetButtonGridByIdInput(buttonGridId?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetButtonGridById', true, \n 'ButtonGridClass'\n , 'false', { bypassCache: 'none', returnEntity: 'ButtonGrid'}, {buttonGridId: buttonGridId });\n }\n\n export function getButtonGridByIdAsync(context: IContext, buttonGridId?: string | null):AsyncResult {\n const request = createGetButtonGridByIdInput(buttonGridId);\n return executeAction(request, context);\n }\n \n export function createGetButtonGridsWithoutImageInput(queryResultSettings: IQueryResultSettings, height: number, width: number): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetButtonGridsWithoutImage', true, \n 'ButtonGridClass'\n , 'true', { bypassCache: 'none', returnEntity: 'ButtonGrid'}, {height: height, width: width });\n }\n\n export function getButtonGridsWithoutImageAsync(context: IContext, height: number, width: number):AsyncResult {\n const request = createGetButtonGridsWithoutImageInput(context.queryResultSettings, height, width);\n return executeAction(request, context);\n }\n \n export function createGetButtonGridsByIdsInput(queryResultSettings: IQueryResultSettings, getButtonGridsByIdsCriteria?: GetButtonGridsByIdsCriteria | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetButtonGridsByIds', true, \n 'ButtonGridClass'\n , 'true', { bypassCache: 'none', returnEntity: 'ButtonGrid'}, {getButtonGridsByIdsCriteria: getButtonGridsByIdsCriteria });\n }\n\n export function getButtonGridsByIdsAsync(context: IContext, getButtonGridsByIdsCriteria?: GetButtonGridsByIdsCriteria | null):AsyncResult {\n const request = createGetButtonGridsByIdsInput(context.queryResultSettings, getButtonGridsByIdsCriteria);\n return executeAction(request, context);\n }\n \n export function createGetImageBlobsByPictureIdsInput(queryResultSettings: IQueryResultSettings, pictureIds: number[]): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetImageBlobsByPictureIds', true, \n 'MediaBlobClass'\n , 'true', { bypassCache: 'none', returnEntity: 'MediaBlob'}, {pictureIds: pictureIds });\n }\n\n export function getImageBlobsByPictureIdsAsync(context: IContext, pictureIds: number[]):AsyncResult {\n const request = createGetImageBlobsByPictureIdsInput(context.queryResultSettings, pictureIds);\n return executeAction(request, context);\n }\n \n export function createGetCardTypesInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCardTypes', true, \n 'CardTypeInfoClass'\n , 'true', { bypassCache: 'none', returnEntity: 'CardTypeInfo'}, { });\n }\n\n export function getCardTypesAsync(context: IContext):AsyncResult {\n const request = createGetCardTypesInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createResolveCardTypesInput(queryResultSettings: IQueryResultSettings, cardNumberPrefix?: string | null, cardType?: number | null, paymentToken?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('ResolveCardTypes', true, \n 'CardTypeInfoClass'\n , 'true', { bypassCache: 'get', returnEntity: 'CardTypeInfo'}, {cardNumberPrefix: cardNumberPrefix, cardType: cardType, paymentToken: paymentToken });\n }\n\n export function resolveCardTypesAsync(context: IContext, cardNumberPrefix?: string | null, cardType?: number | null, paymentToken?: string | null):AsyncResult {\n const request = createResolveCardTypesInput(context.queryResultSettings, cardNumberPrefix, cardType, paymentToken);\n return executeAction(request, context);\n }\n \n export function createGetSupportedPaymentCardTypesInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetSupportedPaymentCardTypes', true, '', 'true', { bypassCache: 'none', returnEntity: ''}, { });\n }\n\n export function getSupportedPaymentCardTypesAsync(context: IContext):AsyncResult {\n const request = createGetSupportedPaymentCardTypesInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetCitiesInput(queryResultSettings: IQueryResultSettings, countryRegionId?: string | null, stateProvinceId?: string | null, countyId?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCities', true, \n 'CityInfoClass'\n , 'true', { bypassCache: 'none', returnEntity: 'CityInfo'}, {countryRegionId: countryRegionId, stateProvinceId: stateProvinceId, countyId: countyId });\n }\n\n export function getCitiesAsync(context: IContext, countryRegionId?: string | null, stateProvinceId?: string | null, countyId?: string | null):AsyncResult {\n const request = createGetCitiesInput(context.queryResultSettings, countryRegionId, stateProvinceId, countyId);\n return executeAction(request, context);\n }\n \n export function createGetCountryRegionsForShippingInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCountryRegionsForShipping', false, \n 'CountryRegionInfoClass'\n , 'true', { bypassCache: 'none', returnEntity: 'CountryRegionInfo'}, { });\n }\n\n export function getCountryRegionsForShippingAsync(context: IContext):AsyncResult {\n const request = createGetCountryRegionsForShippingInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetCountryRegionsByLanguageIdInput(queryResultSettings: IQueryResultSettings, languageId?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCountryRegionsByLanguageId', true, \n 'CountryRegionInfoClass'\n , 'true', { bypassCache: 'none', returnEntity: 'CountryRegionInfo'}, {languageId: languageId });\n }\n\n export function getCountryRegionsByLanguageIdAsync(context: IContext, languageId?: string | null):AsyncResult {\n const request = createGetCountryRegionsByLanguageIdInput(context.queryResultSettings, languageId);\n return executeAction(request, context);\n }\n \n export function createGetOnlineChannelInput(channelId: number): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetOnlineChannel', false, \n 'OnlineChannelClass'\n , 'false', { bypassCache: 'none', returnEntity: 'OnlineChannel'}, {channelId: channelId });\n }\n\n export function getOnlineChannelAsync(context: IContext, channelId: number):AsyncResult {\n const request = createGetOnlineChannelInput(channelId);\n return executeAction(request, context);\n }\n \n export function createGetCountiesInput(queryResultSettings: IQueryResultSettings, countryRegionId?: string | null, stateProvinceId?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCounties', true, \n 'CountyInfoClass'\n , 'true', { bypassCache: 'none', returnEntity: 'CountyInfo'}, {countryRegionId: countryRegionId, stateProvinceId: stateProvinceId });\n }\n\n export function getCountiesAsync(context: IContext, countryRegionId?: string | null, stateProvinceId?: string | null):AsyncResult {\n const request = createGetCountiesInput(context.queryResultSettings, countryRegionId, stateProvinceId);\n return executeAction(request, context);\n }\n \n export function createGetCreditMemoByIdInput(creditMemoId?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetCreditMemoById', true, \n 'CreditMemoClass'\n , 'false', { bypassCache: 'none', returnEntity: 'CreditMemo'}, {creditMemoId: creditMemoId });\n }\n\n export function getCreditMemoByIdAsync(context: IContext, creditMemoId?: string | null):AsyncResult {\n const request = createGetCreditMemoByIdInput(creditMemoId);\n return executeAction(request, context);\n }\n \n export function createGetDownloadIntervalInput(dataStoreName?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetDownloadInterval', true, '', 'false', { bypassCache: 'none', returnEntity: ''}, {dataStoreName: dataStoreName });\n }\n\n export function getDownloadIntervalAsync(context: IContext, dataStoreName?: string | null):AsyncResult {\n const request = createGetDownloadIntervalInput(dataStoreName);\n return executeAction(request, context);\n }\n \n export function createGetTerminalDataStoreNameInput(terminalId?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetTerminalDataStoreName', true, '', 'false', { bypassCache: 'none', returnEntity: ''}, {terminalId: terminalId });\n }\n\n export function getTerminalDataStoreNameAsync(context: IContext, terminalId?: string | null):AsyncResult {\n const request = createGetTerminalDataStoreNameInput(terminalId);\n return executeAction(request, context);\n }\n \n export function createGetDownloadLinkInput(dataStoreName: string | null, downloadSessionId: number): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetDownloadLink', true, '', 'false', { bypassCache: 'none', returnEntity: ''}, {dataStoreName: dataStoreName, downloadSessionId: downloadSessionId });\n }\n\n export function getDownloadLinkAsync(context: IContext, dataStoreName: string | null, downloadSessionId: number):AsyncResult {\n const request = createGetDownloadLinkInput(dataStoreName, downloadSessionId);\n return executeAction(request, context);\n }\n \n export function createGetDataDownloadParametersByTerminalInput(terminalDataDownloadRequestInfo?: TerminalDataDownloadRequestInfo | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetDataDownloadParametersByTerminal', true, \n 'DataDownloadParametersClass'\n , 'false', { bypassCache: 'none', returnEntity: 'DataDownloadParameters'}, {TerminalDataDownloadRequestInfo: terminalDataDownloadRequestInfo });\n }\n\n export function getDataDownloadParametersByTerminalAsync(context: IContext, terminalDataDownloadRequestInfo?: TerminalDataDownloadRequestInfo | null):AsyncResult {\n const request = createGetDataDownloadParametersByTerminalInput(terminalDataDownloadRequestInfo);\n return executeAction(request, context);\n }\n \n export function createGetDataUploadParametersByTerminalInput(terminalDataUploadRequestInfo?: TerminalDataUploadRequestInfo | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetDataUploadParametersByTerminal', true, \n 'DataUploadParametersClass'\n , 'false', { bypassCache: 'none', returnEntity: 'DataUploadParameters'}, {TerminalDataUploadRequestInfo: terminalDataUploadRequestInfo });\n }\n\n export function getDataUploadParametersByTerminalAsync(context: IContext, terminalDataUploadRequestInfo?: TerminalDataUploadRequestInfo | null):AsyncResult {\n const request = createGetDataUploadParametersByTerminalInput(terminalDataUploadRequestInfo);\n return executeAction(request, context);\n }\n \n export function createGetDownloadSessionsInput(queryResultSettings: IQueryResultSettings, dataStoreName?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetDownloadSessions', true, \n 'DownloadSessionClass'\n , 'true', { bypassCache: 'none', returnEntity: 'DownloadSession'}, {dataStoreName: dataStoreName });\n }\n\n export function getDownloadSessionsAsync(context: IContext, dataStoreName?: string | null):AsyncResult {\n const request = createGetDownloadSessionsInput(context.queryResultSettings, dataStoreName);\n return executeAction(request, context);\n }\n \n export function createGetInitialDownloadSessionsInput(queryResultSettings: IQueryResultSettings, dataStoreName?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetInitialDownloadSessions', true, \n 'DownloadSessionClass'\n , 'true', { bypassCache: 'none', returnEntity: 'DownloadSession'}, {dataStoreName: dataStoreName });\n }\n\n export function getInitialDownloadSessionsAsync(context: IContext, dataStoreName?: string | null):AsyncResult {\n const request = createGetInitialDownloadSessionsInput(context.queryResultSettings, dataStoreName);\n return executeAction(request, context);\n }\n \n export function createGetUploadJobDefinitionsInput(queryResultSettings: IQueryResultSettings, dataStoreName?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetUploadJobDefinitions', true, '', 'true', { bypassCache: 'none', returnEntity: ''}, {dataStoreName: dataStoreName });\n }\n\n export function getUploadJobDefinitionsAsync(context: IContext, dataStoreName?: string | null):AsyncResult {\n const request = createGetUploadJobDefinitionsInput(context.queryResultSettings, dataStoreName);\n return executeAction(request, context);\n }\n \n export function createGetUploadIntervalInput(dataStoreName?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetUploadInterval', true, '', 'false', { bypassCache: 'none', returnEntity: ''}, {dataStoreName: dataStoreName });\n }\n\n export function getUploadIntervalAsync(context: IContext, dataStoreName?: string | null):AsyncResult {\n const request = createGetUploadIntervalInput(dataStoreName);\n return executeAction(request, context);\n }\n \n export function createPostOfflineTransactionsInput(offlineTransactionForMPOS?: string[] | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('PostOfflineTransactions', true, '', 'false', { bypassCache: 'get', returnEntity: ''}, {offlineTransactionForMPOS: offlineTransactionForMPOS });\n }\n\n export function postOfflineTransactionsAsync(context: IContext, offlineTransactionForMPOS?: string[] | null):AsyncResult {\n const request = createPostOfflineTransactionsInput(offlineTransactionForMPOS);\n return executeAction(request, context);\n }\n \n export function createSetOfflineTerminalStateInput(offlineTerminalState?: OfflineTerminalState | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('SetOfflineTerminalState', true, '', '', { bypassCache: 'get', returnEntity: ''}, {offlineTerminalState: offlineTerminalState });\n }\n\n export function setOfflineTerminalStateAsync(context: IContext, offlineTerminalState?: OfflineTerminalState | null):AsyncResult {\n const request = createSetOfflineTerminalStateInput(offlineTerminalState);\n return executeAction(request, context);\n }\n \n export function createGetRetailTrialPlanOfferInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetRetailTrialPlanOffer', true, '', 'false', { bypassCache: 'none', returnEntity: ''}, { });\n }\n\n export function getRetailTrialPlanOfferAsync(context: IContext):AsyncResult {\n const request = createGetRetailTrialPlanOfferInput();\n return executeAction(request, context);\n }\n \n export function createGetLatestNumberSequenceInput(queryResultSettings: IQueryResultSettings, searchLocationValue?: number | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetLatestNumberSequence', true, \n 'NumberSequenceSeedDataClass'\n , 'true', { bypassCache: 'none', returnEntity: 'NumberSequenceSeedData'}, {searchLocationValue: searchLocationValue });\n }\n\n export function getLatestNumberSequenceAsync(context: IContext, searchLocationValue?: number | null):AsyncResult {\n const request = createGetLatestNumberSequenceInput(context.queryResultSettings, searchLocationValue);\n return executeAction(request, context);\n }\n \n export function createGetReceiptNumberResetInfoInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetReceiptNumberResetInfo', true, \n 'ReceiptNumberResetInfoClass'\n , 'true', { bypassCache: 'none', returnEntity: 'ReceiptNumberResetInfo'}, { });\n }\n\n export function getReceiptNumberResetInfoAsync(context: IContext):AsyncResult {\n const request = createGetReceiptNumberResetInfoInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetLoyaltyRewardPointActivityTimelineInput(queryResultSettings: IQueryResultSettings, cardNumber?: string | null, rewardPointId?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetLoyaltyRewardPointActivityTimeline', true, \n 'LoyaltyRewardPointActivityClass'\n , 'true', { bypassCache: 'none', returnEntity: 'LoyaltyRewardPointActivity'}, {cardNumber: cardNumber, rewardPointId: rewardPointId });\n }\n\n export function getLoyaltyRewardPointActivityTimelineAsync(context: IContext, cardNumber?: string | null, rewardPointId?: string | null):AsyncResult {\n const request = createGetLoyaltyRewardPointActivityTimelineInput(context.queryResultSettings, cardNumber, rewardPointId);\n return executeAction(request, context);\n }\n \n export function createGetLoyaltyRewardPointActivityTimelineForExpiredPointsInput(queryResultSettings: IQueryResultSettings, cardNumber?: string | null, rewardPointId?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetLoyaltyRewardPointActivityTimelineForExpiredPoints', true, \n 'LoyaltyRewardPointActivityClass'\n , 'true', { bypassCache: 'none', returnEntity: 'LoyaltyRewardPointActivity'}, {cardNumber: cardNumber, rewardPointId: rewardPointId });\n }\n\n export function getLoyaltyRewardPointActivityTimelineForExpiredPointsAsync(context: IContext, cardNumber?: string | null, rewardPointId?: string | null):AsyncResult {\n const request = createGetLoyaltyRewardPointActivityTimelineForExpiredPointsInput(context.queryResultSettings, cardNumber, rewardPointId);\n return executeAction(request, context);\n }\n \n export function createCalculateTotalCurrencyAmountInput(currenciesAmount?: CurrencyRequest[] | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('CalculateTotalCurrencyAmount', true, \n 'CurrencyAmountClass'\n , 'false', { bypassCache: 'get', returnEntity: 'CurrencyAmount'}, {currenciesAmount: currenciesAmount });\n }\n\n export function calculateTotalCurrencyAmountAsync(context: IContext, currenciesAmount?: CurrencyRequest[] | null):AsyncResult {\n const request = createCalculateTotalCurrencyAmountInput(currenciesAmount);\n return executeAction(request, context);\n }\n \n export function createGetDiscountCodeInput(discountCode?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetDiscountCode', true, \n 'DiscountCodeClass'\n , 'false', { bypassCache: 'none', returnEntity: 'DiscountCode'}, {discountCode: discountCode });\n }\n\n export function getDiscountCodeAsync(context: IContext, discountCode?: string | null):AsyncResult {\n const request = createGetDiscountCodeInput(discountCode);\n return executeAction(request, context);\n }\n \n export function createGetDiscountCodesByOfferIdInput(queryResultSettings: IQueryResultSettings, offerId?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetDiscountCodesByOfferId', true, \n 'DiscountCodeClass'\n , 'true', { bypassCache: 'none', returnEntity: 'DiscountCode'}, {offerId: offerId });\n }\n\n export function getDiscountCodesByOfferIdAsync(context: IContext, offerId?: string | null):AsyncResult {\n const request = createGetDiscountCodesByOfferIdInput(context.queryResultSettings, offerId);\n return executeAction(request, context);\n }\n \n export function createGetDiscountCodesByKeywordInput(queryResultSettings: IQueryResultSettings, keyword: string | null, activeDate: Date): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetDiscountCodesByKeyword', true, \n 'DiscountCodeClass'\n , 'true', { bypassCache: 'none', returnEntity: 'DiscountCode'}, {keyword: keyword, activeDate: activeDate });\n }\n\n export function getDiscountCodesByKeywordAsync(context: IContext, keyword: string | null, activeDate: Date):AsyncResult {\n const request = createGetDiscountCodesByKeywordInput(context.queryResultSettings, keyword, activeDate);\n return executeAction(request, context);\n }\n \n export function createGetDistrictsInput(queryResultSettings: IQueryResultSettings, countryRegionId?: string | null, stateProvinceId?: string | null, countyId?: string | null, cityName?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetDistricts', true, \n 'DistrictInfoClass'\n , 'true', { bypassCache: 'none', returnEntity: 'DistrictInfo'}, {countryRegionId: countryRegionId, stateProvinceId: stateProvinceId, countyId: countyId, cityName: cityName });\n }\n\n export function getDistrictsAsync(context: IContext, countryRegionId?: string | null, stateProvinceId?: string | null, countyId?: string | null, cityName?: string | null):AsyncResult {\n const request = createGetDistrictsInput(context.queryResultSettings, countryRegionId, stateProvinceId, countyId, cityName);\n return executeAction(request, context);\n }\n \n export function createGetHardwareStationProfilesInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetHardwareStationProfiles', true, \n 'HardwareStationProfileClass'\n , 'true', { bypassCache: 'none', returnEntity: 'HardwareStationProfile'}, { });\n }\n\n export function getHardwareStationProfilesAsync(context: IContext):AsyncResult {\n const request = createGetHardwareStationProfilesInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetHardwareProfileByIdInput(hardwareProfileId?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetHardwareProfileById', true, \n 'HardwareProfileClass'\n , 'false', { bypassCache: 'none', returnEntity: 'HardwareProfile'}, {hardwareProfileId: hardwareProfileId });\n }\n\n export function getHardwareProfileByIdAsync(context: IContext, hardwareProfileId?: string | null):AsyncResult {\n const request = createGetHardwareProfileByIdInput(hardwareProfileId);\n return executeAction(request, context);\n }\n \n export function createGetLocalizedStringsInput(queryResultSettings: IQueryResultSettings, languageId?: string | null, textId?: number | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetLocalizedStrings', true, \n 'LocalizedStringClass'\n , 'true', { bypassCache: 'none', returnEntity: 'LocalizedString'}, {languageId: languageId, textId: textId });\n }\n\n export function getLocalizedStringsAsync(context: IContext, languageId?: string | null, textId?: number | null):AsyncResult {\n const request = createGetLocalizedStringsInput(context.queryResultSettings, languageId, textId);\n return executeAction(request, context);\n }\n \n export function createGetOperationPermissionByIdInput(operationId: number): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetOperationPermissionById', true, \n 'OperationPermissionClass'\n , 'false', { bypassCache: 'none', returnEntity: 'OperationPermission'}, {operationId: operationId });\n }\n\n export function getOperationPermissionByIdAsync(context: IContext, operationId: number):AsyncResult {\n const request = createGetOperationPermissionByIdInput(operationId);\n return executeAction(request, context);\n }\n \n export function createGetReasonCodesByIdInput(queryResultSettings: IQueryResultSettings, reasonCodeGroupId?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetReasonCodesById', true, \n 'ReasonCodeClass'\n , 'true', { bypassCache: 'none', returnEntity: 'ReasonCode'}, {reasonCodeGroupId: reasonCodeGroupId });\n }\n\n export function getReasonCodesByIdAsync(context: IContext, reasonCodeGroupId?: string | null):AsyncResult {\n const request = createGetReasonCodesByIdInput(context.queryResultSettings, reasonCodeGroupId);\n return executeAction(request, context);\n }\n \n export function createSearchReportDataSetInput(reportId?: string | null, parameters?: CommerceProperty[] | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('SearchReportDataSet', true, \n 'ReportDataSetClass'\n , 'false', { bypassCache: 'none', returnEntity: 'ReportDataSet'}, {reportId: reportId, parameters: parameters });\n }\n\n export function searchReportDataSetAsync(context: IContext, reportId?: string | null, parameters?: CommerceProperty[] | null):AsyncResult {\n const request = createSearchReportDataSetInput(reportId, parameters);\n return executeAction(request, context);\n }\n \n export function createGetReportDataSetByIdInput(reportId?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetReportDataSetById', true, \n 'ReportDataSetClass'\n , 'false', { bypassCache: 'none', returnEntity: 'ReportDataSet'}, {reportId: reportId });\n }\n\n export function getReportDataSetByIdAsync(context: IContext, reportId?: string | null):AsyncResult {\n const request = createGetReportDataSetByIdInput(reportId);\n return executeAction(request, context);\n }\n \n export function createGetSrsReportDataSetInput(reportId?: string | null, parameters?: CommerceProperty[] | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetSrsReportDataSet', true, \n 'ReportDataSetClass'\n , 'false', { bypassCache: 'none', returnEntity: 'ReportDataSet'}, {reportId: reportId, parameters: parameters });\n }\n\n export function getSrsReportDataSetAsync(context: IContext, reportId?: string | null, parameters?: CommerceProperty[] | null):AsyncResult {\n const request = createGetSrsReportDataSetInput(reportId, parameters);\n return executeAction(request, context);\n }\n \n export function createGetIncomeExpenseAccountsInput(queryResultSettings: IQueryResultSettings, incomeExpenseAccountType: number): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetIncomeExpenseAccounts', true, \n 'IncomeExpenseAccountClass'\n , 'true', { bypassCache: 'none', returnEntity: 'IncomeExpenseAccount'}, {incomeExpenseAccountType: incomeExpenseAccountType });\n }\n\n export function getIncomeExpenseAccountsAsync(context: IContext, incomeExpenseAccountType: number):AsyncResult {\n const request = createGetIncomeExpenseAccountsInput(context.queryResultSettings, incomeExpenseAccountType);\n return executeAction(request, context);\n }\n \n export function createGetStateProvincesInput(queryResultSettings: IQueryResultSettings, countryRegionId?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetStateProvinces', true, \n 'StateProvinceInfoClass'\n , 'true', { bypassCache: 'none', returnEntity: 'StateProvinceInfo'}, {countryRegionId: countryRegionId });\n }\n\n export function getStateProvincesAsync(context: IContext, countryRegionId?: string | null):AsyncResult {\n const request = createGetStateProvincesInput(context.queryResultSettings, countryRegionId);\n return executeAction(request, context);\n }\n \n export function createGetZipCodesInput(queryResultSettings: IQueryResultSettings, countryRegionId?: string | null, stateProvinceId?: string | null, countyId?: string | null, cityName?: string | null, district?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetZipCodes', true, \n 'ZipCodeInfoClass'\n , 'true', { bypassCache: 'none', returnEntity: 'ZipCodeInfo'}, {countryRegionId: countryRegionId, stateProvinceId: stateProvinceId, countyId: countyId, cityName: cityName, district: district });\n }\n\n export function getZipCodesAsync(context: IContext, countryRegionId?: string | null, stateProvinceId?: string | null, countyId?: string | null, cityName?: string | null, district?: string | null):AsyncResult {\n const request = createGetZipCodesInput(context.queryResultSettings, countryRegionId, stateProvinceId, countyId, cityName, district);\n return executeAction(request, context);\n }\n \n export function createGetAddressFromZipCodeInput(queryResultSettings: IQueryResultSettings, countryRegionId?: string | null, zipPostalCode?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetAddressFromZipCode', true, \n 'ZipCodeInfoClass'\n , 'true', { bypassCache: 'none', returnEntity: 'ZipCodeInfo'}, {countryRegionId: countryRegionId, zipPostalCode: zipPostalCode });\n }\n\n export function getAddressFromZipCodeAsync(context: IContext, countryRegionId?: string | null, zipPostalCode?: string | null):AsyncResult {\n const request = createGetAddressFromZipCodeInput(context.queryResultSettings, countryRegionId, zipPostalCode);\n return executeAction(request, context);\n }\n \n export function createDisassembleKitTransactionsInput(kitTransaction?: KitTransaction | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('DisassembleKitTransactions', true, \n 'KitTransactionClass'\n , 'false', { bypassCache: 'get', returnEntity: 'KitTransaction'}, {kitTransaction: kitTransaction });\n }\n\n export function disassembleKitTransactionsAsync(context: IContext, kitTransaction?: KitTransaction | null):AsyncResult {\n const request = createDisassembleKitTransactionsInput(kitTransaction);\n return executeAction(request, context);\n }\n \n export function createIssueLoyaltyCardInput(loyaltyCard?: LoyaltyCard | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('IssueLoyaltyCard', true, \n 'LoyaltyCardClass'\n , 'false', { bypassCache: 'get', returnEntity: 'LoyaltyCard'}, {loyaltyCard: loyaltyCard });\n }\n\n export function issueLoyaltyCardAsync(context: IContext, loyaltyCard?: LoyaltyCard | null):AsyncResult {\n const request = createIssueLoyaltyCardInput(loyaltyCard);\n return executeAction(request, context);\n }\n \n export function createGetLoyaltyCardInput(cardNumber?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetLoyaltyCard', true, \n 'LoyaltyCardClass'\n , 'false', { bypassCache: 'none', returnEntity: 'LoyaltyCard'}, {cardNumber: cardNumber });\n }\n\n export function getLoyaltyCardAsync(context: IContext, cardNumber?: string | null):AsyncResult {\n const request = createGetLoyaltyCardInput(cardNumber);\n return executeAction(request, context);\n }\n \n export function createGetCustomerLoyaltyCardsInput(queryResultSettings: IQueryResultSettings, accountNumber?: string | null, searchCriteria?: LoyaltyCardSearchCriteria | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCustomerLoyaltyCards', true, \n 'LoyaltyCardClass'\n , 'true', { bypassCache: 'none', returnEntity: 'LoyaltyCard'}, {accountNumber: accountNumber, searchCriteria: searchCriteria });\n }\n\n export function getCustomerLoyaltyCardsAsync(context: IContext, accountNumber?: string | null, searchCriteria?: LoyaltyCardSearchCriteria | null):AsyncResult {\n const request = createGetCustomerLoyaltyCardsInput(context.queryResultSettings, accountNumber, searchCriteria);\n return executeAction(request, context);\n }\n \n export function createGetLoyaltyCardTransactionsInput(queryResultSettings: IQueryResultSettings, cardNumber?: string | null, rewardPointId?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetLoyaltyCardTransactions', true, \n 'LoyaltyCardTransactionClass'\n , 'true', { bypassCache: 'none', returnEntity: 'LoyaltyCardTransaction'}, {cardNumber: cardNumber, rewardPointId: rewardPointId });\n }\n\n export function getLoyaltyCardTransactionsAsync(context: IContext, cardNumber?: string | null, rewardPointId?: string | null):AsyncResult {\n const request = createGetLoyaltyCardTransactionsInput(context.queryResultSettings, cardNumber, rewardPointId);\n return executeAction(request, context);\n }\n \n export function createGetLoyaltyRewardPointsExpiringSoonInput(queryResultSettings: IQueryResultSettings, cardNumber: string | null, rewardPointId: string | null, daysToExpiry: number): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetLoyaltyRewardPointsExpiringSoon', true, \n 'LoyaltyRewardPointActivityClass'\n , 'true', { bypassCache: 'none', returnEntity: 'LoyaltyRewardPointActivity'}, {cardNumber: cardNumber, rewardPointId: rewardPointId, daysToExpiry: daysToExpiry });\n }\n\n export function getLoyaltyRewardPointsExpiringSoonAsync(context: IContext, cardNumber: string | null, rewardPointId: string | null, daysToExpiry: number):AsyncResult {\n const request = createGetLoyaltyRewardPointsExpiringSoonInput(context.queryResultSettings, cardNumber, rewardPointId, daysToExpiry);\n return executeAction(request, context);\n }\n \n export function createSearchJournalTransactionsInput(queryResultSettings: IQueryResultSettings, searchCriteria?: TransactionSearchCriteria | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('SearchJournalTransactions', true, \n 'TransactionClass'\n , 'true', { bypassCache: 'none', returnEntity: 'Transaction'}, {searchCriteria: searchCriteria });\n }\n\n export function searchJournalTransactionsAsync(context: IContext, searchCriteria?: TransactionSearchCriteria | null):AsyncResult {\n const request = createSearchJournalTransactionsInput(context.queryResultSettings, searchCriteria);\n return executeAction(request, context);\n }\n \n export function createGetGiftCardInput(giftCardId?: string | null, tenderTypeId?: string | null, pin?: string | null, expirationMonth?: number | null, expirationYear?: number | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetGiftCard', true, \n 'GiftCardClass'\n , 'false', { bypassCache: 'none', returnEntity: 'GiftCard'}, {giftCardId: giftCardId, tenderTypeId: tenderTypeId, pin: pin, expirationMonth: expirationMonth, expirationYear: expirationYear });\n }\n\n export function getGiftCardAsync(context: IContext, giftCardId?: string | null, tenderTypeId?: string | null, pin?: string | null, expirationMonth?: number | null, expirationYear?: number | null):AsyncResult {\n const request = createGetGiftCardInput(giftCardId, tenderTypeId, pin, expirationMonth, expirationYear);\n return executeAction(request, context);\n }\n \n export function createGetGiftCardInquiryInput(giftCardId?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetGiftCardInquiry', true, \n 'GiftCardClass'\n , 'false', { bypassCache: 'none', returnEntity: 'GiftCard'}, {giftCardId: giftCardId });\n }\n\n export function getGiftCardInquiryAsync(context: IContext, giftCardId?: string | null):AsyncResult {\n const request = createGetGiftCardInquiryInput(giftCardId);\n return executeAction(request, context);\n }\n \n export function createGetNonSalesTransactionsInput(queryResultSettings: IQueryResultSettings, shiftId: string | null, shiftTerminalId: string | null, nonSalesTenderTypeValue: number): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetNonSalesTransactions', true, \n 'NonSalesTransactionClass'\n , 'true', { bypassCache: 'none', returnEntity: 'NonSalesTransaction'}, {shiftId: shiftId, shiftTerminalId: shiftTerminalId, nonSalesTenderTypeValue: nonSalesTenderTypeValue });\n }\n\n export function getNonSalesTransactionsAsync(context: IContext, shiftId: string | null, shiftTerminalId: string | null, nonSalesTenderTypeValue: number):AsyncResult {\n const request = createGetNonSalesTransactionsInput(context.queryResultSettings, shiftId, shiftTerminalId, nonSalesTenderTypeValue);\n return executeAction(request, context);\n }\n \n export function createCreateNonSalesTransactionInput(nonSalesTransaction?: NonSalesTransaction | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('CreateNonSalesTransaction', true, \n 'NonSalesTransactionClass'\n , 'false', { bypassCache: 'get', returnEntity: 'NonSalesTransaction'}, {nonSalesTransaction: nonSalesTransaction });\n }\n\n export function createNonSalesTransactionAsync(context: IContext, nonSalesTransaction?: NonSalesTransaction | null):AsyncResult {\n const request = createCreateNonSalesTransactionInput(nonSalesTransaction);\n return executeAction(request, context);\n }\n \n export function createCreateDropAndDeclareTransactionInput(dropAndDeclareTransaction?: DropAndDeclareTransaction | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('CreateDropAndDeclareTransaction', true, \n 'DropAndDeclareTransactionClass'\n , 'false', { bypassCache: 'get', returnEntity: 'DropAndDeclareTransaction'}, {dropAndDeclareTransaction: dropAndDeclareTransaction });\n }\n\n export function createDropAndDeclareTransactionAsync(context: IContext, dropAndDeclareTransaction?: DropAndDeclareTransaction | null):AsyncResult {\n const request = createCreateDropAndDeclareTransactionInput(dropAndDeclareTransaction);\n return executeAction(request, context);\n }\n \n export function createGetTaxOverridesInput(queryResultSettings: IQueryResultSettings, overrideBy?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetTaxOverrides', true, \n 'TaxOverrideClass'\n , 'true', { bypassCache: 'none', returnEntity: 'TaxOverride'}, {overrideBy: overrideBy });\n }\n\n export function getTaxOverridesAsync(context: IContext, overrideBy?: string | null):AsyncResult {\n const request = createGetTaxOverridesInput(context.queryResultSettings, overrideBy);\n return executeAction(request, context);\n }\n \n export function createGetCustomerBalanceInput(accountNumber?: string | null, invoiceAccountNumber?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetCustomerBalance', true, \n 'CustomerBalancesClass'\n , 'false', { bypassCache: 'none', returnEntity: 'CustomerBalances'}, {accountNumber: accountNumber, invoiceAccountNumber: invoiceAccountNumber });\n }\n\n export function getCustomerBalanceAsync(context: IContext, accountNumber?: string | null, invoiceAccountNumber?: string | null):AsyncResult {\n const request = createGetCustomerBalanceInput(accountNumber, invoiceAccountNumber);\n return executeAction(request, context);\n }\n \n export function createInitiateLinkToExistingCustomerInput(email?: string | null, activationToken?: string | null, emailTemplateId?: string | null, emailProperties?: NameValuePair[] | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('InitiateLinkToExistingCustomer', true, \n 'LinkToExistingCustomerResultClass'\n , 'false', { bypassCache: 'get', returnEntity: 'LinkToExistingCustomerResult'}, {email: email, ActivationToken: activationToken, emailTemplateId: emailTemplateId, emailProperties: emailProperties });\n }\n\n export function initiateLinkToExistingCustomerAsync(context: IContext, email?: string | null, activationToken?: string | null, emailTemplateId?: string | null, emailProperties?: NameValuePair[] | null):AsyncResult {\n const request = createInitiateLinkToExistingCustomerInput(email, activationToken, emailTemplateId, emailProperties);\n return executeAction(request, context);\n }\n \n export function createFinalizeLinkToExistingCustomerInput(email?: string | null, activationToken?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('FinalizeLinkToExistingCustomer', true, \n 'LinkToExistingCustomerResultClass'\n , 'false', { bypassCache: 'get', returnEntity: 'LinkToExistingCustomerResult'}, {email: email, ActivationToken: activationToken });\n }\n\n export function finalizeLinkToExistingCustomerAsync(context: IContext, email?: string | null, activationToken?: string | null):AsyncResult {\n const request = createFinalizeLinkToExistingCustomerInput(email, activationToken);\n return executeAction(request, context);\n }\n \n export function createUnlinkFromExistingCustomerInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('UnlinkFromExistingCustomer', true, '', '', { bypassCache: 'get', returnEntity: ''}, { });\n }\n\n export function unlinkFromExistingCustomerAsync(context: IContext):AsyncResult {\n const request = createUnlinkFromExistingCustomerInput();\n return executeAction(request, context);\n }\n \n export function createGetOfflineSyncStatusInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetOfflineSyncStatus', true, \n 'OfflineSyncStatsLineClass'\n , 'true', { bypassCache: 'none', returnEntity: 'OfflineSyncStatsLine'}, { });\n }\n\n export function getOfflineSyncStatusAsync(context: IContext):AsyncResult {\n const request = createGetOfflineSyncStatusInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetOfflinePendingTransactionCountInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetOfflinePendingTransactionCount', true, '', 'false', { bypassCache: 'none', returnEntity: ''}, { });\n }\n\n export function getOfflinePendingTransactionCountAsync(context: IContext):AsyncResult {\n const request = createGetOfflinePendingTransactionCountInput();\n return executeAction(request, context);\n }\n \n export function createGetOfflinePendingTransactionCountByShiftInput(shiftId: number, shiftTerminalId?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetOfflinePendingTransactionCountByShift', true, '', 'false', { bypassCache: 'none', returnEntity: ''}, {shiftId: shiftId, shiftTerminalId: shiftTerminalId });\n }\n\n export function getOfflinePendingTransactionCountByShiftAsync(context: IContext, shiftId: number, shiftTerminalId?: string | null):AsyncResult {\n const request = createGetOfflinePendingTransactionCountByShiftInput(shiftId, shiftTerminalId);\n return executeAction(request, context);\n }\n \n export function createGetOfflineOpenShiftsInput(queryResultSettings: IQueryResultSettings, filterByCurrentUser: boolean, includeAllShiftsForStore: boolean): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetOfflineOpenShifts', false, \n 'ShiftClass'\n , 'true', { bypassCache: 'none', returnEntity: 'Shift'}, {filterByCurrentUser: filterByCurrentUser, includeAllShiftsForStore: includeAllShiftsForStore });\n }\n\n export function getOfflineOpenShiftsAsync(context: IContext, filterByCurrentUser: boolean, includeAllShiftsForStore: boolean):AsyncResult {\n const request = createGetOfflineOpenShiftsInput(context.queryResultSettings, filterByCurrentUser, includeAllShiftsForStore);\n return executeAction(request, context);\n }\n \n export function createDeleteOfflineShiftsInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('DeleteOfflineShifts', false, '', 'false', { bypassCache: 'get', returnEntity: ''}, { });\n }\n\n export function deleteOfflineShiftsAsync(context: IContext):AsyncResult {\n const request = createDeleteOfflineShiftsInput();\n return executeAction(request, context);\n }\n \n export function createUpdateDownloadSessionInput(downloadSession?: DownloadSession | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('UpdateDownloadSession', true, '', 'false', { bypassCache: 'get', returnEntity: ''}, {downloadSession: downloadSession });\n }\n\n export function updateDownloadSessionAsync(context: IContext, downloadSession?: DownloadSession | null):AsyncResult {\n const request = createUpdateDownloadSessionInput(downloadSession);\n return executeAction(request, context);\n }\n \n export function createUpdateApplicationVersionInput(appVersion?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('UpdateApplicationVersion', true, '', '', { bypassCache: 'get', returnEntity: ''}, {appVersion: appVersion });\n }\n\n export function updateApplicationVersionAsync(context: IContext, appVersion?: string | null):AsyncResult {\n const request = createUpdateApplicationVersionInput(appVersion);\n return executeAction(request, context);\n }\n \n export function createGetStorageAccessTokenForUploadInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetStorageAccessTokenForUpload', true, \n 'StorageAccessTokenClass'\n , 'false', { bypassCache: 'none', returnEntity: 'StorageAccessToken'}, { });\n }\n\n export function getStorageAccessTokenForUploadAsync(context: IContext):AsyncResult {\n const request = createGetStorageAccessTokenForUploadInput();\n return executeAction(request, context);\n }\n \n export function createGetBusinessProcessModelLibrariesInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetBusinessProcessModelLibraries', true, \n 'FrameworkClass'\n , 'true', { bypassCache: 'none', returnEntity: 'Framework'}, { });\n }\n\n export function getBusinessProcessModelLibrariesAsync(context: IContext):AsyncResult {\n const request = createGetBusinessProcessModelLibrariesInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetBusinessProcessModelLibraryInput(businessProcessModelFrameworkLineId: number, hierarchyDepth: number): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetBusinessProcessModelLibrary', true, \n 'FrameworkClass'\n , 'false', { bypassCache: 'none', returnEntity: 'Framework'}, {businessProcessModelFrameworkLineId: businessProcessModelFrameworkLineId, hierarchyDepth: hierarchyDepth });\n }\n\n export function getBusinessProcessModelLibraryAsync(context: IContext, businessProcessModelFrameworkLineId: number, hierarchyDepth: number):AsyncResult {\n const request = createGetBusinessProcessModelLibraryInput(businessProcessModelFrameworkLineId, hierarchyDepth);\n return executeAction(request, context);\n }\n \n export function createSearchTaskGuidesByTitleInput(queryResultSettings: IQueryResultSettings, businessProcessModelFrameworkLineId: number, taskGuideSearchText: string | null, queryTypeValue: number): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('SearchTaskGuidesByTitle', true, \n 'TaskGuidesSearchResultClass'\n , 'true', { bypassCache: 'none', returnEntity: 'TaskGuidesSearchResult'}, {businessProcessModelFrameworkLineId: businessProcessModelFrameworkLineId, taskGuideSearchText: taskGuideSearchText, queryTypeValue: queryTypeValue });\n }\n\n export function searchTaskGuidesByTitleAsync(context: IContext, businessProcessModelFrameworkLineId: number, taskGuideSearchText: string | null, queryTypeValue: number):AsyncResult {\n const request = createSearchTaskGuidesByTitleInput(context.queryResultSettings, businessProcessModelFrameworkLineId, taskGuideSearchText, queryTypeValue);\n return executeAction(request, context);\n }\n \n export function createGenerateBusinessProcessModelPackageInput(taskRecording?: Recording | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GenerateBusinessProcessModelPackage', true, '', 'false', { bypassCache: 'get', returnEntity: ''}, {taskRecording: taskRecording });\n }\n\n export function generateBusinessProcessModelPackageAsync(context: IContext, taskRecording?: Recording | null):AsyncResult {\n const request = createGenerateBusinessProcessModelPackageInput(taskRecording);\n return executeAction(request, context);\n }\n \n export function createDownloadRecordingInput(businessProcessModelLineId: number): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('DownloadRecording', true, \n 'RecordingClass'\n , 'false', { bypassCache: 'get', returnEntity: 'Recording'}, {businessProcessModelLineId: businessProcessModelLineId });\n }\n\n export function downloadRecordingAsync(context: IContext, businessProcessModelLineId: number):AsyncResult {\n const request = createDownloadRecordingInput(businessProcessModelLineId);\n return executeAction(request, context);\n }\n \n export function createLoadRecordingFromFileInput(recordingUrl?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('LoadRecordingFromFile', true, \n 'RecordingClass'\n , 'false', { bypassCache: 'get', returnEntity: 'Recording'}, {recordingUrl: recordingUrl });\n }\n\n export function loadRecordingFromFileAsync(context: IContext, recordingUrl?: string | null):AsyncResult {\n const request = createLoadRecordingFromFileInput(recordingUrl);\n return executeAction(request, context);\n }\n \n export function createGenerateRecordingFileInput(taskRecording?: Recording | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GenerateRecordingFile', true, '', 'false', { bypassCache: 'get', returnEntity: ''}, {taskRecording: taskRecording });\n }\n\n export function generateRecordingFileAsync(context: IContext, taskRecording?: Recording | null):AsyncResult {\n const request = createGenerateRecordingFileInput(taskRecording);\n return executeAction(request, context);\n }\n \n export function createGenerateTrainingDocumentInput(taskRecording?: Recording | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GenerateTrainingDocument', true, '', 'false', { bypassCache: 'get', returnEntity: ''}, {taskRecording: taskRecording });\n }\n\n export function generateTrainingDocumentAsync(context: IContext, taskRecording?: Recording | null):AsyncResult {\n const request = createGenerateTrainingDocumentInput(taskRecording);\n return executeAction(request, context);\n }\n \n export function createGenerateRecordingBundleInput(taskRecording?: Recording | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GenerateRecordingBundle', true, '', 'false', { bypassCache: 'get', returnEntity: ''}, {taskRecording: taskRecording });\n }\n\n export function generateRecordingBundleAsync(context: IContext, taskRecording?: Recording | null):AsyncResult {\n const request = createGenerateRecordingBundleInput(taskRecording);\n return executeAction(request, context);\n }\n \n export function createUploadRecordingInput(taskRecording: Recording | null, businessProcessModelLineId: number): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('UploadRecording', true, '', '', { bypassCache: 'get', returnEntity: ''}, {taskRecording: taskRecording, businessProcessModelLineId: businessProcessModelLineId });\n }\n\n export function uploadRecordingAsync(context: IContext, taskRecording: Recording | null, businessProcessModelLineId: number):AsyncResult {\n const request = createUploadRecordingInput(taskRecording, businessProcessModelLineId);\n return executeAction(request, context);\n }\n \n export function createGetAttributeDefinitionsInput(queryResultSettings: IQueryResultSettings, attributeDefinitionCriteria?: AttributeDefinitionCriteria | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetAttributeDefinitions', true, \n 'AttributeDefinitionClass'\n , 'true', { bypassCache: 'none', returnEntity: 'AttributeDefinition'}, {attributeDefinitionCriteria: attributeDefinitionCriteria });\n }\n\n export function getAttributeDefinitionsAsync(context: IContext, attributeDefinitionCriteria?: AttributeDefinitionCriteria | null):AsyncResult {\n const request = createGetAttributeDefinitionsInput(context.queryResultSettings, attributeDefinitionCriteria);\n return executeAction(request, context);\n }\n \n export function createGetAttributeGroupDefinitionsInput(queryResultSettings: IQueryResultSettings, attributeGroupDefinitionCriteria?: AttributeGroupDefinitionCriteria | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetAttributeGroupDefinitions', true, \n 'AttributeGroupDefinitionClass'\n , 'true', { bypassCache: 'none', returnEntity: 'AttributeGroupDefinition'}, {attributeGroupDefinitionCriteria: attributeGroupDefinitionCriteria });\n }\n\n export function getAttributeGroupDefinitionsAsync(context: IContext, attributeGroupDefinitionCriteria?: AttributeGroupDefinitionCriteria | null):AsyncResult {\n const request = createGetAttributeGroupDefinitionsInput(context.queryResultSettings, attributeGroupDefinitionCriteria);\n return executeAction(request, context);\n }\n \n export function createSaveFiscalTransactionInput(fiscalTransaction?: FiscalTransaction | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('SaveFiscalTransaction', true, '', '', { bypassCache: 'get', returnEntity: ''}, {fiscalTransaction: fiscalTransaction });\n }\n\n export function saveFiscalTransactionAsync(context: IContext, fiscalTransaction?: FiscalTransaction | null):AsyncResult {\n const request = createSaveFiscalTransactionInput(fiscalTransaction);\n return executeAction(request, context);\n }\n \n export function createValidatePrintReceiptCopyAllowedInput(salesOrderToPrint?: SalesOrder | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('ValidatePrintReceiptCopyAllowed', true, '', '', { bypassCache: 'get', returnEntity: ''}, {salesOrderToPrint: salesOrderToPrint });\n }\n\n export function validatePrintReceiptCopyAllowedAsync(context: IContext, salesOrderToPrint?: SalesOrder | null):AsyncResult {\n const request = createValidatePrintReceiptCopyAllowedInput(salesOrderToPrint);\n return executeAction(request, context);\n }\n \n export function createRegisterAuditEventInput(auditEvent?: AuditEvent | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('RegisterAuditEvent', true, '', '', { bypassCache: 'get', returnEntity: ''}, {auditEvent: auditEvent });\n }\n\n export function registerAuditEventAsync(context: IContext, auditEvent?: AuditEvent | null):AsyncResult {\n const request = createRegisterAuditEventInput(auditEvent);\n return executeAction(request, context);\n }\n \n export function createRegisterAndGetAuditEventInput(auditEvent?: AuditEvent | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('RegisterAndGetAuditEvent', true, \n 'AuditEventClass'\n , 'false', { bypassCache: 'get', returnEntity: 'AuditEvent'}, {auditEvent: auditEvent });\n }\n\n export function registerAndGetAuditEventAsync(context: IContext, auditEvent?: AuditEvent | null):AsyncResult {\n const request = createRegisterAndGetAuditEventInput(auditEvent);\n return executeAction(request, context);\n }\n \n export function createGetInventoryAvailableToPromiseInput(queryResultSettings: IQueryResultSettings, productId: number, itemId?: string | null, inventLocationId?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetInventoryAvailableToPromise', true, \n 'InventoryAvailableToPromiseClass'\n , 'true', { bypassCache: 'none', returnEntity: 'InventoryAvailableToPromise'}, {productId: productId, itemId: itemId, inventLocationId: inventLocationId });\n }\n\n export function getInventoryAvailableToPromiseAsync(context: IContext, productId: number, itemId?: string | null, inventLocationId?: string | null):AsyncResult {\n const request = createGetInventoryAvailableToPromiseInput(context.queryResultSettings, productId, itemId, inventLocationId);\n return executeAction(request, context);\n }\n \n export function createGetSalesOrdersWithNoFiscalTransactionsInput(queryResultSettings: IQueryResultSettings, storeNumber?: string | null, terminalId?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetSalesOrdersWithNoFiscalTransactions', true, \n 'SalesOrderClass'\n , 'true', { bypassCache: 'none', returnEntity: 'SalesOrder'}, {storeNumber: storeNumber, terminalId: terminalId });\n }\n\n export function getSalesOrdersWithNoFiscalTransactionsAsync(context: IContext, storeNumber?: string | null, terminalId?: string | null):AsyncResult {\n const request = createGetSalesOrdersWithNoFiscalTransactionsInput(context.queryResultSettings, storeNumber, terminalId);\n return executeAction(request, context);\n }\n \n export function createGetNotificationsInput(queryResultSettings: IQueryResultSettings, subscribedOperations: number[], extensionProperties?: CommerceProperty[] | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetNotifications', true, \n 'NotificationItemClass'\n , 'true', { bypassCache: 'none', returnEntity: 'NotificationItem'}, {subscribedOperations: subscribedOperations, extensionProperties: extensionProperties });\n }\n\n export function getNotificationsAsync(context: IContext, subscribedOperations: number[], extensionProperties?: CommerceProperty[] | null):AsyncResult {\n const request = createGetNotificationsInput(context.queryResultSettings, subscribedOperations, extensionProperties);\n return executeAction(request, context);\n }\n \n export function createAcknowledgeNotificationsInput(lastPullDateTime: Date): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('AcknowledgeNotifications', true, '', '', { bypassCache: 'get', returnEntity: ''}, {lastPullDateTime: lastPullDateTime });\n }\n\n export function acknowledgeNotificationsAsync(context: IContext, lastPullDateTime: Date):AsyncResult {\n const request = createAcknowledgeNotificationsInput(lastPullDateTime);\n return executeAction(request, context);\n }\n \n export function createSearchPurchaseHistoryInput(queryResultSettings: IQueryResultSettings, searchCriteria?: PurchaseHistorySearchCriteria | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('SearchPurchaseHistory', true, \n 'PurchaseHistoryClass'\n , 'true', { bypassCache: 'none', returnEntity: 'PurchaseHistory'}, {searchCriteria: searchCriteria });\n }\n\n export function searchPurchaseHistoryAsync(context: IContext, searchCriteria?: PurchaseHistorySearchCriteria | null):AsyncResult {\n const request = createSearchPurchaseHistoryInput(context.queryResultSettings, searchCriteria);\n return executeAction(request, context);\n }\n \n export function createGetFiscalIntegrationFiscalDocumentInput(hardwareProfileId?: string | null, functionalityProfileGroupId?: string | null, fiscalIntegrationDocumentRetrievalCriteria?: FiscalIntegrationDocumentRetrievalCriteria | null, connectorType?: number | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetFiscalIntegrationFiscalDocument', true, \n 'FiscalIntegrationDocumentClass'\n , 'false', { bypassCache: 'none', returnEntity: 'FiscalIntegrationDocument'}, {hardwareProfileId: hardwareProfileId, functionalityProfileGroupId: functionalityProfileGroupId, fiscalIntegrationDocumentRetrievalCriteria: fiscalIntegrationDocumentRetrievalCriteria, connectorType: connectorType });\n }\n\n export function getFiscalIntegrationFiscalDocumentAsync(context: IContext, hardwareProfileId?: string | null, functionalityProfileGroupId?: string | null, fiscalIntegrationDocumentRetrievalCriteria?: FiscalIntegrationDocumentRetrievalCriteria | null, connectorType?: number | null):AsyncResult {\n const request = createGetFiscalIntegrationFiscalDocumentInput(hardwareProfileId, functionalityProfileGroupId, fiscalIntegrationDocumentRetrievalCriteria, connectorType);\n return executeAction(request, context);\n }\n \n export function createGetFiscalIntegrationNonFiscalDocumentInput(hardwareProfileId?: string | null, functionalityProfileGroupId?: string | null, fiscalIntegrationDocumentRetrievalCriteria?: FiscalIntegrationDocumentRetrievalCriteria | null, connectorType?: number | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetFiscalIntegrationNonFiscalDocument', true, \n 'FiscalIntegrationDocumentClass'\n , 'false', { bypassCache: 'none', returnEntity: 'FiscalIntegrationDocument'}, {hardwareProfileId: hardwareProfileId, functionalityProfileGroupId: functionalityProfileGroupId, fiscalIntegrationDocumentRetrievalCriteria: fiscalIntegrationDocumentRetrievalCriteria, connectorType: connectorType });\n }\n\n export function getFiscalIntegrationNonFiscalDocumentAsync(context: IContext, hardwareProfileId?: string | null, functionalityProfileGroupId?: string | null, fiscalIntegrationDocumentRetrievalCriteria?: FiscalIntegrationDocumentRetrievalCriteria | null, connectorType?: number | null):AsyncResult {\n const request = createGetFiscalIntegrationNonFiscalDocumentInput(hardwareProfileId, functionalityProfileGroupId, fiscalIntegrationDocumentRetrievalCriteria, connectorType);\n return executeAction(request, context);\n }\n \n export function createGetFiscalIntegrationFiscalServiceSetupDocumentInput(hardwareProfileId?: string | null, functionalityProfileGroupId?: string | null, connectorType?: number | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetFiscalIntegrationFiscalServiceSetupDocument', true, \n 'FiscalIntegrationDocumentClass'\n , 'false', { bypassCache: 'none', returnEntity: 'FiscalIntegrationDocument'}, {hardwareProfileId: hardwareProfileId, functionalityProfileGroupId: functionalityProfileGroupId, connectorType: connectorType });\n }\n\n export function getFiscalIntegrationFiscalServiceSetupDocumentAsync(context: IContext, hardwareProfileId?: string | null, functionalityProfileGroupId?: string | null, connectorType?: number | null):AsyncResult {\n const request = createGetFiscalIntegrationFiscalServiceSetupDocumentInput(hardwareProfileId, functionalityProfileGroupId, connectorType);\n return executeAction(request, context);\n }\n \n export function createGetFiscalIntegrationFiscalServiceReadDataDocumentInput(hardwareProfileId?: string | null, functionalityProfileGroupId?: string | null, connectorType?: number | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetFiscalIntegrationFiscalServiceReadDataDocument', true, \n 'FiscalIntegrationDocumentClass'\n , 'false', { bypassCache: 'none', returnEntity: 'FiscalIntegrationDocument'}, {hardwareProfileId: hardwareProfileId, functionalityProfileGroupId: functionalityProfileGroupId, connectorType: connectorType });\n }\n\n export function getFiscalIntegrationFiscalServiceReadDataDocumentAsync(context: IContext, hardwareProfileId?: string | null, functionalityProfileGroupId?: string | null, connectorType?: number | null):AsyncResult {\n const request = createGetFiscalIntegrationFiscalServiceReadDataDocumentInput(hardwareProfileId, functionalityProfileGroupId, connectorType);\n return executeAction(request, context);\n }\n \n export function createProcessFiscalIntegrationFiscalServiceReadDataResultInput(hardwareProfileId?: string | null, functionalityProfileGroupId?: string | null, documentToProcess?: string | null, connectorType?: number | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('ProcessFiscalIntegrationFiscalServiceReadDataResult', true, '', '', { bypassCache: 'get', returnEntity: ''}, {hardwareProfileId: hardwareProfileId, functionalityProfileGroupId: functionalityProfileGroupId, documentToProcess: documentToProcess, connectorType: connectorType });\n }\n\n export function processFiscalIntegrationFiscalServiceReadDataResultAsync(context: IContext, hardwareProfileId?: string | null, functionalityProfileGroupId?: string | null, documentToProcess?: string | null, connectorType?: number | null):AsyncResult {\n const request = createProcessFiscalIntegrationFiscalServiceReadDataResultInput(hardwareProfileId, functionalityProfileGroupId, documentToProcess, connectorType);\n return executeAction(request, context);\n }\n \n export function createSaveFiscalIntegrationRegistrationResultInput(hardwareProfileId?: string | null, functionalityProfileGroupId?: string | null, registrationResult?: FiscalIntegrationRegistrationResult | null, connectorType?: number | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('SaveFiscalIntegrationRegistrationResult', true, '', '', { bypassCache: 'get', returnEntity: ''}, {hardwareProfileId: hardwareProfileId, functionalityProfileGroupId: functionalityProfileGroupId, registrationResult: registrationResult, connectorType: connectorType });\n }\n\n export function saveFiscalIntegrationRegistrationResultAsync(context: IContext, hardwareProfileId?: string | null, functionalityProfileGroupId?: string | null, registrationResult?: FiscalIntegrationRegistrationResult | null, connectorType?: number | null):AsyncResult {\n const request = createSaveFiscalIntegrationRegistrationResultInput(hardwareProfileId, functionalityProfileGroupId, registrationResult, connectorType);\n return executeAction(request, context);\n }\n \n export function createGetFiscalIntegrationRegistrationProcessInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetFiscalIntegrationRegistrationProcess', true, \n 'FiscalIntegrationRegistrationProcessClass'\n , 'false', { bypassCache: 'none', returnEntity: 'FiscalIntegrationRegistrationProcess'}, { });\n }\n\n export function getFiscalIntegrationRegistrationProcessAsync(context: IContext):AsyncResult {\n const request = createGetFiscalIntegrationRegistrationProcessInput();\n return executeAction(request, context);\n }\n \n export function createGetChannelSupportedFiscalIntegrationEventsByGroupInput(functionalityProfileGroupId?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetChannelSupportedFiscalIntegrationEventsByGroup', true, \n 'FiscalIntegrationSupportedEventsClass'\n , 'false', { bypassCache: 'none', returnEntity: 'FiscalIntegrationSupportedEvents'}, {functionalityProfileGroupId: functionalityProfileGroupId });\n }\n\n export function getChannelSupportedFiscalIntegrationEventsByGroupAsync(context: IContext, functionalityProfileGroupId?: string | null):AsyncResult {\n const request = createGetChannelSupportedFiscalIntegrationEventsByGroupInput(functionalityProfileGroupId);\n return executeAction(request, context);\n }\n \n export function createGetFiscalIntegrationTechnicalProfilesInput(queryResultSettings: IQueryResultSettings, hardwareProfileId?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetFiscalIntegrationTechnicalProfiles', true, \n 'FiscalIntegrationTechnicalProfileClass'\n , 'true', { bypassCache: 'none', returnEntity: 'FiscalIntegrationTechnicalProfile'}, {hardwareProfileId: hardwareProfileId });\n }\n\n export function getFiscalIntegrationTechnicalProfilesAsync(context: IContext, hardwareProfileId?: string | null):AsyncResult {\n const request = createGetFiscalIntegrationTechnicalProfilesInput(context.queryResultSettings, hardwareProfileId);\n return executeAction(request, context);\n }\n \n export function createGetFiscalIntegrationTechnicalProfilesByFunctionalityGroupIdsInput(queryResultSettings: IQueryResultSettings, hardwareProfileId?: string | null, functionalityProfileGroupId?: string[] | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetFiscalIntegrationTechnicalProfilesByFunctionalityGroupIds', true, \n 'FiscalIntegrationTechnicalProfileClass'\n , 'true', { bypassCache: 'none', returnEntity: 'FiscalIntegrationTechnicalProfile'}, {hardwareProfileId: hardwareProfileId, functionalityProfileGroupId: functionalityProfileGroupId });\n }\n\n export function getFiscalIntegrationTechnicalProfilesByFunctionalityGroupIdsAsync(context: IContext, hardwareProfileId?: string | null, functionalityProfileGroupId?: string[] | null):AsyncResult {\n const request = createGetFiscalIntegrationTechnicalProfilesByFunctionalityGroupIdsInput(context.queryResultSettings, hardwareProfileId, functionalityProfileGroupId);\n return executeAction(request, context);\n }\n \n export function createGetFiscalRegistrationProcessSummaryInput(hardwareProfileId?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetFiscalRegistrationProcessSummary', true, \n 'FiscalIntegrationFiscalRegistrationProcessSummaryClass'\n , 'false', { bypassCache: 'none', returnEntity: 'FiscalIntegrationFiscalRegistrationProcessSummary'}, {hardwareProfileId: hardwareProfileId });\n }\n\n export function getFiscalRegistrationProcessSummaryAsync(context: IContext, hardwareProfileId?: string | null):AsyncResult {\n const request = createGetFiscalRegistrationProcessSummaryInput(hardwareProfileId);\n return executeAction(request, context);\n }\n \n export function createBackupFiscalRegistrationProcessContextInput(terminalId: string | null, storeNumber: string | null, channelId: number, fiscalProcessCompleted: boolean, fiscalIntegrationSerializedContext?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('BackupFiscalRegistrationProcessContext', true, '', '', { bypassCache: 'get', returnEntity: ''}, {terminalId: terminalId, storeNumber: storeNumber, channelId: channelId, fiscalProcessCompleted: fiscalProcessCompleted, fiscalIntegrationSerializedContext: fiscalIntegrationSerializedContext });\n }\n\n export function backupFiscalRegistrationProcessContextAsync(context: IContext, terminalId: string | null, storeNumber: string | null, channelId: number, fiscalProcessCompleted: boolean, fiscalIntegrationSerializedContext?: string | null):AsyncResult {\n const request = createBackupFiscalRegistrationProcessContextInput(terminalId, storeNumber, channelId, fiscalProcessCompleted, fiscalIntegrationSerializedContext);\n return executeAction(request, context);\n }\n \n export function createGetActiveFiscalRegistrationProcessContextBackupInput(terminalId: string | null, storeNumber: string | null, channelId: number): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetActiveFiscalRegistrationProcessContextBackup', true, '', 'false', { bypassCache: 'none', returnEntity: ''}, {terminalId: terminalId, storeNumber: storeNumber, channelId: channelId });\n }\n\n export function getActiveFiscalRegistrationProcessContextBackupAsync(context: IContext, terminalId: string | null, storeNumber: string | null, channelId: number):AsyncResult {\n const request = createGetActiveFiscalRegistrationProcessContextBackupInput(terminalId, storeNumber, channelId);\n return executeAction(request, context);\n }\n \n export function createGetFiscalIntegrationTechnicalProfilesBySearchCriteriaInput(queryResultSettings: IQueryResultSettings, hardwareProfileId?: string | null, fiscalIntegrationTechnicalProfileSearchCriteria?: FiscalIntegrationTechnicalProfileSearchCriteria | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetFiscalIntegrationTechnicalProfilesBySearchCriteria', true, \n 'FiscalIntegrationTechnicalProfileClass'\n , 'true', { bypassCache: 'none', returnEntity: 'FiscalIntegrationTechnicalProfile'}, {hardwareProfileId: hardwareProfileId, fiscalIntegrationTechnicalProfileSearchCriteria: fiscalIntegrationTechnicalProfileSearchCriteria });\n }\n\n export function getFiscalIntegrationTechnicalProfilesBySearchCriteriaAsync(context: IContext, hardwareProfileId?: string | null, fiscalIntegrationTechnicalProfileSearchCriteria?: FiscalIntegrationTechnicalProfileSearchCriteria | null):AsyncResult {\n const request = createGetFiscalIntegrationTechnicalProfilesBySearchCriteriaInput(context.queryResultSettings, hardwareProfileId, fiscalIntegrationTechnicalProfileSearchCriteria);\n return executeAction(request, context);\n }\n \n export function createGetFiscalIntegrationServiceStatusInput(fiscalIntegrationServiceInfo?: FiscalIntegrationServiceInfo | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetFiscalIntegrationServiceStatus', true, \n 'FiscalIntegrationServiceStatusClass'\n , 'false', { bypassCache: 'none', returnEntity: 'FiscalIntegrationServiceStatus'}, {fiscalIntegrationServiceInfo: fiscalIntegrationServiceInfo });\n }\n\n export function getFiscalIntegrationServiceStatusAsync(context: IContext, fiscalIntegrationServiceInfo?: FiscalIntegrationServiceInfo | null):AsyncResult {\n const request = createGetFiscalIntegrationServiceStatusInput(fiscalIntegrationServiceInfo);\n return executeAction(request, context);\n }\n \n export function createSubmitFiscalIntegrationDocumentInput(documentToSubmit?: string | null, fiscalIntegrationServiceInfo?: FiscalIntegrationServiceInfo | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('SubmitFiscalIntegrationDocument', true, \n 'FiscalIntegrationServiceCommunicationResultClass'\n , 'false', { bypassCache: 'get', returnEntity: 'FiscalIntegrationServiceCommunicationResult'}, {documentToSubmit: documentToSubmit, fiscalIntegrationServiceInfo: fiscalIntegrationServiceInfo });\n }\n\n export function submitFiscalIntegrationDocumentAsync(context: IContext, documentToSubmit?: string | null, fiscalIntegrationServiceInfo?: FiscalIntegrationServiceInfo | null):AsyncResult {\n const request = createSubmitFiscalIntegrationDocumentInput(documentToSubmit, fiscalIntegrationServiceInfo);\n return executeAction(request, context);\n }\n \n export function createGetFeatureStatesInput(queryResultSettings: IQueryResultSettings, featureNames?: string[] | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetFeatureStates', true, \n 'FeatureStateClass'\n , 'true', { bypassCache: 'none', returnEntity: 'FeatureState'}, {featureNames: featureNames });\n }\n\n export function getFeatureStatesAsync(context: IContext, featureNames?: string[] | null):AsyncResult {\n const request = createGetFeatureStatesInput(context.queryResultSettings, featureNames);\n return executeAction(request, context);\n }\n \n export function createGetLastFiscalIntegrationSequentialSignaturesInput(queryResultSettings: IQueryResultSettings, sequentialKeys?: string[] | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetLastFiscalIntegrationSequentialSignatures', true, \n 'FiscalIntegrationSequentialSignatureDataClass'\n , 'true', { bypassCache: 'none', returnEntity: 'FiscalIntegrationSequentialSignatureData'}, {sequentialKeys: sequentialKeys });\n }\n\n export function getLastFiscalIntegrationSequentialSignaturesAsync(context: IContext, sequentialKeys?: string[] | null):AsyncResult {\n const request = createGetLastFiscalIntegrationSequentialSignaturesInput(context.queryResultSettings, sequentialKeys);\n return executeAction(request, context);\n }\n \n export function createCreateFiscalTransactionInput(functionalityProfileGroupId: string | null, registrationResult: FiscalIntegrationRegistrationResult | null, connectorType: number): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('CreateFiscalTransaction', true, \n 'FiscalTransactionClass'\n , 'false', { bypassCache: 'get', returnEntity: 'FiscalTransaction'}, {functionalityProfileGroupId: functionalityProfileGroupId, registrationResult: registrationResult, connectorType: connectorType });\n }\n\n export function createFiscalTransactionAsync(context: IContext, functionalityProfileGroupId: string | null, registrationResult: FiscalIntegrationRegistrationResult | null, connectorType: number):AsyncResult {\n const request = createCreateFiscalTransactionInput(functionalityProfileGroupId, registrationResult, connectorType);\n return executeAction(request, context);\n }\n \n export function createGetEstimatedPickupTimeslotAvailabilitiesInput(queryResultSettings: IQueryResultSettings, searchCriteria?: PickupTimeslotAvailabilitySearchCriteria | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetEstimatedPickupTimeslotAvailabilities', true, \n 'PickupTimeslotAvailabilityClass'\n , 'true', { bypassCache: 'none', returnEntity: 'PickupTimeslotAvailability'}, {searchCriteria: searchCriteria });\n }\n\n export function getEstimatedPickupTimeslotAvailabilitiesAsync(context: IContext, searchCriteria?: PickupTimeslotAvailabilitySearchCriteria | null):AsyncResult {\n const request = createGetEstimatedPickupTimeslotAvailabilitiesInput(context.queryResultSettings, searchCriteria);\n return executeAction(request, context);\n }\n \n export function createCalculateSalesDocumentInput(salesDocument?: Cart | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('CalculateSalesDocument', true, \n 'CartClass'\n , 'false', { bypassCache: 'get', returnEntity: 'Cart'}, {salesDocument: salesDocument });\n }\n\n export function calculateSalesDocumentAsync(context: IContext, salesDocument?: Cart | null):AsyncResult {\n const request = createCalculateSalesDocumentInput(salesDocument);\n return executeAction(request, context);\n }\n \n export function createSearchVendorsInput(queryResultSettings: IQueryResultSettings, searchCriteria?: VendorSearchCriteria | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('SearchVendors', true, \n 'VendorClass'\n , 'true', { bypassCache: 'none', returnEntity: 'Vendor'}, {searchCriteria: searchCriteria });\n }\n\n export function searchVendorsAsync(context: IContext, searchCriteria?: VendorSearchCriteria | null):AsyncResult {\n const request = createSearchVendorsInput(context.queryResultSettings, searchCriteria);\n return executeAction(request, context);\n }\n \n export function createValidateVendorApprovedForItemInput(itemId?: string | null, vendorAccountNumber?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('ValidateVendorApprovedForItem', true, \n 'VendorValidationResultClass'\n , 'false', { bypassCache: 'get', returnEntity: 'VendorValidationResult'}, {itemId: itemId, vendorAccountNumber: vendorAccountNumber });\n }\n\n export function validateVendorApprovedForItemAsync(context: IContext, itemId?: string | null, vendorAccountNumber?: string | null):AsyncResult {\n const request = createValidateVendorApprovedForItemInput(itemId, vendorAccountNumber);\n return executeAction(request, context);\n }\n \n export function createLocalizationIndiaGetBusinessVerticalsInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('LocalizationIndiaGetBusinessVerticals', true, \n 'BusinessVerticalsIndiaClass'\n , 'true', { bypassCache: 'get', returnEntity: 'BusinessVerticalsIndia'}, { });\n }\n\n export function localizationIndiaGetBusinessVerticalsAsync(context: IContext):AsyncResult {\n const request = createLocalizationIndiaGetBusinessVerticalsInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetButtonGridsInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetButtonGrids', false, \n 'ButtonGridClass'\n , 'true', { bypassCache: 'none', returnEntity: 'ButtonGrid'}, { });\n }\n\n export function getButtonGridsAsync(context: IContext):AsyncResult {\n const request = createGetButtonGridsInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetButtonGridsByScreenSizeInput(queryResultSettings: IQueryResultSettings, height: number, width: number): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetButtonGridsByScreenSize', false, \n 'ButtonGridClass'\n , 'true', { bypassCache: 'none', returnEntity: 'ButtonGrid'}, {height: height, width: width });\n }\n\n export function getButtonGridsByScreenSizeAsync(context: IContext, height: number, width: number):AsyncResult {\n const request = createGetButtonGridsByScreenSizeInput(context.queryResultSettings, height, width);\n return executeAction(request, context);\n }\n \n export function createGetOperationalInsightsConfigurationInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetOperationalInsightsConfiguration', false, \n 'OperationalInsightsConfigurationClass'\n , 'false', { bypassCache: 'none', returnEntity: 'OperationalInsightsConfiguration'}, { });\n }\n\n export function getOperationalInsightsConfigurationAsync(context: IContext):AsyncResult {\n const request = createGetOperationalInsightsConfigurationInput();\n return executeAction(request, context);\n }\n \n export function createGetCashDeclarationsInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCashDeclarations', false, \n 'CashDeclarationClass'\n , 'true', { bypassCache: 'none', returnEntity: 'CashDeclaration'}, { });\n }\n\n export function getCashDeclarationsAsync(context: IContext):AsyncResult {\n const request = createGetCashDeclarationsInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetCountryRegionsInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCountryRegions', false, \n 'CountryRegionInfoClass'\n , 'true', { bypassCache: 'none', returnEntity: 'CountryRegionInfo'}, { });\n }\n\n export function getCountryRegionsAsync(context: IContext):AsyncResult {\n const request = createGetCountryRegionsInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetCustomerGroupsInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCustomerGroups', false, \n 'CustomerGroupClass'\n , 'true', { bypassCache: 'none', returnEntity: 'CustomerGroup'}, { });\n }\n\n export function getCustomerGroupsAsync(context: IContext):AsyncResult {\n const request = createGetCustomerGroupsInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetChannelDeliveryOptionConfigurationInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetChannelDeliveryOptionConfiguration', false, \n 'ChannelDeliveryOptionConfigurationClass'\n , 'false', { bypassCache: 'none', returnEntity: 'ChannelDeliveryOptionConfiguration'}, { });\n }\n\n export function getChannelDeliveryOptionConfigurationAsync(context: IContext):AsyncResult {\n const request = createGetChannelDeliveryOptionConfigurationInput();\n return executeAction(request, context);\n }\n \n export function createGetChannelsByTypeInput(queryResultSettings: IQueryResultSettings, channelType?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetChannelsByType', false, \n 'ChannelIdentityClass'\n , 'true', { bypassCache: 'none', returnEntity: 'ChannelIdentity'}, {channelType: channelType });\n }\n\n export function getChannelsByTypeAsync(context: IContext, channelType?: string | null):AsyncResult {\n const request = createGetChannelsByTypeInput(context.queryResultSettings, channelType);\n return executeAction(request, context);\n }\n \n export function createGetChannelsInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetChannels', false, \n 'ChannelIdentityClass'\n , 'true', { bypassCache: 'none', returnEntity: 'ChannelIdentity'}, { });\n }\n\n export function getChannelsAsync(context: IContext):AsyncResult {\n const request = createGetChannelsInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetOnlineChannelAzureB2CConfigurationInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetOnlineChannelAzureB2CConfiguration', false, \n 'OnlineChannelAzureB2CConfigurationClass'\n , 'false', { bypassCache: 'none', returnEntity: 'OnlineChannelAzureB2CConfiguration'}, { });\n }\n\n export function getOnlineChannelAzureB2CConfigurationAsync(context: IContext):AsyncResult {\n const request = createGetOnlineChannelAzureB2CConfigurationInput();\n return executeAction(request, context);\n }\n \n export function createSearchChannelsInput(queryResultSettings: IQueryResultSettings, searchCriteria?: ChannelSearchCriteria | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('SearchChannels', true, \n 'ChannelIdentityClass'\n , 'true', { bypassCache: 'none', returnEntity: 'ChannelIdentity'}, {searchCriteria: searchCriteria });\n }\n\n export function searchChannelsAsync(context: IContext, searchCriteria?: ChannelSearchCriteria | null):AsyncResult {\n const request = createSearchChannelsInput(context.queryResultSettings, searchCriteria);\n return executeAction(request, context);\n }\n \n export function createGetEnvironmentConfigurationInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetEnvironmentConfiguration', false, \n 'EnvironmentConfigurationClass'\n , 'false', { bypassCache: 'none', returnEntity: 'EnvironmentConfiguration'}, { });\n }\n\n export function getEnvironmentConfigurationAsync(context: IContext):AsyncResult {\n const request = createGetEnvironmentConfigurationInput();\n return executeAction(request, context);\n }\n \n export function createGetOrderManagementConfigurationInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetOrderManagementConfiguration', false, \n 'OrderManagementConfigurationClass'\n , 'false', { bypassCache: 'none', returnEntity: 'OrderManagementConfiguration'}, { });\n }\n\n export function getOrderManagementConfigurationAsync(context: IContext):AsyncResult {\n const request = createGetOrderManagementConfigurationInput();\n return executeAction(request, context);\n }\n \n export function createGetSearchConfigurationInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetSearchConfiguration', false, \n 'SearchConfigurationClass'\n , 'false', { bypassCache: 'none', returnEntity: 'SearchConfiguration'}, { });\n }\n\n export function getSearchConfigurationAsync(context: IContext):AsyncResult {\n const request = createGetSearchConfigurationInput();\n return executeAction(request, context);\n }\n \n export function createGetExtensionPackageDefinitionsInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetExtensionPackageDefinitions', false, \n 'ExtensionPackageDefinitionClass'\n , 'true', { bypassCache: 'none', returnEntity: 'ExtensionPackageDefinition'}, { });\n }\n\n export function getExtensionPackageDefinitionsAsync(context: IContext):AsyncResult {\n const request = createGetExtensionPackageDefinitionsInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetExtensionProfileInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetExtensionProfile', false, \n 'ExtensionProfileClass'\n , 'false', { bypassCache: 'none', returnEntity: 'ExtensionProfile'}, { });\n }\n\n export function getExtensionProfileAsync(context: IContext):AsyncResult {\n const request = createGetExtensionProfileInput();\n return executeAction(request, context);\n }\n \n export function createGetDeviceConfigurationInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetDeviceConfiguration', false, \n 'DeviceConfigurationClass'\n , 'false', { bypassCache: 'none', returnEntity: 'DeviceConfiguration'}, { });\n }\n\n export function getDeviceConfigurationAsync(context: IContext):AsyncResult {\n const request = createGetDeviceConfigurationInput();\n return executeAction(request, context);\n }\n \n export function createGetVisualProfileInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetVisualProfile', false, \n 'VisualProfileClass'\n , 'false', { bypassCache: 'none', returnEntity: 'VisualProfile'}, { });\n }\n\n export function getVisualProfileAsync(context: IContext):AsyncResult {\n const request = createGetVisualProfileInput();\n return executeAction(request, context);\n }\n \n export function createGetLanguagesInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetLanguages', false, \n 'SupportedLanguageClass'\n , 'true', { bypassCache: 'none', returnEntity: 'SupportedLanguage'}, { });\n }\n\n export function getLanguagesAsync(context: IContext):AsyncResult {\n const request = createGetLanguagesInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetAffiliationsInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetAffiliations', false, \n 'AffiliationClass'\n , 'true', { bypassCache: 'none', returnEntity: 'Affiliation'}, { });\n }\n\n export function getAffiliationsAsync(context: IContext):AsyncResult {\n const request = createGetAffiliationsInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetOperationPermissionsInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetOperationPermissions', false, \n 'OperationPermissionClass'\n , 'true', { bypassCache: 'none', returnEntity: 'OperationPermission'}, { });\n }\n\n export function getOperationPermissionsAsync(context: IContext):AsyncResult {\n const request = createGetOperationPermissionsInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetReasonCodesInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetReasonCodes', false, \n 'ReasonCodeClass'\n , 'true', { bypassCache: 'none', returnEntity: 'ReasonCode'}, { });\n }\n\n export function getReasonCodesAsync(context: IContext):AsyncResult {\n const request = createGetReasonCodesInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetReturnOrderReasonCodesInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetReturnOrderReasonCodes', false, \n 'ReasonCodeClass'\n , 'true', { bypassCache: 'none', returnEntity: 'ReasonCode'}, { });\n }\n\n export function getReturnOrderReasonCodesAsync(context: IContext):AsyncResult {\n const request = createGetReturnOrderReasonCodesInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetSalesTaxGroupsInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetSalesTaxGroups', false, \n 'SalesTaxGroupClass'\n , 'true', { bypassCache: 'none', returnEntity: 'SalesTaxGroup'}, { });\n }\n\n export function getSalesTaxGroupsAsync(context: IContext):AsyncResult {\n const request = createGetSalesTaxGroupsInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetTenderTypesInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetTenderTypes', false, \n 'TenderTypeClass'\n , 'true', { bypassCache: 'none', returnEntity: 'TenderType'}, { });\n }\n\n export function getTenderTypesAsync(context: IContext):AsyncResult {\n const request = createGetTenderTypesInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetUnitsOfMeasureInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetUnitsOfMeasure', false, \n 'UnitOfMeasureClass'\n , 'true', { bypassCache: 'none', returnEntity: 'UnitOfMeasure'}, { });\n }\n\n export function getUnitsOfMeasureAsync(context: IContext):AsyncResult {\n const request = createGetUnitsOfMeasureInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetDiscountCodesInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetDiscountCodes', false, \n 'DiscountCodeClass'\n , 'true', { bypassCache: 'none', returnEntity: 'DiscountCode'}, { });\n }\n\n export function getDiscountCodesAsync(context: IContext):AsyncResult {\n const request = createGetDiscountCodesInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetCurrenciesInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCurrencies', false, \n 'CurrencyClass'\n , 'true', { bypassCache: 'none', returnEntity: 'Currency'}, { });\n }\n\n export function getCurrenciesAsync(context: IContext):AsyncResult {\n const request = createGetCurrenciesInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetCurrenciesAmountInput(queryResultSettings: IQueryResultSettings, currencyCode: string | null, amount: number): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCurrenciesAmount', false, \n 'CurrencyAmountClass'\n , 'true', { bypassCache: 'none', returnEntity: 'CurrencyAmount'}, {currencyCode: currencyCode, amount: amount });\n }\n\n export function getCurrenciesAmountAsync(context: IContext, currencyCode: string | null, amount: number):AsyncResult {\n const request = createGetCurrenciesAmountInput(context.queryResultSettings, currencyCode, amount);\n return executeAction(request, context);\n }\n \n export function createGetCommissionSalesGroupsInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetCommissionSalesGroups', false, \n 'CommissionSalesGroupClass'\n , 'true', { bypassCache: 'none', returnEntity: 'CommissionSalesGroup'}, { });\n }\n\n export function getCommissionSalesGroupsAsync(context: IContext):AsyncResult {\n const request = createGetCommissionSalesGroupsInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createSearchCommissionSalesGroupsInput(queryResultSettings: IQueryResultSettings, searchText?: string | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('SearchCommissionSalesGroups', false, \n 'CommissionSalesGroupClass'\n , 'true', { bypassCache: 'none', returnEntity: 'CommissionSalesGroup'}, {searchText: searchText });\n }\n\n export function searchCommissionSalesGroupsAsync(context: IContext, searchText?: string | null):AsyncResult {\n const request = createSearchCommissionSalesGroupsInput(context.queryResultSettings, searchText);\n return executeAction(request, context);\n }\n \n export function createGetPaymentMerchantInformationInput(hardwareProfileId?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetPaymentMerchantInformation', false, \n 'PaymentMerchantInformationClass'\n , 'false', { bypassCache: 'none', returnEntity: 'PaymentMerchantInformation'}, {hardwareProfileId: hardwareProfileId });\n }\n\n export function getPaymentMerchantInformationAsync(context: IContext, hardwareProfileId?: string | null):AsyncResult {\n const request = createGetPaymentMerchantInformationInput(hardwareProfileId);\n return executeAction(request, context);\n }\n \n export function createGetPaymentPropertiesIfModifiedInput(hardwareProfileId?: string | null, merchantInformationHash?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetPaymentPropertiesIfModified', false, \n 'PaymentMerchantInformationClass'\n , 'false', { bypassCache: 'none', returnEntity: 'PaymentMerchantInformation'}, {hardwareProfileId: hardwareProfileId, merchantInformationHash: merchantInformationHash });\n }\n\n export function getPaymentPropertiesIfModifiedAsync(context: IContext, hardwareProfileId?: string | null, merchantInformationHash?: string | null):AsyncResult {\n const request = createGetPaymentPropertiesIfModifiedInput(hardwareProfileId, merchantInformationHash);\n return executeAction(request, context);\n }\n \n export function createGetOnlineChannelPublishStatusInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetOnlineChannelPublishStatus', false, '', 'false', { bypassCache: 'none', returnEntity: ''}, { });\n }\n\n export function getOnlineChannelPublishStatusAsync(context: IContext):AsyncResult {\n const request = createGetOnlineChannelPublishStatusInput();\n return executeAction(request, context);\n }\n \n export function createSetOnlineChannelPublishStatusInput(publishingStatus: number, statusMessage?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('SetOnlineChannelPublishStatus', true, '', '', { bypassCache: 'get', returnEntity: ''}, {publishingStatus: publishingStatus, statusMessage: statusMessage });\n }\n\n export function setOnlineChannelPublishStatusAsync(context: IContext, publishingStatus: number, statusMessage?: string | null):AsyncResult {\n const request = createSetOnlineChannelPublishStatusInput(publishingStatus, statusMessage);\n return executeAction(request, context);\n }\n \n export function createGetInventoryConfigurationInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetInventoryConfiguration', false, \n 'ChannelInventoryConfigurationClass'\n , 'false', { bypassCache: 'none', returnEntity: 'ChannelInventoryConfiguration'}, { });\n }\n\n export function getInventoryConfigurationAsync(context: IContext):AsyncResult {\n const request = createGetInventoryConfigurationInput();\n return executeAction(request, context);\n }\n \n export function createGetMerchandisingConfigurationInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetMerchandisingConfiguration', false, \n 'ChannelMerchandisingConfigurationClass'\n , 'false', { bypassCache: 'none', returnEntity: 'ChannelMerchandisingConfiguration'}, { });\n }\n\n export function getMerchandisingConfigurationAsync(context: IContext):AsyncResult {\n const request = createGetMerchandisingConfigurationInput();\n return executeAction(request, context);\n }\n \n export function createGetPurchaseConfigurationInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetPurchaseConfiguration', false, \n 'ChannelPurchaseConfigurationClass'\n , 'false', { bypassCache: 'none', returnEntity: 'ChannelPurchaseConfiguration'}, { });\n }\n\n export function getPurchaseConfigurationAsync(context: IContext):AsyncResult {\n const request = createGetPurchaseConfigurationInput();\n return executeAction(request, context);\n }\n \n export function createSearchJournalNamesInput(queryResultSettings: IQueryResultSettings, searchCriteria?: InventoryJournalNameSearchCriteria | null): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('SearchJournalNames', true, \n 'InventoryJournalNameClass'\n , 'true', { bypassCache: 'none', returnEntity: 'InventoryJournalName'}, {searchCriteria: searchCriteria });\n }\n\n export function searchJournalNamesAsync(context: IContext, searchCriteria?: InventoryJournalNameSearchCriteria | null):AsyncResult {\n const request = createSearchJournalNamesInput(context.queryResultSettings, searchCriteria);\n return executeAction(request, context);\n }\n \n export function createGetAvailableDevicesInput(queryResultSettings: IQueryResultSettings, deviceType: number): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetAvailableDevices', false, \n 'DeviceClass'\n , 'true', { bypassCache: 'none', returnEntity: 'Device'}, {deviceType: deviceType });\n }\n\n export function getAvailableDevicesAsync(context: IContext, deviceType: number):AsyncResult {\n const request = createGetAvailableDevicesInput(context.queryResultSettings, deviceType);\n return executeAction(request, context);\n }\n \n export function createGetUserDefinedSecretStringInput(secretName?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetUserDefinedSecretString', false, '', 'false', { bypassCache: 'none', returnEntity: ''}, {secretName: secretName });\n }\n\n export function getUserDefinedSecretStringAsync(context: IContext, secretName?: string | null):AsyncResult {\n const request = createGetUserDefinedSecretStringInput(secretName);\n return executeAction(request, context);\n }\n \n export function createGetUserDefinedSecretCertificateInput(secretName?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetUserDefinedSecretCertificate', false, \n 'UserDefinedSecretCertificateResultClass'\n , 'false', { bypassCache: 'none', returnEntity: 'UserDefinedSecretCertificateResult'}, {secretName: secretName });\n }\n\n export function getUserDefinedSecretCertificateAsync(context: IContext, secretName?: string | null):AsyncResult {\n const request = createGetUserDefinedSecretCertificateInput(secretName);\n return executeAction(request, context);\n }\n \n export function createGetImageBlobInput(imageId: number): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetImageBlob', false, \n 'MediaBlobClass'\n , 'false', { bypassCache: 'none', returnEntity: 'MediaBlob'}, {imageId: imageId });\n }\n\n export function getImageBlobAsync(context: IContext, imageId: number):AsyncResult {\n const request = createGetImageBlobInput(imageId);\n return executeAction(request, context);\n }\n \n export function createGetExtensibleEnumerationsInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetExtensibleEnumerations', false, \n 'ExtensibleEnumerationContainerClass'\n , 'true', { bypassCache: 'none', returnEntity: 'ExtensibleEnumerationContainer'}, { });\n }\n\n export function getExtensibleEnumerationsAsync(context: IContext):AsyncResult {\n const request = createGetExtensibleEnumerationsInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetAddressPurposesInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetAddressPurposes', false, \n 'AddressPurposeClass'\n , 'true', { bypassCache: 'none', returnEntity: 'AddressPurpose'}, { });\n }\n\n export function getAddressPurposesAsync(context: IContext):AsyncResult {\n const request = createGetAddressPurposesInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createGetReturnPolicyInput(): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('GetReturnPolicy', false, \n 'ReturnPolicyClass'\n , 'false', { bypassCache: 'none', returnEntity: 'ReturnPolicy'}, { });\n }\n\n export function getReturnPolicyAsync(context: IContext):AsyncResult {\n const request = createGetReturnPolicyInput();\n return executeAction(request, context);\n }\n \n export function createGetEmailReceiptSettingsInput(queryResultSettings: IQueryResultSettings): IDataServiceRequest {\n const query = storeQuery().resultSettings(queryResultSettings);\n return query.createDataServiceRequestForOperation('GetEmailReceiptSettings', false, \n 'EmailReceiptSettingsClass'\n , 'true', { bypassCache: 'none', returnEntity: 'EmailReceiptSettings'}, { });\n }\n\n export function getEmailReceiptSettingsAsync(context: IContext):AsyncResult {\n const request = createGetEmailReceiptSettingsInput(context.queryResultSettings);\n return executeAction(request, context);\n }\n \n export function createCheckFiscalIntegrationComplianceInput(hardwareProfileId?: string | null): IDataServiceRequest {\n const query = storeQuery();\n return query.createDataServiceRequestForOperation('CheckFiscalIntegrationCompliance', false, \n 'FiscalIntegrationComplianceResultClass'\n , 'false', { bypassCache: 'get', returnEntity: 'FiscalIntegrationComplianceResult'}, {hardwareProfileId: hardwareProfileId });\n }\n\n export function checkFiscalIntegrationComplianceAsync(context: IContext, hardwareProfileId?: string | null):AsyncResult {\n const request = createCheckFiscalIntegrationComplianceInput(hardwareProfileId);\n return executeAction(request, context);\n }\n \n ","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { DataServiceRequest } from './DataServiceRequest';\nimport { IDataServiceOptions, IDataServiceQueryInternal, IDataServiceRequest, IQueryResultSettings } from './Interfaces';\n\n/**\n * Represents a data service query object.\n */\nexport class DataServiceQuery {\n private _query: IDataServiceQueryInternal;\n\n /**\n * Creates a new instance of DataServiceQuery.\n * @param {IDataServiceRequestFactory} dataServiceRequestFactory The data service request factory.\n * @param {string} [entitySet] The entity set name.\n * @param {string} [entityType] The entity type name.\n * @param {any} [returntype] The return type of query.\n * @param {any} [key] Entity key.\n */\n constructor(entitySet?: string, entityType?: string, returnType?: any, key?: any) {\n this._query = {\n entitySet,\n entityType,\n key,\n returnType,\n tokens: {},\n // by default all action will skip reading from cache before making execute call\n options: { bypassCache: 'get', returnEntity: entityType },\n resultSettings: { Paging: {}, Sorting: {} }\n };\n }\n\n /**\n * Query result settings.\n *\n * @param {string} value The value of query result settings.\n */\n public resultSettings(value: IQueryResultSettings): DataServiceQuery {\n if (!value) {\n value = {};\n }\n\n this._query.resultSettings = {};\n this._query.resultSettings.Paging = value.Paging || {};\n this._query.resultSettings.Sorting = value.Sorting || {};\n this._query.resultSettings.count = value.count;\n\n return this;\n }\n\n /**\n * Filter Clause.\n * @param {string} value The filter value.\n */\n public filter(value: string): DataServiceQuery {\n this._query.filterSettings = value;\n\n return this;\n }\n\n /**\n * Top clause\n * @param {string} value The number of top rows to select.\n */\n public top(value: number): DataServiceQuery {\n this._query.resultSettings.Paging.Top = value;\n\n return this;\n }\n\n /**\n * Skip clause\n * @param {string} value The number of rows to skip\n */\n public skip(value: number): DataServiceQuery {\n this._query.resultSettings.Paging.Skip = value;\n\n return this;\n }\n\n /**\n * Expand clause\n * @param {string} propertyName The property name to expand.\n */\n public expand(propertyName: string): DataServiceQuery {\n if (this._query.expands == null) {\n this._query.expands = [];\n }\n\n this._query.expands.push(propertyName);\n return this;\n }\n\n /**\n * Request number of total row available.\n */\n public inlineCount(): DataServiceQuery {\n this._query.inlineCount = true;\n\n return this;\n }\n\n /**\n * Order by clause.\n * @param {string} value The field name for ordering.\n */\n public orderBy(value: string): DataServiceQuery {\n if (!this._query.resultSettings.Sorting.Columns) {\n this._query.resultSettings.Sorting.Columns = [];\n }\n\n this._query.resultSettings.Sorting.Columns.push({ ColumnName: value });\n\n return this;\n }\n\n /**\n * Transforms the request into a create request.\n * @param {string} object The object.\n * @return {IDataServiceRequest} The data service request.\n */\n public create(object: any): IDataServiceRequest {\n this._query.action = 'Create';\n this._query.data = this._createODataParameters(object);\n this._query.options.bypassCache = 'none';\n return this._createRequest();\n }\n\n /**\n * Transforms the request into a read request.\n * @return {IDataServiceRequest} The data service request.\n */\n public read(): IDataServiceRequest {\n if (this._query.key || (this._query.entitySet === 'Customers' && this._query.key !== null && this._query.key !== undefined)) {\n this._query.action = 'Read';\n } else {\n this._query.action = 'ReadAll';\n this._query.isReturnTypeACollection = true;\n }\n\n this._query.options.bypassCache = 'none';\n return this._createRequest();\n }\n\n /**\n * Transforms the request into an update request.\n * @param {string} object The object.\n * @return {IDataServiceRequest} The data service request.\n */\n public update(object: any): IDataServiceRequest {\n this._query.action = 'Update';\n this._query.data = this._createODataParameters(object);\n\n return this._createRequest();\n }\n\n /**\n * Transforms the request into a delete request.\n * @return {DataServiceRequest} The data service request.\n */\n public delete(): IDataServiceRequest {\n this._query.action = 'Delete';\n\n return this._createRequest();\n }\n\n public setGetAllRecords(): void {\n this._query.resultSettings.Paging.Top = -1;\n }\n\n public isGetAllRecords(): boolean {\n return this._query.resultSettings.Paging.Top === -1;\n }\n\n public createDataServiceRequestForOperation(\n operationName: string,\n isAction: boolean,\n returnType: any,\n isReturnTypeACollection: string,\n options: IDataServiceOptions,\n data?: unknown\n ): IDataServiceRequest {\n this._query.returnType = returnType;\n this._query.isAction = isAction;\n this._query.isReturnTypeACollection = isReturnTypeACollection === 'true';\n this._query.action = operationName;\n this._query.data = this._createODataParameters(data);\n this._query.options = { ...{ bypassCache: 'get', returnEntity: 'CUSTOM-ENTITY' }, ...options };\n\n if (this._query.isReturnTypeACollection && !this._query.resultSettings.Paging.Top) {\n // for paginated requests, where we didn't specify page size, set to fetch all records\n this.setGetAllRecords();\n }\n\n return this._createRequest();\n }\n\n private _createODataParameters(data: unknown) {\n return data ? { parameters: data } : undefined;\n }\n\n private _createRequest(): IDataServiceRequest {\n return new DataServiceRequest(this._query);\n }\n}\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable @typescript-eslint/no-var-requires */\nimport { toJS } from 'mobx';\n\nimport { ApiVersion, EntityIdentifier, SortColumn } from './Entities/CommerceTypes.g';\n\nimport {\n BypassCache,\n CacheType,\n ICallerContext,\n IDataServiceQueryInternal,\n IDataServiceRequest,\n IDictionary,\n IPartialCookieContext\n} from './Interfaces';\nimport {\n modelManagersRetailServerRequestError,\n modelManagersRetailServerRequestFinished,\n modelManagersRetailServerRequestStarted,\n Tracer,\n Utils\n} from './logging';\n\nimport { ProxyError } from './exceptions';\nimport { ErrorParser } from './exceptions/ErrorParser';\nimport {\n convertToString,\n EMPTY,\n format,\n hasElements,\n isEmpty,\n isNullOrWhitespace,\n isObjectNotEmptyOrNull\n} from './extensions/StringExtensions';\n\nimport { IODataRequest, ODataHttpRequest } from './externals/DataJS.New';\nexport const ODATA_HAS_NEXT_PAGE_PROPERTY = '@odata.nextLink';\nexport const GET: string = 'GET';\nexport const POST: string = 'POST';\nexport const PATCH: string = 'PATCH';\nexport const DELETE: string = 'DELETE';\nexport const GET_FROM_RETURNIDENTIFIER: string = '___GET__FROM__RETURNIDENTIIER___';\nexport const ODATA_TOTAL_COUNT_PROPERTY = '@odata.count';\n\nlet serverWorkerNotUpdated = false;\nconst ApiTimeoutInMilliSecond = 10000;\nconst OPERATINGUNITNUMBER_HEADERNAME = 'OUN';\nconst AUTHORIZATION_HEADERNAME = 'Authorization';\nconst ACCEPT_LANGUAGE = 'Accept-Language';\nconst REQUEST_ID = 'RequestId';\nconst APPSESSION_ID = 'AppSessionId';\nconst USERSESSION_ID = 'UserSessionId';\nconst DEFAULT_HEADER: { [headerName: string]: string } = {\n Prefer: 'return=representation'\n};\nconst OBO_REQUEST = 'isOBORequest';\nconst GET_ACCOUNT_SELECTION_COOKIE = 'getAccountSelectionCookie';\nconst CUSTOMER_ACCOUNT_NUMBER = 'CAN';\n\nconst fetchCommerceModels = async () => {\n return import('./Entities/CommerceModels.g');\n};\n\nconst isServiceWorkerSupportedOnClient = () => {\n return typeof navigator !== 'undefined' && 'serviceWorker' in navigator;\n};\n\nconst shouldSkipSerializationFromSW = (initialData: any, resultType: any) => {\n if (process.env.NODE_ENV === 'test' || process.env.DEPLOYMENT_ENV !== 'WEBAPP') {\n return true;\n }\n\n if (!initialData || !initialData.requestContext || !initialData.requestContext.features.enable_service_worker) {\n console.log('service worker turned off, skipping sw serialization');\n return true;\n }\n\n if (typeof resultType !== 'string') {\n return true;\n }\n\n // service worker could be old or pending update version\n if (serverWorkerNotUpdated) {\n return true;\n }\n\n if (isServiceWorkerSupportedOnClient()) {\n return initialData.requestContext.features.disableRetailProxySW || initialData.requestContext.query['skip-rp-sw'];\n }\n\n return false;\n};\n\nconst initServerWorker = async () => {\n if (process.env.CURRENT_ENVIRONMENT !== 'node') {\n if (isServiceWorkerSupportedOnClient()) {\n const serviceWorker = await navigator.serviceWorker.ready;\n return serviceWorker;\n }\n }\n};\n\n/***\n * Parses the odata result returned from server.\n *\n * @param {any} data The result returned from server.\n * @param {any} resultType The entity type to parse the result as.\n */\nexport const parseOdataResult = async (data: any, resultType: any): Promise => {\n let serviceWorker;\n let Models;\n const initialData = typeof window !== 'undefined' && (window as any).___initialData___;\n const skipSerializationFromSW = shouldSkipSerializationFromSW(initialData, resultType);\n\n if (!skipSerializationFromSW) {\n serviceWorker = await initServerWorker();\n } else {\n // If service workder is skipped, load the commerce models object dynamically\n Models = await fetchCommerceModels();\n }\n\n if (!data) {\n return data;\n }\n\n if (!data.value) {\n if (typeof resultType === 'string') {\n if (process.env.CURRENT_ENVIRONMENT === 'node') {\n Models = require('./Entities/CommerceModels.g');\n return resultType ? new Models[resultType](data) : data;\n } else if (skipSerializationFromSW) {\n return resultType && Models[resultType] ? new Models[resultType](data) : data;\n } else {\n if (!resultType) {\n return data;\n }\n\n return getSerializedResponseFromServiceWorker(serviceWorker, resultType, data);\n }\n }\n\n return resultType ? new resultType(data) : data;\n }\n\n let resultSet = data.value;\n\n if (resultType) {\n if (Object.prototype.toString.call(resultSet) === '[object Array]') {\n if (typeof resultType === 'string') {\n // Include commercemodels in the bundle in the context of node only\n if (process.env.CURRENT_ENVIRONMENT === 'node') {\n Models = require('./Entities/CommerceModels.g');\n for (let i = 0; i < resultSet.length; i++) {\n resultSet[i] = new Models[resultType](resultSet[i]);\n }\n } else if (skipSerializationFromSW) {\n for (let i = 0; i < resultSet.length; i++) {\n resultSet[i] = new Models[resultType](resultSet[i]);\n }\n } else {\n resultSet = await getSerializedResponseFromServiceWorker(serviceWorker, resultType, resultSet);\n }\n } else {\n for (let i = 0; i < resultSet.length; i++) {\n resultSet[i] = new resultType(resultSet[i]);\n }\n }\n }\n }\n\n // hasNextPage only apply to array which is typeof 'object'\n typeof resultSet === 'object' ? (resultSet.hasNextPage = !(data[ODATA_HAS_NEXT_PAGE_PROPERTY] === undefined)) : null;\n return resultSet;\n};\n\n/**\n * @param serviceWorker serviceWorker instance\n * @param resultType CommerceModels type\n * @param data retail serve response to be serialized\n * @returns serialized CommerceModels object\n */\nconst getSerializedResponseFromServiceWorker = (serviceWorker: any, resultType: any, data: any | any[]) => {\n // Import commerce modesl dynamically and serialize, in case if the serialization response is not received\n // from service worker in time\n let timerId;\n const dynamicImportPromise = new Promise((resolve, reject) => {\n timerId = setTimeout(async () => {\n const Models = await fetchCommerceModels();\n serverWorkerNotUpdated = true;\n if (Array.isArray(data)) {\n for (let i = 0; i < data.length; i++) {\n data[i] = resultType && Models[resultType] ? new Models[resultType](data[i]) : data[i];\n }\n\n resolve(data);\n } else {\n resolve(resultType && Models[resultType] ? new Models[resultType](data) : data);\n }\n }, 2000);\n });\n\n const serializePromise = new Promise((resolve, reject) => {\n const messageChannel = new MessageChannel();\n\n messageChannel.port1.onmessage = e => {\n resolve(e.data.serializedData);\n clearTimeout(timerId);\n };\n\n serviceWorker.active.postMessage(\n {\n type: 'SERIALIZE_DATA',\n resultType,\n payload: data\n },\n [messageChannel.port2]\n );\n });\n\n return Promise.race([serializePromise, dynamicImportPromise]);\n};\n\n/**\n * Represents a data service request object.\n */\nexport class DataServiceRequest implements IDataServiceRequest {\n private get batchRequestUri(): string {\n return this._callerContext.requestContext.apiSettings.baseUrl + '/$batch';\n }\n\n /**\n * Gets Locale for the current data service factory instance.\n */\n public get locale(): string {\n return this._callerContext.requestContext.locale;\n }\n\n /**\n * Sets Locale for the current data service factory instance.\n */\n public set locale(locale: string) {\n this._callerContext.requestContext.locale = locale;\n }\n\n /**\n * get cacheKeyFromInput.\n */\n public get cacheKeyFromInput(): string {\n return this._cacheKeyFromInput;\n }\n\n /**\n * get cacheKeyIdentifierFromReturnType.\n */\n public get cacheKeyIdentifierFromReturnType(): string {\n return this._cacheKeyIdentifierFromReturnType;\n }\n\n /**\n * get cacheObjectType.\n */\n public get cacheObjectType(): string {\n return this._cacheObjectType;\n }\n\n /**\n * get cacheKeyFromReturnType.\n */\n public get cacheKeyFromReturnType(): string[] {\n return this._cacheKeyFromReturnType;\n }\n\n /**\n * get totalCount.\n */\n public get totalCount(): number {\n return this._totalCount;\n }\n\n /**\n * get query.\n */\n public get query(): IDataServiceQueryInternal {\n return this._query;\n }\n\n /**\n * Gets query parameters for data service request.\n */\n public queryParams(): T {\n return this._query.data.parameters as T;\n }\n\n /**\n * Gets Odata properties\n */\n public get otherOdataProperties(): IDictionary {\n return this._otherOdata;\n }\n\n private _actionId: string;\n private _cacheObjectType: string;\n private _cacheKeyFromInput: string;\n private _cacheKeyFromReturnType: string[] = [];\n private _cacheKeyIdentifierFromReturnType: string;\n\n private _query: IDataServiceQueryInternal;\n private _callerContext: ICallerContext;\n private _requestUri: string;\n private _method: string;\n private _id: number;\n private _hasOperationName: boolean;\n private _totalCount: number;\n private _otherOdata: IDictionary;\n private _clientTimeoutInMs?: number;\n\n private static buildBatchRequest(batchRequestUri: string, requests: DataServiceRequest[]): IODataRequest {\n let requestId = 1;\n\n // Creates an empty batch request.\n const odataBatchRequest: IODataRequest = {\n requestUri: batchRequestUri,\n method: POST,\n data: { __batchRequests: [] }\n };\n\n const batchRequests = odataBatchRequest.data.__batchRequests;\n let changeRequests: IODataRequest[];\n\n requests.forEach(request => {\n request._id = requestId++;\n\n const odataRequest: IODataRequest = {\n requestUri: request._requestUri,\n method: request._method,\n data: DataServiceRequest.toJson(request._query.data),\n headers: { 'Content-ID': request.id(), Prefer: 'return=representation' }\n };\n\n if (request._method === GET) {\n batchRequests.push(odataRequest);\n } else {\n if (!changeRequests) {\n changeRequests = [];\n batchRequests.push({ __changeRequests: changeRequests });\n }\n changeRequests.push(odataRequest);\n }\n });\n\n return odataBatchRequest;\n }\n\n /**\n * Parse the batch responses.\n * @param {any[]} batchResponses The server responses.\n * @param {any[]} requests The request objects.\n * @param {any[]} responses The responses passed down to the success callback.\n */\n private static parseBatchResponses = async (\n batchResponses: any[],\n requests: any[],\n responses: any[],\n callerContext?: ICallerContext\n ): Promise => {\n let errors: ProxyError[] = new Array();\n\n batchResponses.map(async response => {\n if (response.__changeResponses) {\n errors = errors.concat(\n await DataServiceRequest.parseBatchResponses(response.__changeResponses, requests, responses, callerContext)\n );\n } else {\n if (!response.message) {\n const requestId = parseInt(response.headers['Content-ID'], 10);\n\n responses[requestId] = await parseOdataResult(response.data, requests[requestId - 1]._query.returnType);\n } else {\n errors = errors.concat(ErrorParser.parseErrorMessage(response, callerContext));\n }\n }\n });\n\n return errors;\n };\n\n /**\n * TODO - check if below function can be replaced with JSON.stringify.\n * Helper function to convert data into a stringified JSON object.\n * @param {any} parent The container of the element.\n * @param {any} data The data to be converted to a stringified JSON object.\n * @param {boolean} [modifyDataInPlace] Whether the object passed should be modified in place. If not, a clone is created instead.\n */\n private static toJson(data: any, parent?: any, modifyDataInPlace?: boolean): string {\n let clone = data;\n\n if (data === null) {\n return null;\n } else if (typeof data !== 'object') {\n // if data type is primitive type, no need to process further\n // as calling jquery extend or calling foreach prop on string type\n // will transform string to array of chars which will be incorrect result.\n return data;\n }\n\n if (data && data.parameters) {\n data = data.parameters;\n parent = null;\n } else {\n parent = data;\n }\n\n // clones the data object instead of changing it, if no modifications in place\n if (!modifyDataInPlace) {\n clone = { ...data };\n }\n\n for (const prop in clone) {\n if (clone.hasOwnProperty(prop)) {\n const property = clone[prop];\n\n // only non-undefined properties are added to the object\n if (typeof property !== 'undefined') {\n let value;\n if (property === null) {\n value = null;\n } else if (typeof property === 'object') {\n if (property instanceof Array) {\n value = DataServiceRequest.arrayToJson(property, parent, modifyDataInPlace);\n } else if (property instanceof Date) {\n value = DataServiceRequest.toDateTimeOffset(property);\n } else {\n // recursively stringifies objects\n value = DataServiceRequest.toJson(property, clone, modifyDataInPlace);\n }\n } else {\n value = property;\n }\n\n clone[prop] = value;\n }\n }\n }\n\n return clone;\n }\n\n /**\n * Helper function to convert array into a stringified JSON object following OData specifications.\n * @param {Array} array The data to be converted to a stringified JSON object.\n * @param {any} parent The container of the array.\n * @param {boolean} [modifyDataInPlace] Whether the object passed should be modified in place. If not, a clone is created instead.\n */\n private static arrayToJson(array: any[], parent: any, modifyDataInPlace?: boolean): any {\n const data = [];\n for (let i = 0; i < array.length; i++) {\n data[i] = DataServiceRequest.toJson(array[i], array, modifyDataInPlace);\n }\n\n // if array is not a top level data on an action\n return data;\n }\n\n /**\n * Add offset fields to Date object for serialization purposes.\n * @param {Date} dateTime The date.\n * @return {Date} The date with __edmType and __offset fields injected.\n */\n private static toDateTimeOffset(dateTime: Date): Date {\n if (!(dateTime as any).__edmType || !(dateTime as any).__offset) {\n const pad: (val: number) => string = (val: number) => (val < 10 ? '0' + val : val.toString());\n const sign: string = dateTime.getTimezoneOffset() > 0 ? '-' : '+';\n const offset: number = Math.abs(dateTime.getTimezoneOffset());\n const hours: string = pad(Math.floor(offset / 60));\n const minutes: string = pad(offset % 60);\n\n (dateTime as any).__edmType = 'Edm.DateTimeOffset';\n (dateTime as any).__offset = sign + hours + ':' + minutes;\n }\n\n return dateTime;\n }\n\n /**\n * Formats entity key(s) in request Uri.\n * @param {any} key The key dictionary.\n * @return {string} The formated string of the key(s).\n */\n private static formatKey(key: any): string {\n let result: string = EMPTY;\n\n if (key) {\n const formattedKey = [];\n let propertyName: string = EMPTY;\n\n for (const property in key) {\n if (key.hasOwnProperty(property)) {\n propertyName = property;\n if (typeof key[propertyName] === 'string') {\n formattedKey.push(propertyName + `='${key[propertyName]}'`);\n } else {\n formattedKey.push(propertyName + '=' + key[propertyName]);\n }\n }\n }\n\n if (formattedKey.length === 1) {\n if (typeof key[propertyName] === 'string') {\n result = `'${key[propertyName]}'`;\n } else {\n result = key[propertyName];\n }\n } else {\n result = formattedKey.join();\n }\n }\n\n return result;\n }\n\n /**\n * Formats function parameters in request Uri.\n * @param {any} parameters The parameter dictionary.\n * @return {string} The formated and encoded string of the parameters.\n */\n private static formatFunctionParameter(parameters: any): string {\n let result: string = EMPTY;\n\n if (parameters) {\n for (const parameter in parameters) {\n if (parameters.hasOwnProperty(parameter)) {\n const paramValue = parameters[parameter];\n\n if (!isEmpty(result)) {\n result += ',';\n }\n\n if (paramValue === undefined) {\n // handles undefined value\n continue;\n } else if (typeof paramValue === 'string') {\n // handles string type value\n result += parameter + `='${encodeURIComponent(paramValue)}'`;\n } else {\n // handles null and other types value\n result += parameter + '=' + encodeURIComponent(paramValue);\n }\n }\n }\n }\n\n return result;\n }\n\n // TODO - use node url api for url parsing\n private static addParameter(requestUri: string, key: string, value: any): string {\n if (value) {\n let parameterSeparator = '?';\n\n if (requestUri.indexOf(parameterSeparator) > 0) {\n parameterSeparator = '&';\n }\n\n return requestUri + parameterSeparator + key + '=' + value;\n } else {\n return requestUri;\n }\n }\n\n private static getActionIdFromInput(query: IDataServiceQueryInternal) {\n return `@msdyn365-commerce/retail-proxy/${query.entitySet}/${query.action}`;\n }\n\n private static getCacheObjectValueFromReturnType(returnType: any): string {\n // return type can be actual class itself like CategoryClass instead of string 'CategoryClass'\n const cacheObjectTypeValue = typeof returnType === 'function' ? returnType.name : returnType;\n return cacheObjectTypeValue.replace('Class', '');\n }\n\n private static buildCacheFromInput(query: IDataServiceQueryInternal, cacheKeyIdentifierFromReturnType: string): string {\n // TODO if return type have distinct primary key (and not a collection), cache key for action will be computed primary key\n\n let cacheKey = {};\n // if query have key like { RecordId: 56873008 }\n query.key && (cacheKey = { ...query.key });\n // parameters are input to function like query.createDataServiceRequestForOperation('GetCategories', true, CategoryClass, 'true', { channelId })\n // => {channelId} is parameters.\n query.data && query.data.parameters && (cacheKey = { ...cacheKey, ...(query.data.parameters as {}) });\n query.resultSettings &&\n (cacheKey = {\n ...cacheKey,\n ...query.resultSettings.Paging,\n ...query.resultSettings.Sorting\n });\n query.filterSettings && (cacheKey['filter'] = query.filterSettings);\n isObjectNotEmptyOrNull(query.tokens) && (cacheKey['token'] = query.tokens);\n // TODO - add OUN in cache key\n const cacheKeyValue =\n convertToString(cacheKey) ||\n (cacheKeyIdentifierFromReturnType ? GET_FROM_RETURNIDENTIFIER : `${query.entitySet}|${query.entityType}|NOKEY`);\n Tracer.Information(`{CacheKey - CacheValue} : ${cacheKey} - ${cacheKeyValue}`);\n return cacheKeyValue;\n }\n\n private static getDataCacheType(query: IDataServiceQueryInternal): CacheType {\n // cache all result in request cacheisObjectNotEmptyOrNull\n //\n // Follow following rule for app cache\n // -------------------------------------------------------------------------------------\n // scenario app cache\n // -------------------------------------------------------------------------------------\n // 1. if returnType is - true\n // a. Category\n // b. Product\n // c. OrgUnit\n // d. ProductCatalog\n // e. Warehouse\n if (query.entitySet === 'Carts' && query.action === 'GetMaxLoyaltyPointsToRedeemForTransactionBalance') {\n return 'none';\n }\n\n return query.options.bypassCache === 'get' || query.options.bypassCache === 'getAndPut' ? 'none' : 'request';\n }\n\n constructor(query: IDataServiceQueryInternal) {\n Tracer.Information('DataServiceRequest.constructor()');\n this._query = toJS(query, { recurseEverything: true });\n this._hasOperationName = false;\n\n switch (query.action) {\n case 'Read':\n case 'ReadAll':\n this._method = GET;\n break;\n\n case 'Create':\n this._method = POST;\n break;\n\n case 'Update':\n this._method = PATCH;\n break;\n\n case 'Delete':\n this._method = DELETE;\n break;\n\n default:\n if (query.isAction) {\n // Sets the HTTP method to be POST for actions\n this._method = POST;\n } else {\n // Sets the HTTP method to be GET for functions\n this._method = GET;\n }\n\n this._hasOperationName = true;\n }\n\n this._actionId = DataServiceRequest.getActionIdFromInput(query);\n\n this._cacheObjectType = DataServiceRequest.getCacheObjectValueFromReturnType(query.options.returnEntity);\n // TODO - handle Key when it is array like SHIFT case\n const entityIdentifier = this._cacheObjectType === 'SimpleProduct' ? 'Product' : this._cacheObjectType;\n this._cacheKeyIdentifierFromReturnType = EntityIdentifier[entityIdentifier] && EntityIdentifier[entityIdentifier].Key;\n\n this._cacheKeyFromInput = DataServiceRequest.buildCacheFromInput(this._query, this._cacheKeyIdentifierFromReturnType);\n }\n\n /**\n * Gets the Request Identifier.\n * Auto-generated unique identifier if executed in batch. Used to fetch the response from batch result array.\n */\n public id(): number {\n return this._id;\n }\n\n public getActionId = () => this._actionId;\n\n public getCacheObjectType = () => this._cacheObjectType;\n\n public getCacheKey = () => this._cacheKeyFromInput;\n\n public dataCacheType = () => DataServiceRequest.getDataCacheType(this._query);\n\n public shouldCacheOutput = () => true;\n\n public overrideCacheType = (bypassCache: BypassCache) => {\n bypassCache && (this._query.options.bypassCache = bypassCache);\n };\n\n public setClientTimeoutInMs = (timeout: number) => {\n this._clientTimeoutInMs = timeout;\n };\n\n /**\n * Executes the request.\n * @param {any} callerContext The caller context.\n * @return {IAsyncResult} The async result.\n */\n public execute(callerContext: ICallerContext): Promise {\n if (\n !callerContext.requestContext ||\n !callerContext.requestContext.apiSettings ||\n !callerContext.requestContext.apiSettings.oun ||\n !callerContext.requestContext.apiSettings.baseUrl\n ) {\n throw new Error(`CallerContext missing required request parameters - [${JSON.stringify(callerContext.requestContext)}]`);\n }\n\n if (!callerContext.requestContext.locale) {\n throw new Error(`CallerContext missing locale - [${JSON.stringify(callerContext.requestContext)}]`);\n }\n\n this._callerContext = callerContext;\n this._requestUri = this.getRequestUri();\n let result: Promise;\n const headers: { [headerName: string]: string } = this.buildQueryHeader();\n\n if (\n !this._query.isReturnTypeACollection ||\n (this._query.resultSettings &&\n this._query.resultSettings.Paging &&\n this._query.resultSettings.Paging.Top &&\n this._query.resultSettings.Paging.Top >= 0)\n ) {\n result = this.loadPage(headers);\n } else {\n result = this.getAllPages(headers, 0);\n }\n\n return result;\n }\n\n // Need to build batch handler ----------- PENDING\n /**\n * Executes the batch requests.\n * @param {DataServiceRequest[]} requests The collection of requests to execute.\n * @param {any} [callerContext] The caller context.\n * @return {IAsyncResult} The async result. Responses at index I correlates to request with identifier I.\n */\n public executeBatch(requests: DataServiceRequest[], callerContext?: ICallerContext): Promise {\n if (\n !callerContext.requestContext ||\n !callerContext.requestContext.apiSettings ||\n !callerContext.requestContext.apiSettings.oun ||\n !callerContext.requestContext.apiSettings.baseUrl\n ) {\n throw new Error(`CallerContext missing required request parameters - [${JSON.stringify(callerContext.requestContext)}]`);\n }\n\n if (!callerContext.requestContext.locale) {\n throw new Error(`CallerContext missing locale - [${JSON.stringify(callerContext.requestContext)}]`);\n }\n\n this._callerContext = callerContext;\n this._requestUri = this.getRequestUri();\n\n return new Promise((resolve, reject) => {\n ODataHttpRequest(\n DataServiceRequest.buildBatchRequest(this.batchRequestUri, requests),\n (data: any) => {\n const responses: any[] = new Array();\n DataServiceRequest.parseBatchResponses(data.__batchResponses, requests, responses, this._callerContext).then(\n (errors: ProxyError[]) => {\n if (errors.length === 0) {\n Tracer.Information(this.batchRequestUri + ' success');\n resolve(responses);\n } else {\n Tracer.Errors(errors, this.batchRequestUri + ' failed.');\n reject(errors);\n }\n }\n );\n },\n (error: any) => {\n Tracer.Error(this.batchRequestUri + ' failed');\n reject(ErrorParser.parseErrorMessage(error, this._callerContext));\n },\n this._query.returnType,\n this._clientTimeoutInMs,\n callerContext\n );\n });\n }\n\n /**\n * Gets the Request Uri.\n */\n private getRequestUri(): string {\n let requestUri: string = this._callerContext.requestContext.apiSettings.baseUrl + 'Commerce';\n if (this._query.entitySet) {\n requestUri = `${requestUri}/${this._query.entitySet}`;\n\n if (this._query.key) {\n requestUri = `${requestUri}(${DataServiceRequest.formatKey(this._query.key)})`;\n } else if (this._query.entitySet === 'Customers' && this._query.key !== null && this._query.key !== undefined) {\n requestUri = `${requestUri}('')`;\n }\n }\n\n // Appends the action (POST) or function (GET) name to the Uri\n if (this._hasOperationName) {\n requestUri += '/' + this._query.action;\n\n // Construct OData function Url with parameters. [e.g. Func(), Func(param1='',param2='')]\n if (!this._query.isAction && this._query.data && this._query.data.parameters) {\n requestUri += '(' + DataServiceRequest.formatFunctionParameter(this._query.data.parameters) + ')';\n }\n }\n\n if (this._query.isReturnTypeACollection) {\n requestUri = DataServiceRequest.addParameter(\n requestUri,\n '$top',\n this._query.resultSettings && this._query.resultSettings.Paging\n ? this._query.resultSettings.Paging.Top\n : ApiTimeoutInMilliSecond\n ); // Config.defaultPageSize);\n requestUri = DataServiceRequest.addParameter(\n requestUri,\n '$skip',\n this._query.resultSettings && this._query.resultSettings.Paging ? this._query.resultSettings.Paging.Skip : 0\n );\n requestUri = DataServiceRequest.addParameter(requestUri, '$inlinecount', this._query.inlineCount ? 'allpages' : null);\n\n if (this._query.resultSettings.count) {\n requestUri = DataServiceRequest.addParameter(requestUri, '$count', 'true');\n }\n\n requestUri = DataServiceRequest.addParameter(\n requestUri,\n '$filter',\n this._query.filterSettings ? this._query.filterSettings : 0\n );\n\n if (this._query.resultSettings && this._query.resultSettings.Sorting && this._query.resultSettings.Sorting.Columns) {\n const orderByColumns = [];\n this._query.resultSettings.Sorting.Columns.forEach((column: SortColumn) => {\n if (!isNullOrWhitespace(column.ColumnName || EMPTY)) {\n orderByColumns.push(format('{0}%20{1}', column.ColumnName, column.IsDescending ? 'desc' : 'asc'));\n }\n });\n if (orderByColumns.length > 0) {\n requestUri = DataServiceRequest.addParameter(requestUri, '$orderby', orderByColumns.join(','));\n }\n }\n }\n\n if (this._query.expands && hasElements(this._query.expands)) {\n requestUri = DataServiceRequest.addParameter(requestUri, '$expand', this._query.expands.join());\n }\n\n if (!isNullOrWhitespace(ApiVersion)) {\n requestUri = DataServiceRequest.addParameter(requestUri, 'api-version', ApiVersion);\n }\n\n return requestUri;\n }\n\n /**\n * Executes paginated requests for all entities.\n * @param {AsyncResult{T}} asyncResult The async result.\n * @param {{ [headerName: string]: string }} headerName the headers for the request.\n * @param {number} skip The offset.\n * @param {Array} The array result.\n */\n private getAllPages(headers: { [headerName: string]: string }, skip: number, results?: T[]): Promise {\n skip = skip || 0;\n const top = 1000; // Config.defaultPageSize;\n this._query.resultSettings = this._query.resultSettings || {};\n this._query.resultSettings.Paging = this._query.resultSettings.Paging || {};\n this._query.resultSettings.Paging.Top = top;\n results = results || [];\n\n return this.loadPage(headers, skip)\n .then((loadPageResults: T) => {\n if (loadPageResults) {\n if (typeof (loadPageResults as any).length === 'number') {\n results = results.concat(loadPageResults);\n\n if ((loadPageResults as any).length < top) {\n // This page contains less items than top\n if ((loadPageResults as any).hasNextPage) {\n // This means the pagesize defined on server side is smaller than the top\n skip += (loadPageResults as any).length;\n return this.getAllPages(headers, skip, results); // Try to fetch the next page\n } else {\n // No more pages need to fetch\n return Promise.resolve((results as any) as T);\n }\n } else {\n // This page contains exact amount of item as the top, should not contain more\n skip += top;\n return this.getAllPages(headers, skip, results); // Try to fetch the next page\n }\n } else {\n // The pageResult is a single item\n results.push((loadPageResults as unknown) as T);\n return Promise.resolve((results as unknown) as T);\n }\n }\n })\n .catch(error => {\n return Promise.reject(error);\n });\n }\n\n /**\n * Builds the header to be sent as part of the request.\n * @returns {{ [headerName: string]: string }} a key value pair collection of header names and header values.\n */\n private buildQueryHeader(): { [headerName: string]: string } {\n const headers: { [headerName: string]: string } = {};\n headers['from-keystone'] = 'true';\n\n // copy default values from default header\n for (const headerName in DEFAULT_HEADER) {\n if (DEFAULT_HEADER.hasOwnProperty(headerName)) {\n headers[headerName] = DEFAULT_HEADER[headerName];\n }\n }\n\n // Copy operating unit number if present for C2 (if an operation is done by a customer or by anonymous user) scenarios.\n if (!isNullOrWhitespace(this._callerContext.requestContext.apiSettings.oun)) {\n headers[OPERATINGUNITNUMBER_HEADERNAME] = this._callerContext.requestContext.apiSettings.oun;\n }\n\n // Add accept-language header to send user preferred locale to server.\n headers[ACCEPT_LANGUAGE] = this._callerContext.requestContext.locale;\n\n // Add custom AppInsights headers\n headers[REQUEST_ID] = this._callerContext.requestContext.operationId;\n\n // OBO request\n const { user, cookies } = this._callerContext.requestContext;\n if (user.hasOwnProperty(OBO_REQUEST)) {\n const isOBORequest = user[OBO_REQUEST];\n if (cookies.hasOwnProperty(GET_ACCOUNT_SELECTION_COOKIE)) {\n const accountSelectionCookie = cookies[GET_ACCOUNT_SELECTION_COOKIE];\n const accountSelectionCustomerId = accountSelectionCookie();\n if (!isNullOrWhitespace(accountSelectionCustomerId) && isOBORequest) {\n const accountSelectionCustomerIdParts: string[] = accountSelectionCustomerId.split(':');\n headers[CUSTOMER_ACCOUNT_NUMBER] = accountSelectionCustomerIdParts[1];\n } else if (isOBORequest) {\n headers[CUSTOMER_ACCOUNT_NUMBER] = '';\n }\n }\n }\n\n // add any tokens as part of the header\n for (const tokenName in this._query.tokens) {\n if (this._query.tokens.hasOwnProperty(tokenName)) {\n const tokenValue: string = this._query.tokens[tokenName];\n\n if (!isNullOrWhitespace(tokenValue)) {\n headers[tokenName] = tokenValue;\n }\n }\n }\n\n // Now check whether authentication token is present or not, if present it will be added into Authorization header.\n if (\n this._callerContext &&\n this._callerContext.requestContext.user &&\n !isNullOrWhitespace(this._callerContext.requestContext.user.token)\n ) {\n headers[AUTHORIZATION_HEADERNAME] = `id_token ${this._callerContext.requestContext.user.token}`;\n }\n\n // Check if an Bearer access token is being provided. If present it will be added into Authorization header\n if (\n this._callerContext &&\n this._callerContext.requestContext &&\n !isNullOrWhitespace(this._callerContext.requestContext.accessToken)\n ) {\n headers[AUTHORIZATION_HEADERNAME] = `Bearer ${this._callerContext.requestContext.accessToken}`;\n }\n\n // Add AppSessionId and UserSessionId to request header\n if (this._callerContext.requestContext[`cookies`]) {\n const cookieData: IPartialCookieContext = this._callerContext.requestContext[`cookies`];\n const appSessionCookie = cookieData.get('ai_session');\n const userSessionCookie = cookieData.get('ai_user');\n\n if (appSessionCookie && appSessionCookie.status === 'FOUND') {\n const appSessionId = appSessionCookie.value?.split('|')[0];\n headers[APPSESSION_ID] = appSessionId;\n }\n if (userSessionCookie && userSessionCookie.status === 'FOUND') {\n const userSessionId = userSessionCookie.value?.split('|')[0];\n headers[USERSESSION_ID] = userSessionId;\n }\n }\n\n return headers;\n }\n\n /**\n * Executes request for one page.\n * @param {AsyncResult} The async result.\n * @param {{ [headerName: string]: string }} headerName the headers for the request.\n */\n private loadPage(headers: { [headerName: string]: string }, skip?: number): Promise {\n if (skip) {\n this._query.resultSettings = this._query.resultSettings || {};\n this._query.resultSettings.Paging = this._query.resultSettings.Paging || {};\n this._query.resultSettings.Paging.Skip = skip;\n }\n\n const requestId = Utils.generateGuid();\n modelManagersRetailServerRequestStarted(requestId, this._requestUri);\n\n return new Promise((resolve, reject) => {\n // This is the pipe for all OData API calls.\n ODataHttpRequest(\n {\n requestUri: this.getRequestUri(),\n method: this._method,\n data: DataServiceRequest.toJson(this._query.data),\n headers\n },\n (data: any) => {\n modelManagersRetailServerRequestFinished(requestId, this._requestUri);\n parseOdataResult(data, this._query.returnType).then(resultSet => {\n if (data) {\n if (data[ODATA_TOTAL_COUNT_PROPERTY]) {\n this._totalCount = data[ODATA_TOTAL_COUNT_PROPERTY];\n }\n const otherOdata = DataServiceRequest.setMetadata(data);\n if (otherOdata) {\n this._otherOdata = otherOdata;\n }\n }\n\n if (this._cacheKeyIdentifierFromReturnType) {\n if (Object.prototype.toString.call(resultSet) === '[object Array]') {\n this._cacheKeyFromReturnType.concat(\n resultSet.map(result => result[this._cacheKeyIdentifierFromReturnType]).filter(Boolean)\n );\n } else if (typeof resultSet === 'object') {\n this._cacheKeyFromReturnType.push(resultSet[this._cacheKeyIdentifierFromReturnType]);\n }\n }\n\n resolve(resultSet);\n });\n },\n (error: any) => {\n modelManagersRetailServerRequestError(requestId, this._requestUri, error.message);\n reject(ErrorParser.parseErrorMessage(error, this._callerContext));\n },\n this._query.returnType,\n this._clientTimeoutInMs,\n this._callerContext\n );\n });\n }\n\n /**\n * Sets all the Odata propeties from retail api on DataServiceRequest\n * @param data retail api call data\n */\n private static setMetadata(data: any): IDictionary | undefined {\n // Sets all the Odata properties on DataServiceRequest\n const odataList = Object.keys(data).filter(key => {\n if (key !== ODATA_TOTAL_COUNT_PROPERTY) {\n return key.indexOf('@odata') === 0;\n }\n });\n\n if (odataList.length > 0) {\n const odata = odataList.reduce((newData, key) => {\n const newKey = key.replace('@odata.', '');\n newData[newKey] = data[key];\n return newData;\n }, {});\n\n return odata;\n }\n return undefined;\n }\n}\n"],"names":["businessPartnerUsersQuery","b2BUserId","key","B2BUserId","DataServiceQuery","createCreateInput","entity","create","createBusinessPartnerUserAsync","context","request","executeAction","createUpdateInput","update","updateAsync","createDeleteAsync","delete","deleteAsync","createReadAsync","read","readAsync","createReadAllAsync","queryResultSettings","resultSettings","readAllAsync","createRequestAccountStatementInput","accountStatementParameters","createDataServiceRequestForOperation","bypassCache","returnEntity","requestAccountStatementAsync","createRequestInvoiceCopyInput","invoiceId","deliveryType","requestInvoiceCopyAsync","createGetOperationRequestsInput","startDateTime","endDateTime","getOperationRequestsAsync","createGetCurrentInput","getCurrentAsync","businessPartnersQuery","businessPartnerId","BusinessPartnerId","createBusinessPartnerAsync","createGetOrderHistoryInput","getOrderHistoryAsync","createCreateProspectInput","businessPartnerProspect","createProspectAsync","createPromoteToSellerInput","promoteToSellerAsync","createGetManagedBusinessPartnersInput","getManagedBusinessPartnersAsync","createGetUsersInput","getUsersAsync","cartsQuery","id","Id","createCartAsync","createSearchInput","cartSearchCriteria","searchAsync","createCheckoutInput","receiptEmail","tokenizedPaymentCard","receiptNumberSequence","cartTenderLines","cartVersion","checkoutLocation","checkoutAsync","createGetMaxLoyaltyPointsToRedeemForTransactionBalanceInput","loyaltyCardId","currencyCode","getMaxLoyaltyPointsToRedeemForTransactionBalanceAsync","createGetPaymentsHistoryInput","getPaymentsHistoryAsync","createGetLineDeliveryOptionsByChannelIdInput","lineShippingAddresses","channelId","filterOption","getLineDeliveryOptionsByChannelIdAsync","createGetLineDeliveryOptionsInput","getLineDeliveryOptionsAsync","createGetDeliveryPreferencesInput","getDeliveryPreferencesAsync","createGetDeliveryOptionsInput","shippingAddress","cartLineIds","ignoreLinesWithDeliveryMode","getDeliveryOptionsAsync","createUpdateLineDeliverySpecificationsInput","lineDeliverySpecifications","updateLineDeliverySpecificationsAsync","createUpdateDeliverySpecificationInput","deliverySpecification","updateDeliverySpecificationAsync","createAddChargeInput","moduleTypeValue","chargeCode","amount","addChargeAsync","createOverrideChargeInput","chargeLineId","reasonCodeLines","overrideChargeAsync","createAddCartLineChargeInput","cartLineId","addCartLineChargeAsync","createOverrideCartLineChargeInput","overrideCartLineChargeAsync","createVoidInput","voidAsync","createAddCartLinesInput","cartLines","addCartLinesAsync","createAddReturnCartLinesInput","returnCartLines","returnTransactionSearchLocation","addReturnCartLinesAsync","createUpdateCartLinesInput","updateCartLinesAsync","createVoidCartLinesInput","voidCartLinesAsync","createRemoveCartLinesInput","removeCartLinesAsync","createAddTenderLineInput","cartTenderLine","addTenderLineAsync","createCalculateTenderDiscountInput","tenderLine","calculateTenderDiscountAsync","createAddPreprocessedTenderLineInput","preprocessedTenderLine","addPreprocessedTenderLineAsync","createValidateTenderLineForAddInput","validateTenderLineForAddAsync","createUpdateTenderLineSignatureInput","tenderLineId","signatureData","updateTenderLineSignatureAsync","createGetDeclinedOrVoidedCardReceiptsInput","receiptRetrievalCriteria","getDeclinedOrVoidedCardReceiptsAsync","createCopyInput","targetCartType","copyAsync","createAddInvoicedSalesLinesToCartInput","transactionId","invoicedSalesLinesIds","addInvoicedSalesLinesToCartAsync","createRecallInvoicedSalesLinesInput","recallInvoicedSalesLineLookups","recallInvoicedSalesLinesAsync","createVoidTenderLineInput","isPreprocessed","forceVoid","voidTenderLineAsync","createIssueGiftCardInput","giftCardId","lineDescription","tenderTypeId","issueGiftCardAsync","createRefillGiftCardInput","refillGiftCardAsync","createCashOutGiftCardInput","cashOutGiftCardAsync","createSuspendInput","suspendAsync","createSuspendWithJournalInput","journalCartId","suspendWithJournalAsync","createResumeInput","resumeAsync","createResumeFromReceiptIdInput","receiptId","resumeFromReceiptIdAsync","createRemoveDiscountCodesInput","discountCodes","removeDiscountCodesAsync","createGetSuspendedInput","getSuspendedAsync","createOverrideCartLinePriceInput","price","overrideCartLinePriceAsync","createGetCardPaymentAcceptPointInput","cardPaymentAcceptSettings","extensionProperties","getCardPaymentAcceptPointAsync","createRetrieveCardPaymentAcceptResultInput","resultAccessCode","cartId","settings","retrieveCardPaymentAcceptResultAsync","createRecallOrderInput","salesId","recallOrderSearchCriteria","recallOrderAsync","createRecallQuoteInput","quoteId","recallQuoteAsync","createRecalculateOrderInput","recalculateOrderAsync","createResetAllChargesInput","resetAllChargesAsync","createGetPromotionsInput","getPromotionsAsync","createGetAvailablePromotionsInput","getAvailablePromotionsAsync","createRecallSalesInvoiceInput","recallSalesInvoiceAsync","createAddOrderInvoiceInput","addOrderInvoiceAsync","createAddInvoicesInput","invoiceIds","addInvoicesAsync","createUpdateCommissionSalesGroupInput","commissionSalesGroup","isUserInitiated","updateCommissionSalesGroupAsync","createAddCouponsInput","couponCodes","isLegacyDiscountCode","addCouponsAsync","createRemoveCouponsInput","removeCouponsAsync","createGetCartLineUserAlertsForAddInput","getCartLineUserAlertsForAddAsync","createGetCartLineUserAlertsInput","getCartLineUserAlertsAsync","createGetChargeCodesInput","getChargeCodesAsync","createGetReceiptTypesInput","getReceiptTypesAsync","createSetInvoiceLinePriceInput","setInvoiceLinePriceAsync","createAddDiscountCodeInput","discountCode","addDiscountCodeAsync","createGetReturnOptionsInput","getReturnOptionsAsync","createGetConfigurationInput","getConfigurationAsync","createValidateForCheckoutInput","validateForCheckoutAsync","createGetTenderSuggestionsInput","getTenderSuggestionsAsync","catalogsQuery","recordId","RecordId","createProductCatalogAsync","createGetCatalogsInput","activeOnly","getCatalogsAsync","categoriesQuery","createCategoryAsync","createGetCategoriesInput","catalogId","getCategoriesAsync","createGetAttributesInput","categoryId","getAttributesAsync","createGetCatalogAttributesInput","categoryIds","getCatalogAttributesAsync","createGetChildrenInput","getChildrenAsync","commerceListsQuery","createCommerceListAsync","createGetByCustomerInput","customerId","getByCustomerAsync","addLinesAsync","commerceListLines","createAddLinesInput","removeLinesAsync","createRemoveLinesInput","customersQuery","accountNumber","AccountNumber","createCustomerAsync","customerSearchCriteria","createSearchByFieldsInput","customerSearchByFieldCriteria","CustomerSearchByFieldCriteria","searchByFieldsAsync","createGetByAccountNumbersInput","accountNumbers","searchLocationValue","getByAccountNumbersAsync","createCreateCustomerTimelineItemInput","customerTimelineItem","createCustomerTimelineItemAsync","createUpdateCustomerTimelineItemInput","updateCustomerTimelineItemAsync","createGetRefinersInput","searchCriteria","refinerSourceTypes","getRefinersAsync","createGetOrderShipmentsHistoryInput","nextPageToken","getOrderShipmentsHistoryAsync","createPostNonTransactionalActivityLoyaltyPointsInput","affiliationId","activityTypeId","postNonTransactionalActivityLoyaltyPointsAsync","createGetPurchaseHistoryInput","getPurchaseHistoryAsync","createGetCustomerSearchFieldsInput","getCustomerSearchFieldsAsync","createGetCustomerTimelineItemTypesInput","getCustomerTimelineItemTypesAsync","createGetCustomerTimelineItemsInput","getCustomerTimelineItemsAsync","createGetCustomerTimelineRefinersInput","getCustomerTimelineRefinersAsync","createGetTitlesInput","getTitlesAsync","orgUnitsQuery","orgUnitNumber","OrgUnitNumber","createOrgUnitAsync","createGetTillLayoutInput","height","width","includeImage","getTillLayoutAsync","storeSearchCriteria","createGetOrgUnitLocationsByAreaInput","searchArea","deliveryModeTypeFilter","getOrgUnitLocationsByAreaAsync","createSearchOrgUnitLocationsInput","orgUnitLocationSearchCriteria","searchOrgUnitLocationsAsync","createGetOrgUnitConfigurationInput","getOrgUnitConfigurationAsync","createGetStoreHoursInput","storeNumber","getStoreHoursAsync","createGetChannelDeliveryOptionsInput","channelIds","getChannelDeliveryOptionsAsync","createGetAvailableInventoryInput","itemId","variantId","barcode","getAvailableInventoryAsync","createGetAvailableInventoryNearbyInput","itemIds","getAvailableInventoryNearbyAsync","createGetProductAvailabilityByDimensionsInput","inventLocationIds","productId","productDimensionCombinations","getProductAvailabilityByDimensionsAsync","createSearchProductAvailabilityInput","orgUnitAvailabilitySearchCriteria","searchProductAvailabilityAsync","createSearchAffiliationsInput","affiliationSearchCriteria","searchAffiliationsAsync","createGetTerminalInfoInput","deviceType","getTerminalInfoAsync","createGetProductAvailabilityInput","getProductAvailabilityAsync","productListsQuery","createProductListAsync","createGetProductListLinesInput","searchText","getProductListLinesAsync","createAddProductListLinesInput","productListLines","addProductListLinesAsync","createUpdateProductListLinesInput","updateProductListLinesAsync","createRemoveProductListLinesInput","removeProductListLinesAsync","createCopyCartToProductListInput","isRewrite","isQuantityAggregate","copyCartToProductListAsync","productsQuery","createProductAsync","productSearchCriteria","createGetDimensionValuesInput","dimension","matchingDimensionValues","kitVariantResolutionContext","getDimensionValuesAsync","createGetDimensionValuesWithEstimatedAvailabilitiesInput","getDimensionValuesWithEstimatedAvailabilitiesAsync","createGetVariantsByDimensionValuesInput","getVariantsByDimensionValuesAsync","createGetVariantsByComponentsInSlotsInput","matchingSlotToComponentRelationship","getVariantsByComponentsInSlotsAsync","createGetByIdsInput","productIds","inventLocationId","getByIdsAsync","createCompareInput","compareAsync","createGetRecommendedProductsInput","getRecommendedProductsAsync","createRefineSearchByCategoryInput","refinementCriteria","refineSearchByCategoryAsync","createRefineSearchByTextInput","refineSearchByTextAsync","createGetProductSearchRefinersInput","getProductSearchRefinersAsync","address","createChangesInput","changesAsync","createBeginReadChangedProductsInput","changedProductSearchCriteria","beginReadChangedProductsAsync","createReadChangedProductsInput","skipProductPriceCalculation","readChangedProductsAsync","createGetDeletedListingsInput","skip","top","getDeletedListingsAsync","createGetAssortedProductIdsInput","includeFutureAssortedProducts","getAssortedProductIdsAsync","createCheckProductsExistenceInput","productExistenceCriteria","checkProductsExistenceAsync","createGetDeletedCatalogsInput","getDeletedCatalogsAsync","createGetDeletedLanguagesInput","getDeletedLanguagesAsync","createGetProductRatingsInput","getProductRatingsAsync","createGetProductAssortmentIntervalsInput","getProductAssortmentIntervalsAsync","createDeleteListingsByCatalogsInput","catalogIds","deleteListingsByCatalogsAsync","createDeleteListingsByLanguagesInput","languages","deleteListingsByLanguagesAsync","createEndReadChangedProductsInput","session","endReadChangedProductsAsync","createUpdateListingPublishingStatusInput","publishingStatuses","updateListingPublishingStatusAsync","createGetCatalogProductAttributesInput","getCatalogProductAttributesAsync","createSearchMediaLocationsInput","mediaLocationSearchCriteria","searchMediaLocationsAsync","createGetPricesInput","inventoryDimensionId","customerAccountNumber","unitOfMeasureSymbol","quantity","getPricesAsync","createGetProductAvailabilitiesInput","getProductAvailabilitiesAsync","createGetActivePricesInput","projectDomain","activeDate","affiliationLoyaltyTiers","includeSimpleDiscountsInContextualPrice","includeVariantPriceRange","includeAttainablePricesAndDiscounts","priceLookupContext","getActivePricesAsync","createGetProductPromotionsInput","productDiscountIds","getProductPromotionsAsync","createGetFilteredSlotComponentsInput","slotId","selectedComponents","getFilteredSlotComponentsAsync","createGetComponentByProductSlotRelationInput","componentRelation","getComponentByProductSlotRelationAsync","createGetSearchSuggestionsInput","hitPrefix","hitSuffix","getSearchSuggestionsAsync","createGetCategoryPathsInput","categoryPathLookups","CategoryPathLookups","getCategoryPathsAsync","createGetUnitsOfMeasureInput","getUnitsOfMeasureAsync","createGetProductUnitsOfMeasureInput","unitOfMeasureSearchCriteria","getProductUnitsOfMeasureAsync","createSearchByCategoryInput","searchByCategoryAsync","createSearchByTextInput","searchByTextAsync","createSearchByCriteriaInput","searchByCriteriaAsync","createGetByLookupClausesInput","productLookupClauses","getByLookupClausesAsync","createGetRefinersByCategoryInput","getRefinersByCategoryAsync","createGetRefinersByTextInput","getRefinersByTextAsync","createGetRefinerValuesByCategoryInput","refinerId","refinerSourceValue","getRefinerValuesByCategoryAsync","createGetRefinerValuesByTextInput","getRefinerValuesByTextAsync","createGetChannelProductAttributesInput","getChannelProductAttributesAsync","createGetByIdInput","getByIdAsync","createGetAttributeValuesInput","getAttributeValuesAsync","createGetMediaLocationsInput","getMediaLocationsAsync","createGetMediaBlobsInput","getMediaBlobsAsync","createGetDefaultComponentsInput","getDefaultComponentsAsync","createGetSlotComponentsInput","getSlotComponentsAsync","createGetAllRelationTypesInput","getAllRelationTypesAsync","createGetRelationTypesInput","getRelationTypesAsync","createGetRelatedProductsInput","relationTypeId","getRelatedProductsAsync","createGetApplicableWarrantiesInput","warrantableProductIds","getApplicableWarrantiesAsync","createGetPriceInput","getPriceAsync","createCalculateProductPriceInput","calculateProductPriceAsync","createGetEstimatedProductWarehouseAvailabilityInput","productWarehouses","quantityUnitType","getEstimatedProductWarehouseAvailabilityAsync","createUpdateProductWarehouseAvailabilityInput","quantities","updateProductWarehouseAvailabilityAsync","createGetEstimatedAvailabilityInput","getEstimatedAvailabilityAsync","recommendationsQuery","getElementsAsync","recommendationCriteria","createGetElementsInput","salesOrdersQuery","createSalesOrderAsync","salesOrderSearchCriteria","createSearchSalesTransactionsByReceiptIdInput","searchSalesTransactionsByReceiptIdAsync","createSearchOrdersInput","orderSearchCriteria","searchOrdersAsync","createGetFulfillmentLinesInput","fulfillmentLineSearchCriteria","getFulfillmentLinesAsync","createGetReceiptsInput","customerOrderType","getReceiptsAsync","createSendReceiptInput","recipientAddresses","sendReceiptAsync","createGetGiftReceiptsInput","salesLineNumbers","SalesLineNumbers","getGiftReceiptsAsync","createGetByReceiptIdInput","orderStoreNumber","orderTerminalId","getByReceiptIdAsync","createGetSalesOrderDetailsByTransactionIdInput","getSalesOrderDetailsByTransactionIdAsync","createGetSalesOrderDetailsBySalesIdInput","getSalesOrderDetailsBySalesIdAsync","createGetOrderByChannelReferenceLookupCriteriaInput","channelReferenceLookupCriteria","getOrderByChannelReferenceLookupCriteriaAsync","createGetSalesOrderDetailsByQuotationIdInput","quotationId","getSalesOrderDetailsByQuotationIdAsync","createGetOrderOriginatorsInput","orderOriginatorSearchCriteria","getOrderOriginatorsAsync","createGetSalesOrdersByLookupCriteriaInput","salesOrdersLookupCriteria","getSalesOrdersByLookupCriteriaAsync","createShipFulfillmentLinesInput","shipFulfillmentLines","ShipFulfillmentLines","shipFulfillmentLinesAsync","createAcceptFulfillmentLinesInput","fulfillmentLineParameter","FulfillmentLineParameter","acceptFulfillmentLinesAsync","createPickFulfillmentLinesInput","pickFulfillmentLinesAsync","createPackFulfillmentLinesInput","packFulfillmentLinesAsync","createMarkFulfillmentLinesAsPackedInput","markFulfillmentLinesAsPackedAsync","createMarkAsPickedInput","markAsPickedAsync","createGetFulfillmentPickingListsInput","pickingListFulfillmentLine","hardwareProfileId","getFulfillmentPickingListsAsync","createGetFulfillmentPackingSlipsInput","packFulfillmentLines","getFulfillmentPackingSlipsAsync","createGetFulfillmentPackingSlipsByIdInput","packingSlipId","PackingSlipId","getFulfillmentPackingSlipsByIdAsync","createRejectFulfillmentLinesInput","rejectFulfillmentLines","RejectFulfillmentLines","rejectFulfillmentLinesAsync","createGetInvoicesBySalesIdInput","getInvoicesBySalesIdAsync","createGetOrderInvoicesInput","getOrderInvoicesAsync","createGetInvoicesInput","invoiceSearchCriteria","getInvoicesAsync","createGetInvoiceDetailsInput","invoiceDetailsSearchCriteria","getInvoiceDetailsAsync","createGetInvoicedSalesLinesBySalesIdsInput","salesIds","getInvoicedSalesLinesBySalesIdsAsync","createSearchInvoicedSalesLinesInput","invoicedSalesLinesSearchCriteria","searchInvoicedSalesLinesAsync","createCreatePickingListInput","createPickingListAsync","createCreatePickingListForItemsInput","pickAndPackSalesLineParameters","createPickingListForItemsAsync","createGetPickingListsInput","getPickingListsAsync","createCreatePackingSlipInput","createPackingSlipAsync","createGetFulfillmentLineUserAlertsInput","fulfillmentOperation","FulfillmentOperation","getFulfillmentLineUserAlertsAsync","createCheckInForOrderPickupInput","channelReferenceId","checkInForOrderPickupAsync","createUpdateConfirmedShipDateInput","confirmedShipDateChange","updateConfirmedShipDateAsync","createRequestCancellationInput","requestCancellationAsync","createConfirmInput","confirmAsync","createGetPackingSlipsDataInput","getPackingSlipsDataAsync","scanResultsQuery","scannedText","ScannedText","storeQuery","createRoundAmountByTenderTypeInput","roundAmountByTenderTypeAsync","createGetAffiliationsByNameInput","affiliationNames","getAffiliationsByNameAsync","createVoidSuspendedTransactionsInput","suspendedCartIds","shiftId","shiftTerminalId","voidSuspendedTransactionsAsync","createGetMerchantPropertiesByServiceAccountIdInput","serviceAccountIds","getMerchantPropertiesByServiceAccountIdAsync","createGetStoreSafesInput","getStoreSafesAsync","createGetShiftReconciliationLinesInput","shiftReconciliationLineRetrievalCriteria","getShiftReconciliationLinesAsync","createReconcileLinesInput","shiftReconciliationLines","description","Description","reconcileLinesAsync","createUndoReconciliationInput","undoReconciliationAsync","createGetReceiptMasksInput","receiptTransactionType","getReceiptMasksAsync","searchSuggestionCriteria","createStartSessionInput","overrideSession","startSessionAsync","createEndSessionInput","endSessionAsync","createActivateDeviceInput","deviceNumber","terminalId","deviceId","forceActivate","activateDeviceAsync","createMassActivateDeviceInput","massActivateDeviceAsync","createDeactivateDeviceInput","deactivateDeviceAsync","createCreateHardwareStationTokenInput","createHardwareStationTokenAsync","createValidateHardwareStationTokenInput","hardwareStationToken","validateHardwareStationTokenAsync","createGetBarcodeByIdInput","barcodeId","getBarcodeByIdAsync","createGetButtonGridByIdInput","buttonGridId","getButtonGridByIdAsync","createGetButtonGridsWithoutImageInput","getButtonGridsWithoutImageAsync","createGetButtonGridsByIdsInput","getButtonGridsByIdsCriteria","getButtonGridsByIdsAsync","createGetImageBlobsByPictureIdsInput","pictureIds","getImageBlobsByPictureIdsAsync","createGetCardTypesInput","getCardTypesAsync","createResolveCardTypesInput","cardNumberPrefix","cardType","paymentToken","resolveCardTypesAsync","createGetSupportedPaymentCardTypesInput","getSupportedPaymentCardTypesAsync","createGetCitiesInput","countryRegionId","stateProvinceId","countyId","getCitiesAsync","createGetCountryRegionsForShippingInput","getCountryRegionsForShippingAsync","createGetCountryRegionsByLanguageIdInput","languageId","getCountryRegionsByLanguageIdAsync","createGetOnlineChannelInput","getOnlineChannelAsync","createGetCountiesInput","getCountiesAsync","createGetCreditMemoByIdInput","creditMemoId","getCreditMemoByIdAsync","createGetDownloadIntervalInput","dataStoreName","getDownloadIntervalAsync","createGetTerminalDataStoreNameInput","getTerminalDataStoreNameAsync","createGetDownloadLinkInput","downloadSessionId","getDownloadLinkAsync","createGetDataDownloadParametersByTerminalInput","terminalDataDownloadRequestInfo","TerminalDataDownloadRequestInfo","getDataDownloadParametersByTerminalAsync","createGetDataUploadParametersByTerminalInput","terminalDataUploadRequestInfo","TerminalDataUploadRequestInfo","getDataUploadParametersByTerminalAsync","createGetDownloadSessionsInput","getDownloadSessionsAsync","createGetInitialDownloadSessionsInput","getInitialDownloadSessionsAsync","createGetUploadJobDefinitionsInput","getUploadJobDefinitionsAsync","createGetUploadIntervalInput","getUploadIntervalAsync","createPostOfflineTransactionsInput","offlineTransactionForMPOS","postOfflineTransactionsAsync","createSetOfflineTerminalStateInput","offlineTerminalState","setOfflineTerminalStateAsync","createGetRetailTrialPlanOfferInput","getRetailTrialPlanOfferAsync","createGetLatestNumberSequenceInput","getLatestNumberSequenceAsync","createGetReceiptNumberResetInfoInput","getReceiptNumberResetInfoAsync","createGetLoyaltyRewardPointActivityTimelineInput","cardNumber","rewardPointId","getLoyaltyRewardPointActivityTimelineAsync","createGetLoyaltyRewardPointActivityTimelineForExpiredPointsInput","getLoyaltyRewardPointActivityTimelineForExpiredPointsAsync","createCalculateTotalCurrencyAmountInput","currenciesAmount","calculateTotalCurrencyAmountAsync","createGetDiscountCodeInput","getDiscountCodeAsync","createGetDiscountCodesByOfferIdInput","offerId","getDiscountCodesByOfferIdAsync","createGetDiscountCodesByKeywordInput","keyword","getDiscountCodesByKeywordAsync","createGetDistrictsInput","cityName","getDistrictsAsync","createGetHardwareStationProfilesInput","getHardwareStationProfilesAsync","createGetHardwareProfileByIdInput","getHardwareProfileByIdAsync","createGetLocalizedStringsInput","textId","getLocalizedStringsAsync","createGetOperationPermissionByIdInput","operationId","getOperationPermissionByIdAsync","createGetReasonCodesByIdInput","reasonCodeGroupId","getReasonCodesByIdAsync","createSearchReportDataSetInput","reportId","parameters","searchReportDataSetAsync","createGetReportDataSetByIdInput","getReportDataSetByIdAsync","createGetSrsReportDataSetInput","getSrsReportDataSetAsync","createGetIncomeExpenseAccountsInput","incomeExpenseAccountType","getIncomeExpenseAccountsAsync","createGetStateProvincesInput","getStateProvincesAsync","createGetZipCodesInput","district","getZipCodesAsync","createGetAddressFromZipCodeInput","zipPostalCode","getAddressFromZipCodeAsync","createDisassembleKitTransactionsInput","kitTransaction","disassembleKitTransactionsAsync","createIssueLoyaltyCardInput","loyaltyCard","issueLoyaltyCardAsync","createGetLoyaltyCardInput","getLoyaltyCardAsync","createGetCustomerLoyaltyCardsInput","getCustomerLoyaltyCardsAsync","createGetLoyaltyCardTransactionsInput","getLoyaltyCardTransactionsAsync","createGetLoyaltyRewardPointsExpiringSoonInput","daysToExpiry","getLoyaltyRewardPointsExpiringSoonAsync","createSearchJournalTransactionsInput","searchJournalTransactionsAsync","createGetGiftCardInput","pin","expirationMonth","expirationYear","getGiftCardAsync","createGetGiftCardInquiryInput","getGiftCardInquiryAsync","createGetNonSalesTransactionsInput","nonSalesTenderTypeValue","getNonSalesTransactionsAsync","createCreateNonSalesTransactionInput","nonSalesTransaction","createNonSalesTransactionAsync","createCreateDropAndDeclareTransactionInput","dropAndDeclareTransaction","createDropAndDeclareTransactionAsync","createGetTaxOverridesInput","overrideBy","getTaxOverridesAsync","createGetCustomerBalanceInput","invoiceAccountNumber","getCustomerBalanceAsync","createInitiateLinkToExistingCustomerInput","email","activationToken","emailTemplateId","emailProperties","ActivationToken","initiateLinkToExistingCustomerAsync","createFinalizeLinkToExistingCustomerInput","finalizeLinkToExistingCustomerAsync","createUnlinkFromExistingCustomerInput","unlinkFromExistingCustomerAsync","createGetOfflineSyncStatusInput","getOfflineSyncStatusAsync","createGetOfflinePendingTransactionCountInput","getOfflinePendingTransactionCountAsync","createGetOfflinePendingTransactionCountByShiftInput","getOfflinePendingTransactionCountByShiftAsync","createGetOfflineOpenShiftsInput","filterByCurrentUser","includeAllShiftsForStore","getOfflineOpenShiftsAsync","createDeleteOfflineShiftsInput","deleteOfflineShiftsAsync","createUpdateDownloadSessionInput","downloadSession","updateDownloadSessionAsync","createUpdateApplicationVersionInput","appVersion","updateApplicationVersionAsync","createGetStorageAccessTokenForUploadInput","getStorageAccessTokenForUploadAsync","createGetBusinessProcessModelLibrariesInput","getBusinessProcessModelLibrariesAsync","createGetBusinessProcessModelLibraryInput","businessProcessModelFrameworkLineId","hierarchyDepth","getBusinessProcessModelLibraryAsync","createSearchTaskGuidesByTitleInput","taskGuideSearchText","queryTypeValue","searchTaskGuidesByTitleAsync","createGenerateBusinessProcessModelPackageInput","taskRecording","generateBusinessProcessModelPackageAsync","createDownloadRecordingInput","businessProcessModelLineId","downloadRecordingAsync","createLoadRecordingFromFileInput","recordingUrl","loadRecordingFromFileAsync","createGenerateRecordingFileInput","generateRecordingFileAsync","createGenerateTrainingDocumentInput","generateTrainingDocumentAsync","createGenerateRecordingBundleInput","generateRecordingBundleAsync","createUploadRecordingInput","uploadRecordingAsync","createGetAttributeDefinitionsInput","attributeDefinitionCriteria","getAttributeDefinitionsAsync","createGetAttributeGroupDefinitionsInput","attributeGroupDefinitionCriteria","getAttributeGroupDefinitionsAsync","createSaveFiscalTransactionInput","fiscalTransaction","saveFiscalTransactionAsync","createValidatePrintReceiptCopyAllowedInput","salesOrderToPrint","validatePrintReceiptCopyAllowedAsync","createRegisterAuditEventInput","auditEvent","registerAuditEventAsync","createRegisterAndGetAuditEventInput","registerAndGetAuditEventAsync","createGetInventoryAvailableToPromiseInput","getInventoryAvailableToPromiseAsync","createGetSalesOrdersWithNoFiscalTransactionsInput","getSalesOrdersWithNoFiscalTransactionsAsync","createGetNotificationsInput","subscribedOperations","getNotificationsAsync","createAcknowledgeNotificationsInput","lastPullDateTime","acknowledgeNotificationsAsync","createSearchPurchaseHistoryInput","searchPurchaseHistoryAsync","createGetFiscalIntegrationFiscalDocumentInput","functionalityProfileGroupId","fiscalIntegrationDocumentRetrievalCriteria","connectorType","getFiscalIntegrationFiscalDocumentAsync","createGetFiscalIntegrationNonFiscalDocumentInput","getFiscalIntegrationNonFiscalDocumentAsync","createGetFiscalIntegrationFiscalServiceSetupDocumentInput","getFiscalIntegrationFiscalServiceSetupDocumentAsync","createGetFiscalIntegrationFiscalServiceReadDataDocumentInput","getFiscalIntegrationFiscalServiceReadDataDocumentAsync","createProcessFiscalIntegrationFiscalServiceReadDataResultInput","documentToProcess","processFiscalIntegrationFiscalServiceReadDataResultAsync","createSaveFiscalIntegrationRegistrationResultInput","registrationResult","saveFiscalIntegrationRegistrationResultAsync","createGetFiscalIntegrationRegistrationProcessInput","getFiscalIntegrationRegistrationProcessAsync","createGetChannelSupportedFiscalIntegrationEventsByGroupInput","getChannelSupportedFiscalIntegrationEventsByGroupAsync","createGetFiscalIntegrationTechnicalProfilesInput","getFiscalIntegrationTechnicalProfilesAsync","createGetFiscalIntegrationTechnicalProfilesByFunctionalityGroupIdsInput","getFiscalIntegrationTechnicalProfilesByFunctionalityGroupIdsAsync","createGetFiscalRegistrationProcessSummaryInput","getFiscalRegistrationProcessSummaryAsync","createBackupFiscalRegistrationProcessContextInput","fiscalProcessCompleted","fiscalIntegrationSerializedContext","backupFiscalRegistrationProcessContextAsync","createGetActiveFiscalRegistrationProcessContextBackupInput","getActiveFiscalRegistrationProcessContextBackupAsync","createGetFiscalIntegrationTechnicalProfilesBySearchCriteriaInput","fiscalIntegrationTechnicalProfileSearchCriteria","getFiscalIntegrationTechnicalProfilesBySearchCriteriaAsync","createGetFiscalIntegrationServiceStatusInput","fiscalIntegrationServiceInfo","getFiscalIntegrationServiceStatusAsync","createSubmitFiscalIntegrationDocumentInput","documentToSubmit","submitFiscalIntegrationDocumentAsync","createGetFeatureStatesInput","featureNames","getFeatureStatesAsync","createGetLastFiscalIntegrationSequentialSignaturesInput","sequentialKeys","getLastFiscalIntegrationSequentialSignaturesAsync","createCreateFiscalTransactionInput","createFiscalTransactionAsync","createGetEstimatedPickupTimeslotAvailabilitiesInput","getEstimatedPickupTimeslotAvailabilitiesAsync","createCalculateSalesDocumentInput","salesDocument","calculateSalesDocumentAsync","createSearchVendorsInput","searchVendorsAsync","createValidateVendorApprovedForItemInput","vendorAccountNumber","validateVendorApprovedForItemAsync","createLocalizationIndiaGetBusinessVerticalsInput","localizationIndiaGetBusinessVerticalsAsync","createGetButtonGridsInput","getButtonGridsAsync","createGetButtonGridsByScreenSizeInput","getButtonGridsByScreenSizeAsync","createGetOperationalInsightsConfigurationInput","getOperationalInsightsConfigurationAsync","createGetCashDeclarationsInput","getCashDeclarationsAsync","createGetCountryRegionsInput","getCountryRegionsAsync","createGetCustomerGroupsInput","getCustomerGroupsAsync","createGetChannelDeliveryOptionConfigurationInput","getChannelDeliveryOptionConfigurationAsync","createGetChannelsByTypeInput","channelType","getChannelsByTypeAsync","createGetChannelsInput","getChannelsAsync","createGetOnlineChannelAzureB2CConfigurationInput","getOnlineChannelAzureB2CConfigurationAsync","createSearchChannelsInput","searchChannelsAsync","createGetEnvironmentConfigurationInput","getEnvironmentConfigurationAsync","createGetOrderManagementConfigurationInput","getOrderManagementConfigurationAsync","createGetSearchConfigurationInput","getSearchConfigurationAsync","createGetExtensionPackageDefinitionsInput","getExtensionPackageDefinitionsAsync","createGetExtensionProfileInput","getExtensionProfileAsync","createGetDeviceConfigurationInput","getDeviceConfigurationAsync","createGetVisualProfileInput","getVisualProfileAsync","createGetLanguagesInput","getLanguagesAsync","createGetAffiliationsInput","getAffiliationsAsync","createGetOperationPermissionsInput","getOperationPermissionsAsync","createGetReasonCodesInput","getReasonCodesAsync","createGetReturnOrderReasonCodesInput","getReturnOrderReasonCodesAsync","createGetSalesTaxGroupsInput","getSalesTaxGroupsAsync","createGetTenderTypesInput","getTenderTypesAsync","createGetDiscountCodesInput","getDiscountCodesAsync","createGetCurrenciesInput","getCurrenciesAsync","createGetCurrenciesAmountInput","getCurrenciesAmountAsync","createGetCommissionSalesGroupsInput","getCommissionSalesGroupsAsync","createSearchCommissionSalesGroupsInput","searchCommissionSalesGroupsAsync","createGetPaymentMerchantInformationInput","getPaymentMerchantInformationAsync","createGetPaymentPropertiesIfModifiedInput","merchantInformationHash","getPaymentPropertiesIfModifiedAsync","createGetOnlineChannelPublishStatusInput","getOnlineChannelPublishStatusAsync","createSetOnlineChannelPublishStatusInput","publishingStatus","statusMessage","setOnlineChannelPublishStatusAsync","createGetInventoryConfigurationInput","getInventoryConfigurationAsync","createGetMerchandisingConfigurationInput","getMerchandisingConfigurationAsync","createGetPurchaseConfigurationInput","getPurchaseConfigurationAsync","createSearchJournalNamesInput","searchJournalNamesAsync","createGetAvailableDevicesInput","getAvailableDevicesAsync","createGetUserDefinedSecretStringInput","secretName","getUserDefinedSecretStringAsync","createGetUserDefinedSecretCertificateInput","getUserDefinedSecretCertificateAsync","createGetImageBlobInput","imageId","getImageBlobAsync","createGetExtensibleEnumerationsInput","getExtensibleEnumerationsAsync","createGetAddressPurposesInput","getAddressPurposesAsync","createGetReturnPolicyInput","getReturnPolicyAsync","createGetEmailReceiptSettingsInput","getEmailReceiptSettingsAsync","createCheckFiscalIntegrationComplianceInput","checkFiscalIntegrationComplianceAsync","constructor","entitySet","entityType","returnType","this","_query","tokens","options","Paging","Sorting","value","count","filter","filterSettings","Top","Skip","expand","propertyName","expands","push","inlineCount","orderBy","Columns","ColumnName","object","action","data","_createODataParameters","_createRequest","undefined","isReturnTypeACollection","setGetAllRecords","isGetAllRecords","operationName","isAction","_objectSpread","DataServiceRequest","GET","POST","ODATA_TOTAL_COUNT_PROPERTY","serverWorkerNotUpdated","DEFAULT_HEADER","Prefer","OBO_REQUEST","GET_ACCOUNT_SELECTION_COOKIE","fetchCommerceModels","async","isServiceWorkerSupportedOnClient","navigator","parseOdataResult","resultType","serviceWorker","Models","skipSerializationFromSW","shouldSkipSerializationFromSW","initialData","requestContext","features","enable_service_worker","disableRetailProxySW","query","console","log","window","___initialData___","ready","initServerWorker","getSerializedResponseFromServiceWorker","resultSet","Object","prototype","toString","call","i","length","hasNextPage","timerId","dynamicImportPromise","Promise","resolve","reject","setTimeout","Array","isArray","serializePromise","messageChannel","MessageChannel","port1","onmessage","e","serializedData","clearTimeout","active","postMessage","type","payload","port2","race","_cacheKeyFromReturnType","getActionId","_actionId","getCacheObjectType","_cacheObjectType","getCacheKey","_cacheKeyFromInput","dataCacheType","getDataCacheType","shouldCacheOutput","overrideCacheType","setClientTimeoutInMs","timeout","_clientTimeoutInMs","Tracer","Information","toJS","recurseEverything","_hasOperationName","_method","getActionIdFromInput","getCacheObjectValueFromReturnType","entityIdentifier","_cacheKeyIdentifierFromReturnType","EntityIdentifier","Key","buildCacheFromInput","_callerContext","apiSettings","baseUrl","locale","_totalCount","queryParams","_otherOdata","batchRequestUri","requests","requestId","odataBatchRequest","requestUri","method","__batchRequests","batchRequests","changeRequests","forEach","_id","odataRequest","_requestUri","toJson","headers","__changeRequests","parent","modifyDataInPlace","clone","prop","hasOwnProperty","property","arrayToJson","Date","toDateTimeOffset","array","dateTime","__edmType","__offset","pad","val","sign","getTimezoneOffset","offset","Math","abs","hours","floor","minutes","result","EMPTY","formattedKey","join","parameter","paramValue","isEmpty","encodeURIComponent","parameterSeparator","indexOf","name","replace","cacheKeyIdentifierFromReturnType","cacheKey","isObjectNotEmptyOrNull","cacheKeyValue","convertToString","execute","callerContext","oun","Error","JSON","stringify","getRequestUri","buildQueryHeader","loadPage","getAllPages","executeBatch","ODataHttpRequest","buildBatchRequest","responses","parseBatchResponses","__batchResponses","then","errors","Errors","error","ErrorParser","parseErrorMessage","formatKey","formatFunctionParameter","addParameter","orderByColumns","column","isNullOrWhitespace","format","IsDescending","hasElements","ApiVersion","results","loadPageResults","concat","catch","headerName","user","cookies","isOBORequest","accountSelectionCustomerId","accountSelectionCookie","accountSelectionCustomerIdParts","split","tokenName","tokenValue","token","accessToken","cookieData","appSessionCookie","get","userSessionCookie","status","_appSessionCookie$val","appSessionId","_userSessionCookie$va","userSessionId","Utils","generateGuid","modelManagersRetailServerRequestStarted","modelManagersRetailServerRequestFinished","otherOdata","setMetadata","map","Boolean","modelManagersRetailServerRequestError","message","odataList","keys","reduce","newData","batchResponses","response","__changeResponses","parseInt"],"sourceRoot":""}