<?php

declare(strict_types=1);

namespace ApiModel\Domain\Repository;

interface InventoryAdjustmentRepositoryInterface
{
    public function findById(string $id): ?array;
    
    /** @return list<array<string, mixed>> */
    public function listByCompany(string $companyId): array;
    
    public function nextAdjustmentNumber(string $companyId): string;
    
    public function insert(array $data): void;
    
    public function delete(string $id): void;
    
    /** @return list<array<string, mixed>> */
    public function findLinesByAdjustmentId(string $adjustmentId): array;
    
    public function insertLines(string $adjustmentId, array $lines): void;
    
    public function deleteLines(string $adjustmentId): void;
}
