<?php

namespace App\Classes\Objects\Orders;

use App\Classes\Interfaces\Order\Steps\OrderStep as OrderStepInterface;

class OrderStepObject implements OrderStepInterface
{
    /** @var bool  */
    protected $isPrimary;

    /** @var string  */
    protected $referenceId;

    /** @var float   */
    protected $sequence;

    /**
     * AbstractOrderStep constructor.
     * @param bool $isPrimary
     * @param string $referenceId
     * @param float $sequence
     */
    public function __construct(bool $isPrimary, string $referenceId, float $sequence)
    {
        $this->isPrimary = $isPrimary;
        $this->referenceId = $referenceId;
        $this->sequence = $sequence;
    }

    /**
     * @return bool
     */
    public function isPrimary(): bool
    {
        return $this->isPrimary;
    }

    /**
     * @return string
     */
    public function getReferenceId(): string
    {
        return $this->referenceId;
    }

    /**
     * @return float
     */
    public function getSequence(): float
    {
        return $this->sequence;
    }
}