// Provide a default path to dwr.engine
if (typeof dwr == 'undefined') dwr = {};
if (typeof dwr.engine == 'undefined') dwr.engine = {};
if (typeof dwr.engine._mappedClasses == 'undefined') dwr.engine._mappedClasses = {};

if (typeof dojo != 'undefined') dojo.provide('dwr.interface.BasketService');

if (typeof BasketService == 'undefined') BasketService = {};

BasketService._path = '/store/dwr';

/**
 * @param {class instore.content.name.NodePath} p0 a param
 * @param {function|Object} callback callback function or options object
 */
BasketService.getPackageInfo = function(p0, callback) {
  return dwr.engine._execute(BasketService._path, 'BasketService', 'getPackageInfo', arguments);
};

/**
 * @param {function|Object} callback callback function or options object
 */
BasketService.getItems = function(callback) {
  return dwr.engine._execute(BasketService._path, 'BasketService', 'getItems', arguments);
};

/**
 * @param {function|Object} callback callback function or options object
 */
BasketService.getAllCountries = function(callback) {
  return dwr.engine._execute(BasketService._path, 'BasketService', 'getAllCountries', arguments);
};

/**
 * @param {class java.lang.String} p0 a param
 * @param {function|Object} callback callback function or options object
 */
BasketService.getPostCodes = function(p0, callback) {
  return dwr.engine._execute(BasketService._path, 'BasketService', 'getPostCodes', arguments);
};

/**
 * @param {class java.lang.String} p0 a param
 * @param {function|Object} callback callback function or options object
 */
BasketService.getRegions = function(p0, callback) {
  return dwr.engine._execute(BasketService._path, 'BasketService', 'getRegions', arguments);
};

/**
 * @param {class instore.content.name.NodePath} p0 a param
 * @param {class gr.myebooks.order.InvoicingInfo} p1 a param
 * @param {boolean} p2 a param
 * @param {class gr.myebooks.order.GiftInfo} p3 a param
 * @param {class gr.myebooks.order.DeliveryAddressInfo} p4 a param
 * @param {function|Object} callback callback function or options object
 */
BasketService.placeOrder = function(p0, p1, p2, p3, p4, callback) {
  return dwr.engine._execute(BasketService._path, 'BasketService', 'placeOrder', arguments);
};

/**
 * @param {class instore.content.name.NodePath} p0 a param
 * @param {function|Object} callback callback function or options object
 */
BasketService.setDiscount = function(p0, callback) {
  return dwr.engine._execute(BasketService._path, 'BasketService', 'setDiscount', arguments);
};

/**
 * @param {function|Object} callback callback function or options object
 */
BasketService.getTotalPrice = function(callback) {
  return dwr.engine._execute(BasketService._path, 'BasketService', 'getTotalPrice', arguments);
};

/**
 * @param {class instore.content.name.NodePath} p0 a param
 * @param {function|Object} callback callback function or options object
 */
BasketService.removeFromBasket = function(p0, callback) {
  return dwr.engine._execute(BasketService._path, 'BasketService', 'removeFromBasket', arguments);
};

/**
 * @param {function|Object} callback callback function or options object
 */
BasketService.getBasket = function(callback) {
  return dwr.engine._execute(BasketService._path, 'BasketService', 'getBasket', arguments);
};

/**
 * @param {function|Object} callback callback function or options object
 */
BasketService.getBasketType = function(callback) {
  return dwr.engine._execute(BasketService._path, 'BasketService', 'getBasketType', arguments);
};

/**
 * @param {class instore.content.name.NodePath} p0 a param
 * @param {function|Object} callback callback function or options object
 */
BasketService.getPackageItems = function(p0, callback) {
  return dwr.engine._execute(BasketService._path, 'BasketService', 'getPackageItems', arguments);
};

/**
 * @param {class instore.content.name.NodePath} p0 a param
 * @param {function|Object} callback callback function or options object
 */
BasketService.getBasketItem = function(p0, callback) {
  return dwr.engine._execute(BasketService._path, 'BasketService', 'getBasketItem', arguments);
};

/**
 * @param {class instore.content.name.NodePath} p0 a param
 * @param {boolean} p1 a param
 * @param {class java.lang.String} p2 a param
 * @param {class gr.myebooks.basket.BasketItem} p3 a param
 * @param {class gr.myebooks.types.FreeBookOffer} p4 a param
 * @param {function|Object} callback callback function or options object
 */
BasketService.addToBasket = function(p0, p1, p2, p3, p4, callback) {
  return dwr.engine._execute(BasketService._path, 'BasketService', 'addToBasket', arguments);
};

/**
 * @param {class gr.myebooks.OfferPaths} p0 a param
 * @param {class instore.content.name.NodePath} p1 a param
 * @param {function|Object} callback callback function or options object
 */
BasketService.addOfferToBasket = function(p0, p1, callback) {
  return dwr.engine._execute(BasketService._path, 'BasketService', 'addOfferToBasket', arguments);
};

/**
 * @param {function|Object} callback callback function or options object
 */
BasketService.clearExtraCharges = function(callback) {
  return dwr.engine._execute(BasketService._path, 'BasketService', 'clearExtraCharges', arguments);
};

/**
 * @param {class java.lang.String} p0 a param
 * @param {class java.lang.String} p1 a param
 * @param {class java.lang.String} p2 a param
 * @param {function|Object} callback callback function or options object
 */
BasketService.setDeliveryCharges = function(p0, p1, p2, callback) {
  return dwr.engine._execute(BasketService._path, 'BasketService', 'setDeliveryCharges', arguments);
};

/**
 * @param {function|Object} callback callback function or options object
 */
BasketService.resetShippingCharges = function(callback) {
  return dwr.engine._execute(BasketService._path, 'BasketService', 'resetShippingCharges', arguments);
};



