/** * google-calendar-api.ts, the Google Calendar API v3 client over an access token * and the injected HttpFetch. Lists calendars (calendarList.list), lists events * (events.list with timeMin/timeMax paging and singleEvents=true so instances are * already expanded), and creates events (events.insert). Every event is normalized * into the merged model; every failure is a named degraded state via CalendarApiError. */ import type { HttpFetch, MergedCalendarEvent, NewCalendarEvent, ProviderCalendar } from './oauth-types.js'; /** List the user's calendars. Write access is inferred from accessRole. */ export declare function listGoogleCalendars(fetchImpl: HttpFetch, token: string): Promise; export interface GoogleEventsQuery { readonly calendarId: string; readonly calendarLabel: string; /** RFC3339 lower bound (inclusive), e.g. '2026-07-01T00:00:00Z'. */ readonly timeMin: string; /** RFC3339 upper bound (exclusive). */ readonly timeMax: string; /** Page size cap per request; the client pages until exhausted. */ readonly pageSize?: number; } /** List events in a window, paging through every page. Instances are pre-expanded. */ export declare function listGoogleEvents(fetchImpl: HttpFetch, token: string, query: GoogleEventsQuery): Promise; /** Insert a new event; returns it normalized into the merged model. */ export declare function createGoogleEvent(fetchImpl: HttpFetch, token: string, calendarId: string, calendarLabel: string, event: NewCalendarEvent): Promise; //# sourceMappingURL=google-calendar-api.d.ts.map