package ports import ( "Yimaru-Backend/internal/domain" "context" ) type ModuleStore interface { CreateModule(ctx context.Context, programID, courseID int64, input domain.CreateModuleInput) (domain.Module, error) GetModuleByID(ctx context.Context, id int64) (domain.Module, error) ListModulesByProgramAndCourse(ctx context.Context, programID, courseID int64, limit, offset int32) ([]domain.Module, int64, error) UpdateModule(ctx context.Context, id int64, input domain.UpdateModuleInput) (domain.Module, error) DeleteModule(ctx context.Context, id int64) error }