# -*- coding: utf-8 -*-
"""Location: ./tests/load/generators/__init__.py
Copyright 2026
SPDX-License-Identifier: Apache-2.0
Authors: Mihai Criveti

Data generators for load testing.
"""

from .base import BaseGenerator
from .users import UserGenerator
from .teams import TeamGenerator
from .team_members import TeamMemberGenerator
from .tokens import TokenGenerator
from .gateways import GatewayGenerator
from .tools import ToolGenerator
from .resources import ResourceGenerator
from .prompts import PromptGenerator
from .servers import ServerGenerator
from .a2a_agents import A2AAgentGenerator
from .associations import (
    ServerToolAssociationGenerator,
    ServerResourceAssociationGenerator,
    ServerPromptAssociationGenerator,
    ServerA2AAssociationGenerator,
)
from .metrics import (
    ToolMetricsGenerator,
    ResourceMetricsGenerator,
    PromptMetricsGenerator,
    ServerMetricsGenerator,
    A2AAgentMetricsGenerator,
)
from .activity_logs import (
    TokenUsageLogGenerator,
    EmailAuthEventGenerator,
    PermissionAuditLogGenerator,
)
from .sessions import (
    MCPSessionGenerator,
    MCPMessageGenerator,
    ResourceSubscriptionGenerator,
)
from .workflow_state import (
    TeamInvitationGenerator,
    TeamJoinRequestGenerator,
    TokenRevocationGenerator,
    OAuthTokenGenerator,
)

__all__ = [
    "BaseGenerator",
    # Core entities
    "UserGenerator",
    "TeamGenerator",
    "TeamMemberGenerator",
    "TokenGenerator",
    "GatewayGenerator",
    "ToolGenerator",
    "ResourceGenerator",
    "PromptGenerator",
    "ServerGenerator",
    "A2AAgentGenerator",
    # Associations
    "ServerToolAssociationGenerator",
    "ServerResourceAssociationGenerator",
    "ServerPromptAssociationGenerator",
    "ServerA2AAssociationGenerator",
    # Metrics
    "ToolMetricsGenerator",
    "ResourceMetricsGenerator",
    "PromptMetricsGenerator",
    "ServerMetricsGenerator",
    "A2AAgentMetricsGenerator",
    # Activity logs
    "TokenUsageLogGenerator",
    "EmailAuthEventGenerator",
    "PermissionAuditLogGenerator",
    # Sessions
    "MCPSessionGenerator",
    "MCPMessageGenerator",
    "ResourceSubscriptionGenerator",
    # Workflow state
    "TeamInvitationGenerator",
    "TeamJoinRequestGenerator",
    "TokenRevocationGenerator",
    "OAuthTokenGenerator",
]