woocommerce/includes/interfaces/class-wc-customer-download-...

75 lines
1.6 KiB
PHP
Raw Normal View History

2016-11-18 14:07:21 +00:00
<?php
/**
* Customer Download Data Store Interface
*
* @version 3.0.0
2020-08-05 16:36:24 +00:00
* @package WooCommerce\Interface
*/
2016-11-18 14:07:21 +00:00
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
/**
* WC Customer Download Data Store Interface.
*
2017-03-15 16:36:53 +00:00
* @version 3.0.0
2016-11-18 14:07:21 +00:00
*/
interface WC_Customer_Download_Data_Store_Interface {
2016-11-18 19:29:37 +00:00
/**
* Method to delete a download permission from the database by ID.
*
* @param int $id Download Permission ID.
2016-11-18 19:29:37 +00:00
*/
public function delete_by_id( $id );
/**
* Method to delete a download permission from the database by order ID.
*
* @param int $id Order ID.
2016-11-18 19:29:37 +00:00
*/
public function delete_by_order_id( $id );
/**
* Method to delete a download permission from the database by download ID.
*
* @param int $id Download ID.
2016-11-18 19:29:37 +00:00
*/
public function delete_by_download_id( $id );
/**
* Get array of download ids by specified args.
*
* @param array $args Arguments.
2016-11-18 19:29:37 +00:00
* @return array of WC_Customer_Download
*/
public function get_downloads( $args = array() );
/**
* Update download ids if the hash changes.
*
* @param int $product_id Product ID.
* @param string $old_id Old ID.
* @param string $new_id New ID.
2016-11-18 19:29:37 +00:00
*/
public function update_download_id( $product_id, $old_id, $new_id );
/**
* Get a customers downloads.
*
* @param int $customer_id Customer ID.
2016-11-18 19:29:37 +00:00
* @return array
*/
public function get_downloads_for_customer( $customer_id );
/**
* Update user prop for downloads based on order id.
*
* @param int $order_id Order ID.
* @param int $customer_id Customer ID.
* @param string $email Email Address.
2016-11-18 19:29:37 +00:00
*/
public function update_user_by_order_id( $order_id, $customer_id, $email );
2016-11-18 14:07:21 +00:00
}