package framework import ( "os" "gopkg.in/yaml.v3" "project/internal/domain" ) type Loader interface { LoadFromFile(path string) (*domain.InterviewFramework, error) } type YAMLLoader struct{} func NewYAMLLoader() *YAMLLoader { return &YAMLLoader{} } func (l *YAMLLoader) LoadFromFile(path string) (*domain.InterviewFramework, error) { b, err := os.ReadFile(path) if err != nil { return nil, err } var fw domain.InterviewFramework if err := yaml.Unmarshal(b, &fw); err != nil { return nil, err } return &fw, nil }