1
0
mirror of synced 2024-11-23 13:56:08 +03:00
bitrix-module/intaro.retailcrm/lib/component/json/strategy/deserialize/deserializestrategyinterface.php

41 lines
1.1 KiB
PHP

<?php
/**
* @category Integration
* @package Intaro\RetailCrm\Component\Json\Strategy\Deserialize
* @author RetailCRM <integration@retailcrm.ru>
* @license MIT
* @link http://retailcrm.ru
* @see http://retailcrm.ru/docs
*/
namespace Intaro\RetailCrm\Component\Json\Strategy\Deserialize;
/**
* Interface DeserializeStrategyInterface
*
* @package Intaro\RetailCrm\Component\Json\Strategy\Serialize
*/
interface DeserializeStrategyInterface
{
/**
* Deserialize value
*
* @param string $type
* @param mixed $value
* @param \Intaro\RetailCrm\Component\Json\PropertyAnnotations $annotations
*
* @return mixed
*/
public function deserialize(string $type, $value, $annotations);
/**
* Sets inner type for types like array<key, value> and \DateTime<format>
*
* @param string $type
*
* @return \Intaro\RetailCrm\Component\Json\Strategy\Deserialize\DeserializeStrategyInterface
*/
public function setInnerType(string $type): DeserializeStrategyInterface;
}