API Google Calendar - tipuri TypeScript
Știe cineva dacă API-ul Google Calendar (pachetul npm googleapis) pentru node.js (sau browser) are tipuri disponibile care ar putea fi folosite în TypeScript. Permițând o abordare puternic tipizată în node sau Angular.
Nu am putut găsi un pachet npm @types/googleapis. Niciun lucru în documentație.
Orice sfat este binevenit.
Mulțumesc anticipat.
-- Documentația spune că este suportat nativ, nu este nevoie de un pachet separat. Doc - secțiunea Typescript DAR, când încerc, așa cum este menționat în doc
import { google, calendar_v3 } from 'googleapis';
Typescript îmi spune: [ts] Modulul '"/home/me/myProject/functions/node_modules/googleapis/build/src/index"' nu are niciun membru exportat 'calendar_v3'. [2305]
Când mă uit în googleapis/build/src/index.d.ts văd GoogleApis, care indică către ../apis unde sunt toate API-urile, cu un fișier v3.d.ts care include namespace-ul
* @namespace calendar
* @type {Function}
* @version v3
* @variation v3
Deci, evident, este acolo, dar îmi lipsește ceva ... dar ce? Cum poți folosi această bibliotecă în TypeScript? Un exemplu ar fi binevenit.
Philippe
Răspuns #1
Răspunsul lui @justin-beckwith este corect, dar și obținerea tipurilor merită un exemplu:
import { calendar_v3, google } from 'googleapis';
import { OAuth2Client, Credentials } from 'google-auth-library';
import Calendar = calendar_v3.Calendar;
import Schema$Event = calendar_v3.Schema$Event;
const auth: OAuth2Client = new google.auth.OAuth2(...);
const calendar: Calendar = google.calendar({ version: 'v3', auth });
const schemaEvent: Schema$Event = (await calendar.events.get({ calendarId, eventId })).data;
Răspunsul #2
Poți absolut să folosești această bibliotecă cu TypeScript. Este scrisă în TypeScript! Iată un exemplu de bază:
import {google} from 'googleapis';
const calendar = google.calendar('v3');
Aceasta este calea corectă de a obține o referință la o subsecțiune particulară a API-ului :)
Sper că acest lucru ajută!
