# Outputs for Regional Landing Zone Module

output "resource_group_name" {
  description = "Name of the resource group"
  value       = azurerm_resource_group.landing_zone.name
}

output "resource_group_id" {
  description = "ID of the resource group"
  value       = azurerm_resource_group.landing_zone.id
}

output "hub_vnet_id" {
  description = "ID of the hub virtual network"
  value       = azurerm_virtual_network.hub.id
}

output "hub_vnet_name" {
  description = "Name of the hub virtual network"
  value       = azurerm_virtual_network.hub.name
}

output "spoke_vnet_id" {
  description = "ID of the spoke virtual network"
  value       = azurerm_virtual_network.spoke.id
}

output "spoke_vnet_name" {
  description = "Name of the spoke virtual network"
  value       = azurerm_virtual_network.spoke.name
}

output "firewall_id" {
  description = "ID of the Azure Firewall"
  value       = azurerm_firewall.hub.id
}

output "firewall_private_ip" {
  description = "Private IP address of the Azure Firewall"
  value       = azurerm_firewall.hub.ip_configuration[0].private_ip_address
}

output "key_vault_id" {
  description = "ID of the Key Vault"
  value       = azurerm_key_vault.regional.id
}

output "key_vault_name" {
  description = "Name of the Key Vault"
  value       = azurerm_key_vault.regional.name
}

output "key_vault_uri" {
  description = "URI of the Key Vault"
  value       = azurerm_key_vault.regional.vault_uri
}

output "log_analytics_workspace_id" {
  description = "ID of the Log Analytics Workspace"
  value       = azurerm_log_analytics_workspace.regional.workspace_id
}

output "log_analytics_workspace_name" {
  description = "Name of the Log Analytics Workspace"
  value       = azurerm_log_analytics_workspace.regional.name
}

output "storage_account_name" {
  description = "Name of the storage account"
  value       = azurerm_storage_account.regional.name
}

output "storage_account_id" {
  description = "ID of the storage account"
  value       = azurerm_storage_account.regional.id
}

output "storage_account_primary_endpoint" {
  description = "Primary endpoint of the storage account"
  value       = azurerm_storage_account.regional.primary_blob_endpoint
}

output "subnet_ids" {
  description = "Map of subnet names to IDs"
  value = {
    hub_gateway    = azurerm_subnet.hub_gateway.id
    hub_firewall   = azurerm_subnet.hub_firewall.id
    hub_management = azurerm_subnet.hub_management.id
    spoke_app      = azurerm_subnet.spoke_app.id
    spoke_db       = azurerm_subnet.spoke_db.id
    spoke_storage  = azurerm_subnet.spoke_storage.id
  }
}

