package repository

import (
	"backend/pkg/notification/domain/entity"
	"context"
)

// TemplateRepository 模板資料庫接口
type TemplateRepository interface {
	// GetTemplate 根據類型、語言、分類獲取模板
	GetTemplate(ctx context.Context, templateType, language, category string) (*entity.Template, error)

	// ListTemplates 列出所有活躍的模板
	ListTemplates(ctx context.Context, templateType, language string) ([]*entity.Template, error)

	// CreateTemplate 創建模板
	CreateTemplate(ctx context.Context, template *entity.Template) error

	// UpdateTemplate 更新模板
	UpdateTemplate(ctx context.Context, template *entity.Template) error

	// DeleteTemplate 刪除模板
	DeleteTemplate(ctx context.Context, id string) error
}
