# !!!
# WARNING: This file is autogenerated
# Only modify code within MANUAL() sections
# or your changes may be overwritten later!
# !!!

from __future__ import annotations

from stytch.consumer.api.fraud_fingerprint import Fingerprint
from stytch.consumer.api.fraud_rules import Rules
from stytch.consumer.api.fraud_verdict_reasons import VerdictReasons
from stytch.core.api_base import ApiBase
from stytch.core.http.client import AsyncClient, SyncClient


class Fraud:
    def __init__(
        self, api_base: ApiBase, sync_client: SyncClient, async_client: AsyncClient
    ) -> None:
        self.api_base = api_base
        self.sync_client = sync_client
        self.async_client = async_client
        self.fingerprint = Fingerprint(
            api_base=self.api_base,
            sync_client=self.sync_client,
            async_client=self.async_client,
        )
        self.rules = Rules(
            api_base=self.api_base,
            sync_client=self.sync_client,
            async_client=self.async_client,
        )
        self.verdict_reasons = VerdictReasons(
            api_base=self.api_base,
            sync_client=self.sync_client,
            async_client=self.async_client,
        )
