<?php

namespace App\Generated\V1\Messages\Payment;

use Kamicloud\StubApi\Concerns\ValueHelper;
use Kamicloud\StubApi\Http\Messages\Message;
use Kamicloud\StubApi\Utils\Constants;

class GetCouponListMessage extends Message
{
    use ValueHelper;

    protected $type;
    protected $goodsScope;
    protected $perPage;
    protected $result;

    /**
     * @return string|null
     */
    public function getType()
    {
        return $this->type;
    }

    /**
     * @return string|null
     */
    public function getGoodsScope()
    {
        return $this->goodsScope;
    }

    /**
     * @return int|null
     */
    public function getPerPage()
    {
        return $this->perPage;
    }

    public function requestRules()
    {
        return [
            ['type', 'type', 'bail|nullable|string', Constants::STRING | Constants::OPTIONAL, null],
            ['goodsScope', 'goods_scope', 'bail|nullable|string', Constants::STRING | Constants::OPTIONAL, null],
            ['perPage', 'per_page', 'bail|nullable|integer', Constants::INTEGER | Constants::OPTIONAL, null],
        ];
    }

    public function responseRules()
    {
        return [
            ['result', 'result', 'bail', null, null],
        ];
    }

    public function setResponse($result)
    {
        $this->result = $result;
    }

}
