PaymentDetailsInterface.php 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Checkout\Api\Data;
  7. /**
  8. * Interface PaymentDetailsInterface
  9. * @api
  10. * @since 100.0.2
  11. */
  12. interface PaymentDetailsInterface extends \Magento\Framework\Api\ExtensibleDataInterface
  13. {
  14. /**#@+
  15. * Constants defined for keys of array, makes typos less likely
  16. */
  17. const PAYMENT_METHODS = 'payment_methods';
  18. const TOTALS = 'totals';
  19. /**#@-*/
  20. /**
  21. * @return \Magento\Quote\Api\Data\PaymentMethodInterface[]
  22. */
  23. public function getPaymentMethods();
  24. /**
  25. * @param \Magento\Quote\Api\Data\PaymentMethodInterface[] $paymentMethods
  26. * @return $this
  27. */
  28. public function setPaymentMethods($paymentMethods);
  29. /**
  30. * @return \Magento\Quote\Api\Data\TotalsInterface
  31. */
  32. public function getTotals();
  33. /**
  34. * @param \Magento\Quote\Api\Data\TotalsInterface $totals
  35. * @return $this
  36. */
  37. public function setTotals($totals);
  38. /**
  39. * Retrieve existing extension attributes object or create a new one.
  40. *
  41. * @return \Magento\Checkout\Api\Data\PaymentDetailsExtensionInterface|null
  42. */
  43. public function getExtensionAttributes();
  44. /**
  45. * Set an extension attributes object.
  46. *
  47. * @param \Magento\Checkout\Api\Data\PaymentDetailsExtensionInterface $extensionAttributes
  48. * @return $this
  49. */
  50. public function setExtensionAttributes(
  51. \Magento\Checkout\Api\Data\PaymentDetailsExtensionInterface $extensionAttributes
  52. );
  53. }