1<?php
2
3interface ilRendererConfig
4{
5
6    /**
7     * @param \ilPropertyFormGUI $form    The config form for the administration
8     * @param string             $service Service Title
9     * @param string             $purpose Purpose Title
10     *
11     * @return \ilPropertyFormGUI The config form
12     */
13    public function addConfigElementsToForm(\ilPropertyFormGUI $form, $service, $purpose);
14
15    /**
16     * @param \ilPropertyFormGUI $form    The config form for the administration
17     * @param string             $service Service Title
18     * @param string             $purpose Purpose Title
19     * @param array              $config  KV-array with config
20     *
21     * @return \ilPropertyFormGUI The config form
22     */
23    public function populateConfigElementsInForm(\ilPropertyFormGUI $form, $service, $purpose, $config);
24
25    /**
26     * @param \ilPropertyFormGUI $form    The config form for the administration
27     * @param string             $service Service Title
28     * @param string             $purpose Purpose Title
29     *
30     * @return boolean True, if the form holds a valid config
31     */
32    public function validateConfigInForm(\ilPropertyFormGUI $form, $service, $purpose);
33
34    /**
35     * @param \ilPropertyFormGUI $form    The config form for the administration
36     * @param string             $service Service Title
37     * @param string             $purpose Purpose Title
38     *
39     * @return array KV-array with config
40     */
41    public function getConfigFromForm(\ilPropertyFormGUI $form, $service, $purpose);
42
43    /**
44     * @param string $service Service Title
45     * @param string $purpose Purpose Title
46     *
47     * @return array KV-array with config
48     */
49    public function getDefaultConfig($service, $purpose);
50}
51