File "ShippingContents.php"

Full Path: /home/jlklyejr/public_html/wp-content/test/wp-content/plugins/flexible-shipping/src/WPDesk/FS/TableRate/Rule/ShippingContents/ShippingContents.php
File size: 1.29 KB
MIME-type: text/x-php
Charset: utf-8

<?php
/**
 * Interface ShippingContents
 *
 * @package WPDesk\FS\TableRate
 */

namespace WPDesk\FS\TableRate\Rule\ShippingContents;

use WPDesk\FS\TableRate\Rule\ContentsFilter;

/**
 * Can provide shipping contents.
 */
interface ShippingContents {

	/**
	 * @param int $weight_rounding_precision .
	 */
	public function set_weight_rounding_precision( $weight_rounding_precision );

	/**
	 * @return array
	 */
	public function get_contents();

	/**
	 * @return float
	 */
	public function get_contents_cost();

	/**
	 * @param bool $round .
	 *
	 * @return float
	 */
	public function get_contents_weight( $round = true );

	/**
	 * @return int
	 */
	public function get_contents_items_count();

	/**
	 * @param ContentsFilter $contents_filter .
	 */
	public function filter_contents( ContentsFilter $contents_filter );

	/**
	 * Returns non filtered contents.
	 *
	 * @return array
	 */
	public function get_non_filtered_contents();

	/**
	 * Reset contents to non filtered.
	 *
	 * @return array
	 */
	public function reset_contents();

	/**
	 * @return DestinationAddress
	 */
	public function get_destination_address();

	/**
	 * @return string
	 */
	public function get_currency();

	public function set_meta( ShippingContentsMeta $meta );

	public function get_meta( string $key ): ?ShippingContentsMeta;
}