<?php

namespace Daylight\Core\Modules\Payment;

abstract class PaymentMethod
{
    abstract public function getId(): string;

    abstract public function getName(): string;

    abstract public function getGatewayKey(): string;

    abstract public function getIcon(): ?string;

    abstract public function transactionFee(): float;

    abstract public function order(): int;

    /** Maximum order amount in cents, or null for no limit. */
    public function maxAmount(): ?int
    {
        return null;
    }
}
