UNPKG

adk-typescript

Version:

TypeScript port of Google's Agent Development Kit (ADK)

143 lines (142 loc) 4.64 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getBigqueryToolSet = getBigqueryToolSet; exports.getCalendarToolSet = getCalendarToolSet; exports.getGmailToolSet = getGmailToolSet; exports.getYoutubeToolSet = getYoutubeToolSet; exports.getSlidesToolSet = getSlidesToolSet; exports.getSheetsToolSet = getSheetsToolSet; exports.getDocsToolSet = getDocsToolSet; const GoogleApiToolSet_1 = require("./GoogleApiToolSet"); /** * This module provides access to GoogleApiToolSet instances for various Google APIs. * Each tool set is loaded lazily when first requested to avoid unnecessary initialization. */ // Tool set instances and promises let _bigqueryToolSet = null; let _calendarToolSet = null; let _gmailToolSet = null; let _youtubeToolSet = null; let _slidesToolSet = null; let _sheetsToolSet = null; let _docsToolSet = null; // Loading promises let _bigqueryToolSetPromise = null; let _calendarToolSetPromise = null; let _gmailToolSetPromise = null; let _youtubeToolSetPromise = null; let _slidesToolSetPromise = null; let _sheetsToolSetPromise = null; let _docsToolSetPromise = null; /** * Get the BigQuery tool set * @returns A promise that resolves to the BigQuery tool set */ async function getBigqueryToolSet() { if (_bigqueryToolSet === null) { if (_bigqueryToolSetPromise === null) { _bigqueryToolSetPromise = GoogleApiToolSet_1.GoogleApiToolSet.loadToolSet('bigquery', 'v2'); _bigqueryToolSet = await _bigqueryToolSetPromise; } else { _bigqueryToolSet = await _bigqueryToolSetPromise; } } return _bigqueryToolSet; } /** * Get the Calendar tool set * @returns A promise that resolves to the Calendar tool set */ async function getCalendarToolSet() { if (_calendarToolSet === null) { if (_calendarToolSetPromise === null) { _calendarToolSetPromise = GoogleApiToolSet_1.GoogleApiToolSet.loadToolSet('calendar', 'v3'); _calendarToolSet = await _calendarToolSetPromise; } else { _calendarToolSet = await _calendarToolSetPromise; } } return _calendarToolSet; } /** * Get the Gmail tool set * @returns A promise that resolves to the Gmail tool set */ async function getGmailToolSet() { if (_gmailToolSet === null) { if (_gmailToolSetPromise === null) { _gmailToolSetPromise = GoogleApiToolSet_1.GoogleApiToolSet.loadToolSet('gmail', 'v1'); _gmailToolSet = await _gmailToolSetPromise; } else { _gmailToolSet = await _gmailToolSetPromise; } } return _gmailToolSet; } /** * Get the YouTube tool set * @returns A promise that resolves to the YouTube tool set */ async function getYoutubeToolSet() { if (_youtubeToolSet === null) { if (_youtubeToolSetPromise === null) { _youtubeToolSetPromise = GoogleApiToolSet_1.GoogleApiToolSet.loadToolSet('youtube', 'v3'); _youtubeToolSet = await _youtubeToolSetPromise; } else { _youtubeToolSet = await _youtubeToolSetPromise; } } return _youtubeToolSet; } /** * Get the Slides tool set * @returns A promise that resolves to the Slides tool set */ async function getSlidesToolSet() { if (_slidesToolSet === null) { if (_slidesToolSetPromise === null) { _slidesToolSetPromise = GoogleApiToolSet_1.GoogleApiToolSet.loadToolSet('slides', 'v1'); _slidesToolSet = await _slidesToolSetPromise; } else { _slidesToolSet = await _slidesToolSetPromise; } } return _slidesToolSet; } /** * Get the Sheets tool set * @returns A promise that resolves to the Sheets tool set */ async function getSheetsToolSet() { if (_sheetsToolSet === null) { if (_sheetsToolSetPromise === null) { _sheetsToolSetPromise = GoogleApiToolSet_1.GoogleApiToolSet.loadToolSet('sheets', 'v4'); _sheetsToolSet = await _sheetsToolSetPromise; } else { _sheetsToolSet = await _sheetsToolSetPromise; } } return _sheetsToolSet; } /** * Get the Docs tool set * @returns A promise that resolves to the Docs tool set */ async function getDocsToolSet() { if (_docsToolSet === null) { if (_docsToolSetPromise === null) { _docsToolSetPromise = GoogleApiToolSet_1.GoogleApiToolSet.loadToolSet('docs', 'v1'); _docsToolSet = await _docsToolSetPromise; } else { _docsToolSet = await _docsToolSetPromise; } } return _docsToolSet; }