{
"event": "PreToolUse",
"tool_name": "Write",
"tool_input": {
"file_path": "\/var\/www\/dev.campus.systemische-tools.de\/src\/Domain\/Repository\/FileBackupRepositoryInterface.php",
"content": "<?php\n\ndeclare(strict_types=1);\n\nnamespace Domain\\Repository;\n\n\/\/ @responsibility: Contract für Datei-Backup-Persistenz\n\ninterface FileBackupRepositoryInterface\n{\n \/**\n * @param array<string, mixed> $filters\n * @return array<array<string, mixed>>\n *\/\n public function findAll(array $filters = [], int $limit = 50, int $offset = 0): array;\n\n \/**\n * @param array<string, mixed> $filters\n *\/\n public function count(array $filters = []): int;\n\n \/**\n * @return array<string, mixed>|null\n *\/\n public function findById(int $id): ?array;\n\n \/**\n * @return array<array<string, mixed>>\n *\/\n public function findByFilePath(string $path): array;\n\n \/**\n * @return array<string, int>\n *\/\n public function getStatistics(): array;\n\n \/**\n * @throws \\RuntimeException If restore fails\n *\/\n public function restore(int $id): bool;\n\n public function getContentPreview(int $id, int $maxLines = 500): ?string;\n}\n"
}
}
{
"tool_response": {
"type": "create",
"filePath": "\/var\/www\/dev.campus.systemische-tools.de\/src\/Domain\/Repository\/FileBackupRepositoryInterface.php",
"content": "<?php\n\ndeclare(strict_types=1);\n\nnamespace Domain\\Repository;\n\n\/\/ @responsibility: Contract für Datei-Backup-Persistenz\n\ninterface FileBackupRepositoryInterface\n{\n \/**\n * @param array<string, mixed> $filters\n * @return array<array<string, mixed>>\n *\/\n public function findAll(array $filters = [], int $limit = 50, int $offset = 0): array;\n\n \/**\n * @param array<string, mixed> $filters\n *\/\n public function count(array $filters = []): int;\n\n \/**\n * @return array<string, mixed>|null\n *\/\n public function findById(int $id): ?array;\n\n \/**\n * @return array<array<string, mixed>>\n *\/\n public function findByFilePath(string $path): array;\n\n \/**\n * @return array<string, int>\n *\/\n public function getStatistics(): array;\n\n \/**\n * @throws \\RuntimeException If restore fails\n *\/\n public function restore(int $id): bool;\n\n public function getContentPreview(int $id, int $maxLines = 500): ?string;\n}\n",
"structuredPatch": [],
"originalFile": null
}
}