<?php
/**
 * Webkul Software.
 * 
 * PHP version 7.0+
 *
 * @category  Webkul
 * @package   Webkul_MobikulCore
 * @author    Webkul <support@webkul.com>
 * @copyright 2010-2019 Webkul Software Private Limited (https://webkul.com)
 * @license   https://store.webkul.com/license.html ASL Licence
 * @link      https://store.webkul.com/license.html
 */

namespace Webkul\MobikulCore\Api;

use Magento\Framework\Api\SearchCriteriaInterface;
use Webkul\MobikulCore\Api\Data\NotificationInterface;

/**
 * Interface NotificationRepositoryInterface
 */
interface NotificationRepositoryInterface
{
    /**
     * Function save
     *
     * @param NotificationInterface $notification notification
    */
    public function save(NotificationInterface $notification);

    /**
     * Function getById
     *
     * @param integer $notificationId notificationId
    */
    public function getById($notificationId);

    /**
     * Function getList
     *
     * @param SearchCriteriaInterface $searchCriteria searchCriteria
    */
    public function getList(SearchCriteriaInterface $searchCriteria);

    /**
     * Function delete
     *
     * @param NotificationInterface $notification notification
    */
    public function delete(NotificationInterface $notification);

    /**
     * Function deleteById
     *
     * @param integer $notificationId notificationId
    */
    public function deleteById($notificationId);
}
