for empty objects, it returns array instead of empty object ( { } ) :
Model:
Class Model {
/**
* @var int
*/
public $status;
/**
* @SerializedName("data")
* @PsonType("App\Api\Models\Responses\ResponseModel")
* @var ResponseModel
*/
public $data;
}
EmptyModel:
Class EmptyModel implements ResponseModel {
}
Serializing Model with Pson:
$model = new Model();
$model->status = 200;
$model->data = new EmptyModel();
echo $pson->toJson($data);
{ "status": 200, "data": [] }