<?php

namespace App\Services\Payroll\Statutory;

class PfCalculator
{
    /** PF employee + employer: 12% each on basic, with statutory ceiling (e.g. 15000). */
    public function calculate(
        float $basicMonthly,
        float $employeeRatePercent = 12.0,
        float $employerRatePercent = 12.0,
        ?float $ceiling = 15000
    ): array {
        $base = $ceiling !== null ? min($basicMonthly, $ceiling) : $basicMonthly;
        $employee = round($base * ($employeeRatePercent / 100), 2);
        $employer = round($base * ($employerRatePercent / 100), 2);
        return [
            'employee' => $employee,
            'employer' => $employer,
            'base' => $base,
        ];
    }
}
