<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Quote\Api\Data; /** * Interface ShippingMethodInterface * @api * @since 100.0.2 */ interface ShippingMethodInterface extends \Magento\Framework\Api\ExtensibleDataInterface { /** * Shipping carrier code. */ const KEY_CARRIER_CODE = 'carrier_code'; /** * Shipping method code. */ const KEY_METHOD_CODE = 'method_code'; /** * Shipping carrier title. */ const KEY_CARRIER_TITLE = 'carrier_title'; /** * Shipping method title. */ const KEY_METHOD_TITLE = 'method_title'; /** * Shipping amount in store currency. */ const KEY_SHIPPING_AMOUNT = 'amount'; /** * Shipping amount in base currency. */ const KEY_BASE_SHIPPING_AMOUNT = 'base_amount'; /** * Available. */ const KEY_AVAILABLE = 'available'; /** * Shipping error message. */ const KEY_ERROR_MESSAGE = 'error_message'; /** * Shipping error message. */ const KEY_PRICE_EXCL_TAX = 'price_excl_tax'; /** * Shipping error message. */ const KEY_PRICE_INCL_TAX = 'price_incl_tax'; /** * Returns the shipping carrier code. * * @return string Shipping carrier code. */ public function getCarrierCode(); /** * Sets the shipping carrier code. * * @param string $carrierCode * @return $this */ public function setCarrierCode($carrierCode); /** * Returns the shipping method code. * * @return string Shipping method code. */ public function getMethodCode(); /** * Sets the shipping method code. * * @param string $methodCode * @return $this */ public function setMethodCode($methodCode); /** * Returns the shipping carrier title. * * @return string|null Shipping carrier title. Otherwise, null. */ public function getCarrierTitle(); /** * Sets the shipping carrier title. * * @param string $carrierTitle * @return $this */ public function setCarrierTitle($carrierTitle); /** * Returns the shipping method title. * * @return string|null Shipping method title. Otherwise, null. */ public function getMethodTitle(); /** * Sets the shipping method title. * * @param string $methodTitle * @return $this */ public function setMethodTitle($methodTitle); /** * Returns the shipping amount in store currency. * * @return float Shipping amount in store currency. */ public function getAmount(); /** * Sets the shipping amount in store currency. * * @param float $amount * @return $this */ public function setAmount($amount); /** * Returns the shipping amount in base currency. * * @return float Shipping amount in base currency. */ public function getBaseAmount(); /** * Sets the shipping amount in base currency. * * @param float $baseAmount * @return $this */ public function setBaseAmount($baseAmount); /** * Returns the value of the availability flag for the current shipping method. * * @return bool * @SuppressWarnings(PHPMD.BooleanGetMethodName) */ public function getAvailable(); /** * Sets the value of the availability flag for the current shipping method. * * @param bool $available * @return $this */ public function setAvailable($available); /** * Retrieve existing extension attributes object or create a new one. * * @return \Magento\Quote\Api\Data\ShippingMethodExtensionInterface|null */ public function getExtensionAttributes(); /** * Set an extension attributes object. * * @param \Magento\Quote\Api\Data\ShippingMethodExtensionInterface $extensionAttributes * @return $this */ public function setExtensionAttributes( \Magento\Quote\Api\Data\ShippingMethodExtensionInterface $extensionAttributes ); /** * Returns an error message. * * @return string Shipping Error message. */ public function getErrorMessage(); /** * Set an error message. * * @param string $errorMessage * @return $this */ public function setErrorMessage($errorMessage); /** * Returns shipping price excl tax. * * @return float */ public function getPriceExclTax(); /** * Set a shipping price excl tax. * * @param float $priceExclTax * @return $this */ public function setPriceExclTax($priceExclTax); /** * Returns shipping price incl tax. * * @return float */ public function getPriceInclTax(); /** * Set a shipping price incl tax. * * @param float $priceInclTax * @return $this */ public function setPriceInclTax($priceInclTax); }