summaryrefslogtreecommitdiff
path: root/internal/api/interfaces.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/api/interfaces.go')
-rw-r--r--internal/api/interfaces.go9
1 files changed, 9 insertions, 0 deletions
diff --git a/internal/api/interfaces.go b/internal/api/interfaces.go
index 70bba1f..aa351ab 100644
--- a/internal/api/interfaces.go
+++ b/internal/api/interfaces.go
@@ -42,10 +42,19 @@ type GoogleCalendarAPI interface {
GetEventsByDateRange(ctx context.Context, start, end time.Time) ([]models.CalendarEvent, error)
}
+// GoogleTasksAPI defines the interface for Google Tasks operations
+type GoogleTasksAPI interface {
+ GetTasks(ctx context.Context) ([]models.GoogleTask, error)
+ GetTasksByDateRange(ctx context.Context, start, end time.Time) ([]models.GoogleTask, error)
+ CompleteTask(ctx context.Context, listID, taskID string) error
+ UncompleteTask(ctx context.Context, listID, taskID string) error
+}
+
// Ensure concrete types implement interfaces
var (
_ TodoistAPI = (*TodoistClient)(nil)
_ TrelloAPI = (*TrelloClient)(nil)
_ PlanToEatAPI = (*PlanToEatClient)(nil)
_ GoogleCalendarAPI = (*GoogleCalendarClient)(nil)
+ _ GoogleTasksAPI = (*GoogleTasksClient)(nil)
)