<?php

namespace App\PaymentGateways\Contracts;

use App\Models\PaymentGateway;

abstract class BasePaymentGateway implements PaymentGatewayInterface
{
    public function getConfigFields(): array
    {
        return [];
    }

    public function validateConfig(array $config): array
    {
        return $config;
    }

    public function isConfigured(PaymentGateway $gateway): bool
    {
        return true;
    }

    public function verify(string $transactionId, PaymentGateway $gateway): array
    {
        return [
            'success' => true,
            'transaction_id' => $transactionId,
            'status' => 'verified',
            'message' => 'Transaction verified.',
        ];
    }
}
