Sub2ApiAdminGroup constructor

Sub2ApiAdminGroup({
  1. required int id,
  2. required String name,
  3. required String description,
  4. required Sub2ApiAdminGroupPlatform platform,
  5. required Sub2ApiDecimal rateMultiplier,
  6. required bool isExclusive,
  7. required Sub2ApiAdminGroupStatus status,
  8. required Sub2ApiAdminGroupSubscriptionType subscriptionType,
  9. required bool longContextPricingEnabled,
  10. required bool allowImageGeneration,
  11. required bool allowBatchImageGeneration,
  12. required bool imageRateIndependent,
  13. required Sub2ApiDecimal imageRateMultiplier,
  14. required Sub2ApiDecimal batchImageDiscountMultiplier,
  15. required Sub2ApiDecimal batchImageHoldMultiplier,
  16. required bool videoRateIndependent,
  17. required Sub2ApiDecimal videoRateMultiplier,
  18. required bool peakRateEnabled,
  19. required String peakStart,
  20. required String peakEnd,
  21. required Sub2ApiDecimal peakRateMultiplier,
  22. required bool claudeCodeOnly,
  23. required bool allowMessagesDispatch,
  24. required bool allowLive,
  25. required bool requireOAuthOnly,
  26. required bool requirePrivacySet,
  27. required int rpmLimit,
  28. required String maxReasoningEffort,
  29. required List<Sub2ApiAdminReasoningEffortMapping> reasoningEffortMappings,
  30. required bool profitControlEnabled,
  31. required Sub2ApiDecimal profitMinMargin,
  32. required Sub2ApiDecimal profitSafetyBuffer,
  33. required List<Sub2ApiAdminModelPricing> modelPricing,
  34. required Map<String, List<int>> modelRouting,
  35. required bool modelRoutingEnabled,
  36. required bool mcpXmlInject,
  37. required String defaultMappedModel,
  38. required Sub2ApiAdminMessagesDispatchModelConfig messagesDispatchModelConfig,
  39. required Sub2ApiAdminGroupModelsListConfig modelsListConfig,
  40. required List<String> supportedModelScopes,
  41. required List<Sub2ApiAdminGroupAccountBinding> accountGroups,
  42. required int accountCount,
  43. required int activeAccountCount,
  44. required int rateLimitedAccountCount,
  45. required int sortOrder,
  46. required DateTime createdAt,
  47. required DateTime updatedAt,
  48. Sub2ApiDecimal? dailyLimitUsd,
  49. Sub2ApiDecimal? weeklyLimitUsd,
  50. Sub2ApiDecimal? monthlyLimitUsd,
  51. Sub2ApiDecimal? imagePrice1k,
  52. Sub2ApiDecimal? imagePrice2k,
  53. Sub2ApiDecimal? imagePrice4k,
  54. Sub2ApiDecimal? videoPrice480p,
  55. Sub2ApiDecimal? videoPrice720p,
  56. Sub2ApiDecimal? videoPrice1080p,
  57. Map<String, Map<String, Sub2ApiDecimal>>? videoModelPrices,
  58. Sub2ApiDecimal? webSearchPricePerCall,
  59. Sub2ApiDecimal? searchPricePer1k,
  60. Sub2ApiDecimal? audioRealtimePricePerMin,
  61. Sub2ApiDecimal? audioTtsPricePerMillionChars,
  62. Sub2ApiDecimal? audioSttPricePerHour,
  63. int? fallbackGroupId,
  64. int? fallbackGroupIdOnInvalidRequest,
})

Implementation

Sub2ApiAdminGroup({
  required this.id,
  required this.name,
  required this.description,
  required this.platform,
  required this.rateMultiplier,
  required this.isExclusive,
  required this.status,
  required this.subscriptionType,
  required this.longContextPricingEnabled,
  required this.allowImageGeneration,
  required this.allowBatchImageGeneration,
  required this.imageRateIndependent,
  required this.imageRateMultiplier,
  required this.batchImageDiscountMultiplier,
  required this.batchImageHoldMultiplier,
  required this.videoRateIndependent,
  required this.videoRateMultiplier,
  required this.peakRateEnabled,
  required this.peakStart,
  required this.peakEnd,
  required this.peakRateMultiplier,
  required this.claudeCodeOnly,
  required this.allowMessagesDispatch,
  required this.allowLive,
  required this.requireOAuthOnly,
  required this.requirePrivacySet,
  required this.rpmLimit,
  required this.maxReasoningEffort,
  required List<Sub2ApiAdminReasoningEffortMapping> reasoningEffortMappings,
  required this.profitControlEnabled,
  required this.profitMinMargin,
  required this.profitSafetyBuffer,
  required List<Sub2ApiAdminModelPricing> modelPricing,
  required Map<String, List<int>> modelRouting,
  required this.modelRoutingEnabled,
  required this.mcpXmlInject,
  required this.defaultMappedModel,
  required this.messagesDispatchModelConfig,
  required this.modelsListConfig,
  required List<String> supportedModelScopes,
  required List<Sub2ApiAdminGroupAccountBinding> accountGroups,
  required this.accountCount,
  required this.activeAccountCount,
  required this.rateLimitedAccountCount,
  required this.sortOrder,
  required this.createdAt,
  required this.updatedAt,
  this.dailyLimitUsd,
  this.weeklyLimitUsd,
  this.monthlyLimitUsd,
  this.imagePrice1k,
  this.imagePrice2k,
  this.imagePrice4k,
  this.videoPrice480p,
  this.videoPrice720p,
  this.videoPrice1080p,
  Map<String, Map<String, Sub2ApiDecimal>>? videoModelPrices,
  this.webSearchPricePerCall,
  this.searchPricePer1k,
  this.audioRealtimePricePerMin,
  this.audioTtsPricePerMillionChars,
  this.audioSttPricePerHour,
  this.fallbackGroupId,
  this.fallbackGroupIdOnInvalidRequest,
}) : reasoningEffortMappings = List.unmodifiable(reasoningEffortMappings),
     modelPricing = List.unmodifiable(modelPricing),
     modelRouting = Map.unmodifiable(
       modelRouting.map(
         (key, value) => MapEntry(key, List<int>.unmodifiable(value)),
       ),
     ),
     supportedModelScopes = List.unmodifiable(supportedModelScopes),
     accountGroups = List.unmodifiable(accountGroups),
     videoModelPrices = videoModelPrices == null
         ? const {}
         : Map.unmodifiable(
             videoModelPrices.map(
               (key, value) => MapEntry(
                 key,
                 Map<String, Sub2ApiDecimal>.unmodifiable(value),
               ),
             ),
           );