package regionalapi

type VPCStatus int

const (
	VPCStatusCreating VPCStatus = 1
	VPCStatusActive   VPCStatus = 2
	VPCStatusFailed   VPCStatus = 3
	VPCStatusDeleting VPCStatus = 4
)

type ListVPCResponse struct {
	VPC []RegionalNetwork `json:"vpcs"`
}

type RegionalNetwork struct {
	VPCID       string    `json:"vpc_id"`
	TenantIDs   []string  `json:"tenant_ids"`
	ProjectIDs  []string  `json:"project_ids"`
	CidrBlock   string    `json:"cidr_block"`
	Status      VPCStatus `json:"status"`
	ExternalIPs []string  `json:"external_ips"`
	Info        struct {
		AWS struct {
			VPCID     string `json:"vpc_id"`
			AccountID string `json:"account_id"`
		} `json:"Aws"`
		GCP struct {
			NetworkName string `json:"network_name"`
			ProjectID   string `json:"project_id"`
		} `json:"Gcp"`
		Azure struct {
			VNetID string `json:"vnet_id"`
		} `json:"Azure"`
	} `json:"Info`
}
