repository.go 584 B

12345678910111213141516171819202122
  1. package pricing
  2. import (
  3. "context"
  4. "github.com/opencost/opencost/core/pkg/reader"
  5. )
  6. type PricingRepository interface {
  7. NodePricingRepository
  8. VolumePricingRepository
  9. }
  10. type NodePricingRepository interface {
  11. NewNodePricingReader(ctx context.Context) (reader.Reader[*NodePricing], error)
  12. GetNodePricing(provider Provider, instanceType string, region string) (*NodePricing, error)
  13. }
  14. type VolumePricingRepository interface {
  15. NewVolumePricingReader(ctx context.Context) (reader.Reader[*VolumePricing], error)
  16. GetVolumePricing(VolumePricingProperties) (*VolumePricing, error)
  17. }