package schema

import "gorm.io/gorm"

type Cidr struct {
	gorm.Model

	ProjectID  uint64    `gorm:"not null;index:project_region,unique,priority:1;"`
	RegionID   uint64    `gorm:"not null;index:project_region,unique,priority:2;"`
	Region     *Region   `gorm:"foreignkey:RegionID"`
	CIDR       string    `gorm:"type:VARCHAR(255);column:cidr"`
	ProviderID uint64    `gorm:"index;not null"`
	Provider   *Provider `gorm:"foreignkey:ProviderID"`
	TenantID   uint64    `gorm:"index"`
}

type SecondaryCidr struct {
	gorm.Model

	ProjectID  uint64    `gorm:"not null;index"`
	RegionID   uint64    `gorm:"not null;index"`
	Region     *Region   `gorm:"foreignkey:RegionID"`
	CIDR       string    `gorm:"type:VARCHAR(255);column:cidr"`
	ProviderID uint64    `gorm:"index;not null"`
	Provider   *Provider `gorm:"foreignkey:ProviderID"`
	TenantID   uint64    `gorm:"index"`
	VpcID      string    `gorm:"type:VARCHAR(255);column:vpc_id;not null;index"`
}
