<?php
/*
* This file is part of the PHP CS utility.
*
* (c) Fabien Potencier <hide@address.com>
*
* This source file is subject to the MIT license that is bundled
* with this source code in the file LICENSE.
*/
namespace Symfony\CS;
/**
* @author Fabien Potencier <hide@address.com>
*/
interface ConfigInterface
{
/**
* Returns the name of the configuration.
*
* The name must be all lowercase and without any spaces.
*
* @return string The name of the configuration
*/
public function getName();
/**
* Returns the description of the configuration.
*
* A short one-line description for the configuration.
*
* @return string The description of the configuration
*/
public function getDescription();
/**
* Returns an iterator of files to scan.
*
* @return \Traversable A \Traversable instance that returns \SplFileInfo instances
*/
public function getFinder();
/**
* Returns the fixers to run.
*
* @return array|integer A level or a list of fixer names
*/
public function getFixers();
/**
* Sets the root directory of the project.
*
* @param string $dir The project root directory
*/
public function setDir($dir);
}