def predicate(cls: nodes.ClassDef) -> bool:
    """
    Astroid (used by pylint) calls this to see if our transform function needs to run.
    """
    if cls.name in CLASS_NAME_SKIPLIST:
        # class looks like an API model class, but it isn't.
        return False

    if not cls.name.endswith("API") and "schema" not in cls.locals:
        # class does not look like an API model class.
        return False

    return True

    Astroid (used by pylint) calls this to see if our transform function needs to run.
    
pylint_plugins/api_models.py