abstract public isSetOption (unknown $key)
...
abstract public hasOption (unknown $key)
abstract public getOption (unknown $key, [unknown $defaultValue])
abstract public validate (unknown $validation, unknown $attribute)