* @author Beau Simensen */ interface ConfigSourceInterface { /** * Add a repository * * @param string $name Name * @param mixed[]|false $config Configuration * @param bool $append Whether the repo should be appended (true) or prepended (false) */ public function addRepository(string $name, $config, bool $append = true): void; /** * Remove a repository */ public function removeRepository(string $name): void; /** * Add a config setting * * @param string $name Name * @param mixed $value Value */ public function addConfigSetting(string $name, $value): void; /** * Remove a config setting */ public function removeConfigSetting(string $name): void; /** * Add a property * * @param string $name Name * @param string|string[] $value Value */ public function addProperty(string $name, $value): void; /** * Remove a property */ public function removeProperty(string $name): void; /** * Add a package link * * @param string $type Type (require, require-dev, provide, suggest, replace, conflict) * @param string $name Name * @param string $value Value */ public function addLink(string $type, string $name, string $value): void; /** * Remove a package link * * @param string $type Type (require, require-dev, provide, suggest, replace, conflict) * @param string $name Name */ public function removeLink(string $type, string $name): void; /** * Gives a user-friendly name to this source (file path or so) */ public function getName(): string; } __halt_compiler();----SIGNATURE:----WZRMIImDj6TP6ECYN9Sh1TLfsGYRymhYqemIFKP7SlNX8dGaadjb6vUKjWjd01XGj8CHnni2/vSnxt0ZicWUJ9soRWOgptkp+CmEUryxbbZTythlRi/FqqY1ScE0gRwCeXH+3sTzCzogGVXm6UrEK22HSKeTeOlYlstfj+EM0jiKv5F2EzoWtJf+LhR/3LX7t7MslNAdV2YMx+k8+PN2Edc4KHapJiGivMTEHAHfFbp7CT6+ULmvvEDgCzVcrh7b3W+AGJ/cl/rg65zL8gq9Kk7XymIzViN2ukuXo5XHeAB80X/RYEdGcQKxQAFtWTpXu65il8yByKJViTLz+cY/n8Ea6/v1MlJMNzmwJMZFoMxK1o+lDQTdbjMDH/eE1o2FXH/EPhZ0jhZ3woG2p2MeR9OEKWkDQUa+neYoIThlE9wDWjOVUUVL9596Cwz1/2i+CFeecgPQt1y3rKlWNWHyffRJeacDLVPVG4jaas1ym6amaqr2DzzFPkYEbWDANlUG0vi8SjQ/oUcHKRACwqtXbYEhkB1AXoXahpEOLe1799v7XGwNN7jENZTvT0cIakM/2ELnSOCnK6Y/tQxTs7r7wvvuNWpf30jppcGHHcIhEh0IhYUmpMzolPYCjT560c8ZS2Jb7Xgycbew8yzFgFrcZwup5hnEQVlLw0QhJ0jirR0=----ATTACHMENT:----OTcyODc0MzQ5MjgxOTE4NiA4OTEwNTA5ODI5NDI1NjEwIDc0Mjk1MDQwMjEyMDc1MDE=