// Permission constants matching backend
export enum AdminPermission {
  // GRU Management
  GRU_CREATE_CLASS = 'gru:create_class',
  GRU_CHANGE_CLASS = 'gru:change_class',
  GRU_LOCK_UNLOCK = 'gru:lock_unlock',
  GRU_ISSUANCE_PROPOSAL = 'gru:issuance_proposal',
  GRU_INDEX_WEIGHT_ADJUST = 'gru:index_weight_adjust',
  GRU_CIRCUIT_BREAKERS = 'gru:circuit_breakers',
  GRU_BOND_ISSUANCE_WINDOW = 'gru:bond_issuance_window',
  GRU_BOND_BUYBACK = 'gru:bond_buyback',

  // Corridor Management
  CORRIDOR_ADJUST_CAPS = 'corridor:adjust_caps',
  CORRIDOR_THROTTLE = 'corridor:throttle',
  CORRIDOR_ENABLE_DISABLE = 'corridor:enable_disable',
  CORRIDOR_REQUEST_CHANGE = 'corridor:request_change',

  // Network Controls
  NETWORK_QUIESCE_SUBSYSTEM = 'network:quiesce_subsystem',
  NETWORK_KILL_SWITCH = 'network:kill_switch',
  NETWORK_ESCALATE_INCIDENT = 'network:escalate_incident',

  // SCB Management
  SCB_PAUSE_SETTLEMENT = 'scb:pause_settlement',
  SCB_VIEW_DETAILS = 'scb:view_details',
  SCB_IMPERSONATE_VIEW = 'scb:impersonate_view',
  SCB_JURISDICTION_SETTINGS = 'scb:jurisdiction_settings',

  // FI Management
  FI_APPROVE_SUSPEND = 'fi:approve_suspend',
  FI_SET_LIMITS = 'fi:set_limits',
  FI_API_PROFILES = 'fi:api_profiles',

  // CBDC Management
  CBDC_APPROVE_TYPE = 'cbdc:approve_type',
  CBDC_CROSS_BORDER_CORRIDOR = 'cbdc:cross_border_corridor',
  CBDC_UPDATE_PARAMETERS = 'cbdc:update_parameters',

  // GAS & QPS
  GAS_SET_LIMITS = 'gas:set_limits',
  GAS_ENABLE_DISABLE_SETTLEMENT = 'gas:enable_disable_settlement',
  GAS_THROTTLE_BANDWIDTH = 'gas:throttle_bandwidth',
  QPS_ENABLE_DISABLE = 'qps:enable_disable',
  QPS_SET_MAPPING_PROFILES = 'qps:set_mapping_profiles',

  // Metaverse & Edge
  METAVERSE_ENABLE_ONRAMP = 'metaverse:enable_onramp',
  METAVERSE_SET_LIMITS = 'metaverse:set_limits',
  EDGE_DRAIN_LOAD = 'edge:drain_load',
  EDGE_QUARANTINE = 'edge:quarantine',

  // Risk & Compliance
  RISK_ACKNOWLEDGE_ALERT = 'risk:acknowledge_alert',
  RISK_TRIGGER_STRESS_TEST = 'risk:trigger_stress_test',
  RISK_PUSH_POLICY_UPDATE = 'risk:push_policy_update',
  RISK_MARK_SCENARIO = 'risk:mark_scenario',

  // Nostro/Vostro
  NOSTRO_VOSTRO_OPEN = 'nostro_vostro:open',
  NOSTRO_VOSTRO_ADJUST_LIMITS = 'nostro_vostro:adjust_limits',
  NOSTRO_VOSTRO_FREEZE = 'nostro_vostro:freeze',

  // Developer & Integrations
  API_KEY_ROTATE = 'api:key_rotate',
  API_KEY_REVOKE = 'api:key_revoke',
  API_SANDBOX_MODE = 'api:sandbox_mode',

  // Security & Identity
  RBAC_EDIT = 'rbac:edit',
  AUDIT_EXPORT = 'audit:export',

  // Read-only permissions
  VIEW_GLOBAL_OVERVIEW = 'view:global_overview',
  VIEW_PARTICIPANTS = 'view:participants',
  VIEW_GRU_COMMAND = 'view:gru_command',
  VIEW_GAS_QPS = 'view:gas_qps',
  VIEW_CBDC_FX = 'view:cbdc_fx',
  VIEW_METAVERSE_EDGE = 'view:metaverse_edge',
  VIEW_RISK_COMPLIANCE = 'view:risk_compliance',
  VIEW_SCB_OVERVIEW = 'view:scb_overview',
  VIEW_FI_MANAGEMENT = 'view:fi_management',
  VIEW_CORRIDOR_POLICY = 'view:corridor_policy',
}

