shrink0r/workflux

View on GitHub
src/Transition/TransitionInterface.php

Summary

Maintainability
A
0 mins
Test Coverage
<?php

namespace Workflux\Transition;

use Workflux\Param\InputInterface;
use Workflux\Param\OutputInterface;

interface TransitionInterface
{
    /**
     * @param InputInterface $input
     * @param OutputInterface $output
     *
     * @return bool
     */
    public function isActivatedBy(InputInterface $input, OutputInterface $output): bool;

    /**
     * @return string
     */
    public function getFrom(): string;

    /**
     * @return string
     */
    public function getTo(): string;

    /**
     * @return string
     */
    public function getLabel(): string;

    /**
     * @return array
     */
    public function getConstraints(): array;

    /**
     * @return bool
     */
    public function hasConstraints(): bool;
}