import 'package:json_annotation/json_annotation.dart';

/// Represents various resource types (mirroring your Go "Type" constants).
enum ResourceType {
  /// Represents user accounts in the system
  @JsonValue('accounts')
  accounts,

  /// Represents analytics integration with Amplitude
  @JsonValue('amplitude')
  amplitude,

  /// Represents automation workflows
  @JsonValue('automations')
  automations,

  /// Tracks changes made to resources
  @JsonValue('changes')
  changes,

  /// Represents client information
  @JsonValue('clients')
  clients,

  /// Represents invitations sent to users
  @JsonValue('invitations')
  invitations,

  /// Represents invoices
  @JsonValue('invoices')
  invoices,

  /// Represents logos for organizations or projects
  @JsonValue('logo')
  logo,

  /// Represents notifications sent to users
  @JsonValue('notifications')
  notifications,

  /// Represents organizations in the system
  @JsonValue('organizations')
  organizations,

  @JsonValue('chain_wallets')
  chainWallets,

  /// Represents permissions service
  @JsonValue('permissions')
  permissions,

  /// Represents access control policies
  @JsonValue('policies')
  policies,

  /// Represents refresh tokens for authentication
  @JsonValue('refresh_tokens')
  refreshTokens,

  /// Represents roles in access control
  @JsonValue('roles')
  roles,

  /// Represents statuses of tasks or projects
  @JsonValue('statuses')
  statuses,

  /// Represents steps in workflows or processes
  @JsonValue('steps')
  steps,
}
