"""EncodingNormalizer --- decodes base64, URL encoding, and HTML entities."""

from __future__ import annotations

from .base import BaseNormalizer


class EncodingNormalizer(BaseNormalizer):
    """Decodes encoded content before scanning.

    Three-pass decode: URL percent-encoding first, HTML entities second,
    base64 last (token-level only, minimum 12 characters, must decode to
    valid printable UTF-8).
    """

    def to_normalizer_spec(self) -> dict:
        return {"type": "encoding", "config": {}}
