package domain import "time" type Provider struct { ID string `db:"id" json:"id"` TeamID string `db:"team_id" json:"teamId"` Type string `db:"type" json:"type"` Name string `db:"name" json:"name"` APIKey string `db:"key" json:"apiKey"` URL string `db:"url" json:"baseUrl"` Models string `db:"models" json:"models"` DateCreated time.Time `db:"_date_created" json:"_date_created"` DateUpdated *time.Time `db:"_date_updated" json:"_date_updated"` VersionId string `db:"_version" json:"_version"` } type ProviderRepository interface { ListProviders(userID string, teamID string) ([]*Provider, error) GetProvider(userID string, teamID string, id string) (*Provider, error) CreateProvider(userID string, provider *Provider) (*Provider, error) UpdateProvider(userID string, provider *Provider) (*Provider, error) DeleteProvider(userID string, teamID string, id string) error }