FileAnalysisRepositoryInterface.php

Code Hygiene Score: 100

Keine Issues gefunden.

Dependencies 1

Klassen 1

Funktionen 10

Verwendet von 7

Versionen 2

Code

<?php

declare(strict_types=1);

namespace Domain\Repository;

// @responsibility: Contract für Datei-Analyse-Persistenz (code_analysis Tabelle)

use Domain\Constants;

interface FileAnalysisRepositoryInterface
{
    /**
     * @param array<string, mixed> $filters
     * @return array<array<string, mixed>>
     */
    public function findAll(array $filters = [], int $limit = Constants::DEFAULT_LIMIT, int $offset = 0): array;

    /**
     * @return array<string, mixed>|null
     */
    public function findById(int $id): ?array;

    /**
     * @param array<array<string, mixed>> $items
     */
    public function saveBatch(array $items, string $scanId): int;

    public function deleteByNotScanId(string $currentScanId): int;

    public function getLatestScanId(): ?string;

    /**
     * @return array<array<string, mixed>>
     */
    public function findByScanId(string $scanId): array;

    /**
     * @return array<string, mixed>
     */
    public function getStatistics(?string $scanId = null): array;

    /**
     * @return array<string>
     */
    public function getDistinctDirectories(): array;

    /**
     * @return array<string>
     */
    public function getDistinctNamespaces(): array;

    /**
     * @return array<array<string, mixed>>
     */
    public function getConfiguredDirectories(): array;
}
← Übersicht Graph