diff options
Diffstat (limited to 'internal/api/interfaces.go')
| -rw-r--r-- | internal/api/interfaces.go | 9 |
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) ) |
