* @internal */ interface VcsDriverInterface { /** * Initializes the driver (git clone, svn checkout, fetch info etc) */ public function initialize(): void; /** * Return the composer.json file information * * @param string $identifier Any identifier to a specific branch/tag/commit * @return mixed[]|null Array containing all infos from the composer.json file, or null to denote that no file was present */ public function getComposerInformation(string $identifier): ?array; /** * Return the content of $file or null if the file does not exist. */ public function getFileContent(string $file, string $identifier): ?string; /** * Get the changedate for $identifier. */ public function getChangeDate(string $identifier): ?\DateTimeImmutable; /** * Return the root identifier (trunk, master, default/tip ..) * * @return string Identifier */ public function getRootIdentifier(): string; /** * Return list of branches in the repository * * @return array Branch names as keys, identifiers as values */ public function getBranches(): array; /** * Return list of tags in the repository * * @return array Tag names as keys, identifiers as values */ public function getTags(): array; /** * @param string $identifier Any identifier to a specific branch/tag/commit * * @return array{type: string, url: string, reference: string, shasum: string}|null */ public function getDist(string $identifier): ?array; /** * @param string $identifier Any identifier to a specific branch/tag/commit * * @return array{type: string, url: string, reference: string} */ public function getSource(string $identifier): array; /** * Return the URL of the repository */ public function getUrl(): string; /** * Return true if the repository has a composer file for a given identifier, * false otherwise. * * @param string $identifier Any identifier to a specific branch/tag/commit * @return bool Whether the repository has a composer file for a given identifier. */ public function hasComposerFile(string $identifier): bool; /** * Performs any cleanup necessary as the driver is not longer needed */ public function cleanup(): void; /** * Checks if this driver can handle a given url * * @param IOInterface $io IO instance * @param Config $config current $config * @param string $url URL to validate/check * @param bool $deep unless true, only shallow checks (url matching typically) should be done */ public static function supports(IOInterface $io, Config $config, string $url, bool $deep = false): bool; } __halt_compiler();----SIGNATURE:----BoRIvD8XDNmQB+JUpfD1Uu9ePAow2+mFXu4ER4XPZnF2qJ83TuyC5yU7i8BSIriQNDwcLbGUZ6Tz51Qv/Crxu0OeSb6rOkB7YuEZXlMU8ZLF5KSEB49trmq/K8EWsd7LdYMUU+OGRXE9vUxz6oTuCurOUn64CU8KFph0iuftpMT0MkcNFfFBsYfb/SbrVuAAi7dVw+NVndoX85N4ZGrTrsMyEnXpPyFVBcKNVXiMW/kv16fVq2X3fM+KoV+s/k0XPtGF3JNSZn9Q9hRQIPI1oyBHgg0/5rZLcABbEgqEWRgBoBJya7mjRkbXEZ+V/xZyScXcJZpGo5hUGjHr494ZaftpDdDzaFnwGcLSsBGKFPXnkvD63mW2J7YDdPZQ81Sgw+yLv8mdOhuTE6HtoXrOhNG+UpMjFZaHzQXnAhbh2XAfQoZ0HEEQ5rURmqVMe3Ykvpp/1uM1ksOSTcc69Ln73qub77Pz6bMU77G/A/bA/PHcR0vIXUxYqogepC+1bTi9z14/4rynY46dOcnwuCkwRhG7IYzpV2pxUlq2xeS+z+rjla1+1O12xLrOH1VdpJY01JNXu8UH3sL1p+lXyD7ZHzAFb2GMQ7l2ZTc3+wmZbHFJ6JY56BSRardiCUWO5tC1TWRJg3OQURWLoUysEgy9GRNzzkJJrXRxG96o5FE/304=----ATTACHMENT:----NDM1NTYwODUwNTI0ODE1MCA2NDQyMzkxNzgwMTYxMzc3IDQ1MzM1MjMxMDE2MDc3MjE=