@types/google-apps-script "December 13, 2018" update (#31702)

* GAS "December 13, 2018" update

* Update google-apps-script.forms.d.ts

* add data-studio, rename card-service, order as per ref page
This commit is contained in:
PopGoesTheWza
2018-12-31 07:53:27 -08:00
committed by Wesley Wigham
parent e5193ae9cf
commit 6043c9f4bb
12 changed files with 671 additions and 48 deletions
+12 -6
View File
@@ -1,4 +1,4 @@
// Type definitions for Google Apps Script 2018-07-11
// Type definitions for Google Apps Script 2018-12-26
// Project: https://developers.google.com/apps-script/
// Definitions by: motemen <https://github.com/motemen/>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
@@ -7,7 +7,7 @@
declare namespace GoogleAppsScript {
export module Base {
/**
/**
* A data interchange object for Apps Script services.
*/
export interface Blob {
@@ -74,9 +74,10 @@ declare namespace GoogleAppsScript {
}
/**
* This class provides access to G Suite specific dialog boxes.
* This class provides access to dialog boxes specific to Google Sheets.
*
* The methods in this class are only available for use in the context of a Google Spreadsheet.
* Please use G Suite dialogs instead.
* See also
*
* ButtonSet
@@ -163,9 +164,9 @@ declare namespace GoogleAppsScript {
/**
* An enumeration that provides access to MIME-type declarations without typing the strings
* explicitly. Any method that expects a MIME type rendered as a string (for example,
* 'image/png') will also accept one of the values below, so long as the method
* supports the underlying MIME type.
* explicitly. Methods that expect a MIME type rendered as a string (for example,
* 'image/png') also accept any of the values below, so long as the method supports the
* underlying MIME type.
*
* // Use MimeType enum to log the name of every Google Doc in the user's Drive.
* var docs = DriveApp.getFilesByType(MimeType.GOOGLE_DOCS);
@@ -305,11 +306,15 @@ declare namespace GoogleAppsScript {
* }
*/
export interface console {
error(): void;
error(formatOrObject: Object, ...values: Object[]): void;
info(): void;
info(formatOrObject: Object, ...values: Object[]): void;
log(): void;
log(formatOrObject: Object, ...values: Object[]): void;
time(label: string): void;
timeEnd(label: string): void;
warn(): void;
warn(formatOrObject: Object, ...values: Object[]): void;
}
@@ -321,3 +326,4 @@ declare var Logger: GoogleAppsScript.Base.Logger;
// conflicts with MimeType in lib.d.ts
// declare var MimeType: GoogleAppsScript.Base.MimeType;
declare var Session: GoogleAppsScript.Base.Session;
declare var console: GoogleAppsScript.Base.console;
@@ -1,4 +1,4 @@
// Type definitions for Google Apps Script 2018-07-11
// Type definitions for Google Apps Script 2018-12-26
// Project: https://developers.google.com/apps-script/
// Definitions by: motemen <https://github.com/motemen/>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
@@ -7,7 +7,7 @@
/// <reference path="google-apps-script.gmail.d.ts" />
declare namespace GoogleAppsScript {
export module Card {
export module Card_Service {
/**
* An action that enables interactivity within UI elements. The action does not happen directly on
* the client but rather invokes an Apps Script callback function with optional parameters.
@@ -37,7 +37,7 @@ declare namespace GoogleAppsScript {
* // An action that shows a notification.
* var actionResponse = CardService.newActionResponseBuilder()
* .setNotification(CardService.newNotification()
* .setType(CardService.Notification.INFO)
* .setType(CardService.NotificationType.INFO)
* .setText("Some info to display to user"))
* .build();
*
@@ -251,6 +251,7 @@ declare namespace GoogleAppsScript {
*/
export interface CardService {
ComposedEmailType: typeof ComposedEmailType;
ContentType: typeof ContentType;
Icon: typeof Icon;
ImageStyle: typeof ImageStyle;
LoadIndicator: typeof LoadIndicator;
@@ -258,6 +259,8 @@ declare namespace GoogleAppsScript {
OnClose: typeof OnClose;
OpenAs: typeof OpenAs;
SelectionInputType: typeof SelectionInputType;
TextButtonStyle: typeof TextButtonStyle;
UpdateDraftBodyType: typeof UpdateDraftBodyType;
newAction(): Action;
newActionResponseBuilder(): ActionResponseBuilder;
newAuthorizationAction(): AuthorizationAction;
@@ -282,11 +285,18 @@ declare namespace GoogleAppsScript {
newTextInput(): TextInput;
newTextParagraph(): TextParagraph;
newUniversalActionResponseBuilder(): UniversalActionResponseBuilder;
newUpdateDraftActionResponseBuilder(): UpdateDraftActionResponseBuilder;
newUpdateDraftBodyAction(): UpdateDraftBodyAction;
}
/**
* The response object that may be returned from a callback method for compose action in a Gmail add-on.
*
* Note: This object isn't related to compose actions that are
* used to extend the compose UI. Rather,
* this object is a response to an Action that composes draft messages when a specific UI element is
* selected.
*
* var composeActionResponse = CardService.newComposeActionResponseBuilder()
* .setGmailDraft(GmailApp.createDraft("recipient", "subject", "body"))
* .build();
@@ -297,6 +307,11 @@ declare namespace GoogleAppsScript {
/**
* A builder for ComposeActionResponse objects.
*
* Note: This object isn't related to compose actions that are
* used to extend the compose UI. Rather,
* this builder creates responses to an Action that composes draft messages when a specific
* UI element is selected.
*/
export interface ComposeActionResponseBuilder {
build(): ComposeActionResponse;
@@ -308,6 +323,11 @@ declare namespace GoogleAppsScript {
*/
export enum ComposedEmailType { REPLY_AS_DRAFT, STANDALONE_DRAFT }
/**
* An enum value that specifies the content type of the content generated by a UpdateDraftActionResponse.
*/
export enum ContentType { TEXT, MUTABLE_HTML, IMMUTABLE_HTML }
/**
* Predefined icons that can be used in various UI objects, such as ImageButton or KeyValue widgets.
*/
@@ -579,13 +599,25 @@ declare namespace GoogleAppsScript {
*/
export interface TextButton {
setAuthorizationAction(action: AuthorizationAction): TextButton;
setBackgroundColor(backgroundColor: string): TextButton;
setComposeAction(action: Action, composedEmailType: ComposedEmailType): TextButton;
setDisabled(disabled: boolean): TextButton;
setOnClickAction(action: Action): TextButton;
setOnClickOpenLinkAction(action: Action): TextButton;
setOpenLink(openLink: OpenLink): TextButton;
setText(text: string): TextButton;
setTextButtonStyle(textButtonStyle: TextButtonStyle): TextButton;
}
/**
* An enum that specifies the style for TextButton.
*
* TEXT is the default; it renders a simple text button with clear background.
* FILLED buttons have a background color you can set with
* TextButton.setBackgroundColor(backgroundColor).
*/
export enum TextButtonStyle { TEXT, FILLED }
/**
* A input field widget that accepts text input.
*
@@ -648,6 +680,67 @@ declare namespace GoogleAppsScript {
setOpenLink(openLink: OpenLink): UniversalActionResponseBuilder;
}
/**
* Represents an action that updates the email draft that the user is currently editing.
*
* // A UpdateDraftActionResponse that inserts non-editable content (a link in this case) into an
* // email draft.
* var updateDraftActionResponse = CardService.newUpdateDraftActionResponseBuilder()
* .setUpdateDraftBodyAction(CardService.newUpdateDraftBodyAction()
* .addUpdateContent(
* "<a href=\"https://www.google.com\">Google</a>",
* ContentType.IMMUTABLE_HTML)
* .setUpdateType(UpdateDraftBodyType.IN_PLACE_INSERT))
* .build();
*
* // A UpdateDraftActionResponse that inserts a link into an email draft. The added content can be
* // edited further.
* var updateDraftActionResponse = CardService.newUpdateDraftActionResponseBuilder()
* .setUpdateDraftBodyAction(CardService.newUpdateDraftBodyAction()
* .addUpdateContent(
* "<a href=\"https://www.google.com\">Google</a>",
* ContentType.MUTABLE_HTML)
* .setUpdateType(UpdateDraftBodyType.IN_PLACE_INSERT))
* .build();
*
* // A UpdateDraftActionResponse that inserts multiple values of different types.
* // The example action response inserts two lines next to each other in the email
* // draft, at the cursor position. Each line contains the content added by
* // {@link UpdateDraftActionResponseBuilder#addUpdateContent}.
* var updateDraftActionResponse = CardService.newUpdateDraftActionResponseBuilder()
* .setUpdateDraftBodyAction(CardService.newUpdateDraftBodyAction()
* .addUpdateContent(
* "<a href=\"https://www.google.com\">Google</a>",
* ContentType.MUTABLE_HTML)
* .addUpdateContent("Above is a google link.", ContentType.PLAIN_TEXT)
* .setUpdateType(UpdateDraftBodyType.IN_PLACE_INSERT))
* .build();
*/
export interface UpdateDraftActionResponse {
printJson(): string;
}
/**
* A builder for UpdateDraftActionResponse objects.
*/
export interface UpdateDraftActionResponseBuilder {
build(): UpdateDraftActionResponse;
setUpdateDraftBodyAction(updateDraftBodyAction: UpdateDraftBodyAction): UpdateDraftActionResponseBuilder;
}
/**
* Represents an action that updates the email draft body.
*/
export interface UpdateDraftBodyAction {
addUpdateContent(content: string, contentType: ContentType): UpdateDraftBodyAction;
setUpdateType(updateType: UpdateDraftBodyType): UpdateDraftBodyAction;
}
/**
* An enum value that specifies the type of an UpdateDraftBodyAction.
*/
export enum UpdateDraftBodyType { IN_PLACE_INSERT }
/**
* Base class for all widgets that can be added to a Card.
*/
@@ -657,4 +750,4 @@ declare namespace GoogleAppsScript {
}
}
declare var CardService: GoogleAppsScript.Card.CardService;
declare var CardService: GoogleAppsScript.Card_Service.CardService;
+13 -5
View File
@@ -1,4 +1,4 @@
// Type definitions for Google Apps Script 2018-07-11
// Type definitions for Google Apps Script 2018-12-26
// Project: https://developers.google.com/apps-script/
// Definitions by: motemen <https://github.com/motemen/>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
@@ -536,7 +536,7 @@ declare namespace GoogleAppsScript {
* function doGet() {
* // This example creates two table charts side by side. One uses a data view definition to
* // restrict the number of displayed columns.
* var app = UiApp.createApplication();
*
* // Get sample data from a spreadsheet.
* var dataSourceUrl = 'https://docs.google.com/spreadsheet/tq?range=A1%3AF' +
* '&key=0Aq4s9w_HxMs7dHpfX05JdmVSb1FpT21sbXd4NVE3UEE&gid=4&headers=-1';
@@ -555,9 +555,17 @@ declare namespace GoogleAppsScript {
* .setDataViewDefinition(dataViewDefinition)
* .build();
*
* var panel = app.createHorizontalPanel().setSpacing(15);
* panel.add(originalChart).add(limitedChart);
* return app.add(panel);
* var htmlOutput = HtmlService.createHtmlOutput();
* var originalChartData = Utilities.base64Encode(originalChart.getAs('image/png').getBytes());
* var originalChartUrl = "data:image/png;base64," + encodeURI(originalChartData);
* var limitedChartData = Utilities.base64Encode(limitedChart.getAs('image/png').getBytes());
* var limitedChartUrl = "data:image/png;base64," + encodeURI(limitedChartData);
* htmlOutput.append("<table><tr><td>");
* htmlOutput.append("<img border=\"1\" src=\"" + originalChartUrl + "\">");
* htmlOutput.append("</td><td>");
* htmlOutput.append("<img border=\"1\" src=\"" + limitedChartUrl + "\">");
* htmlOutput.append("</td></tr></table>");
* return htmlOutput;
* }
*/
export interface DataViewDefinitionBuilder {
@@ -0,0 +1,301 @@
// Type definitions for Google Apps Script 2018-12-26
// Project: https://developers.google.com/apps-script/
// Definitions by: motemen <https://github.com/motemen/>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
/// <reference path="google-apps-script.types.d.ts" />
declare namespace GoogleAppsScript {
export module Data_Studio {
/**
* An enum that defines the aggregation types that can be set for a Field.
*/
export enum AggregationType { NO_AGGREGATION, AVG, COUNT, COUNT_DISTINCT, MAX, MIN, SUM }
/**
* Contains checkbox information for the config. Its properties determine how the checkbox is
* displayed in Data Studio.
*
* var checkbox = config.newCheckbox()
* .setId("use_https")
* .setName("Use Https?")
* .setHelpText("Whether or not https should be used.")
* .setAllowOverride(true);
*/
export interface Checkbox {
setAllowOverride(allowOverride: boolean): Checkbox;
setHelpText(helpText: string): Checkbox;
setId(id: string): Checkbox;
setName(name: string): Checkbox;
}
/**
* CommunityConnector enables scripts to access builders and utilities to help with development of
* Community Connectors for Data Studio. Use this class to get a reference to the Fields
* object and the FieldType and AggregationType enums so they can be used in the
* construction of Fields.
*
* var cc = DataStudioApp.createCommunityConnector();
* var fieldType = cc.FieldType;
* var aggregationType = cc.AggregationType;
*
* var fields = cc.getFields();
*
* fields.newMetric()
* .setAggregation(aggregationType.AVG)
* .setFieldType(fieldType.CURRENCY_USD);
*/
export interface CommunityConnector {
AggregationType: typeof AggregationType;
FieldType: typeof FieldType;
getConfig(): Config;
getFields(): Fields;
}
/**
* Contains the configuration entries for a connector. These configuration entries define what
* questions are asked when adding a new connector.
*
* var cc = DataStudioApp.createCommunityConnector();
* var config = cc.getConfig();
*
* var info_entry = config.newInfo()
* .setId("info_id")
* .setHelpText("This connector can connect to multiple data endpoints.");
*/
export interface Config {
build(): Object;
newCheckbox(): Checkbox;
newInfo(): Info;
newOptionBuilder(): OptionBuilder;
newSelectMultiple(): SelectMultiple;
newSelectSingle(): SelectSingle;
newTextArea(): TextArea;
newTextInput(): TextInput;
printJson(): string;
setDateRangeRequired(dateRangeRequired: boolean): Config;
}
/**
* DataStudioApp allows scripts to interact with developer-oriented features for Data Studio.
*/
export interface DataStudioApp {
createCommunityConnector(): CommunityConnector;
}
/**
* Contains field-related data. Its properties determine how the field is used in Data Studio.
*
* var cc = DataStudioApp.createCommunityConnector();
* var fields = cc.getFields();
* var types = cc.FieldType;
*
* var field1 = fields.newDimension()
* .setId('field1_id')
* .setName('Field 1 ID')
* .setDescription('The first field.')
* .setType(types.YEAR_MONTH)
* .setGroup('DATETIME');
*/
export interface Field {
getAggregation(): AggregationType;
getDescription(): string;
getFormula(): string;
getGroup(): string;
getId(): string;
getName(): string;
getType(): FieldType;
isDefault(): boolean;
isDimension(): boolean;
isHidden(): boolean;
isMetric(): boolean;
setAggregation(aggregation: AggregationType): Field;
setDescription(description: string): Field;
setFormula(formula: string): Field;
setGroup(group: string): Field;
setId(id: string): Field;
setIsHidden(isHidden: boolean): Field;
setName(name: string): Field;
setType(type: FieldType): Field;
}
/**
* An enum that defines the types that can be set for a Field.
*/
export enum FieldType { YEAR, YEAR_QUARTER, YEAR_MONTH, YEAR_WEEK, YEAR_MONTH_DAY, YEAR_MONTH_DAY_HOUR, QUARTER, MONTH, WEEK, MONTH_DAY, DAY_OF_WEEK, DAY, HOUR, MINUTE, DURATION, COUNTRY, COUNTRY_CODE, CONTINENT, CONTINENT_CODE, SUB_CONTINENT, SUB_CONTINENT_CODE, REGION, REGION_CODE, CITY, CITY_CODE, METRO, METRO_CODE, LATITUDE_LONGITUDE, NUMBER, PERCENT, TEXT, BOOLEAN, URL, CURRENCY_AED, CURRENCY_ALL, CURRENCY_ARS, CURRENCY_AUD, CURRENCY_BDT, CURRENCY_BGN, CURRENCY_BOB, CURRENCY_BRL, CURRENCY_CAD, CURRENCY_CDF, CURRENCY_CHF, CURRENCY_CLP, CURRENCY_CNY, CURRENCY_COP, CURRENCY_CRC, CURRENCY_CZK, CURRENCY_DKK, CURRENCY_DOP, CURRENCY_EGP, CURRENCY_ETB, CURRENCY_EUR, CURRENCY_GBP, CURRENCY_HKD, CURRENCY_HRK, CURRENCY_HUF, CURRENCY_IDR, CURRENCY_ILS, CURRENCY_INR, CURRENCY_IRR, CURRENCY_ISK, CURRENCY_JMD, CURRENCY_JPY, CURRENCY_KRW, CURRENCY_LKR, CURRENCY_LTL, CURRENCY_MNT, CURRENCY_MVR, CURRENCY_MXN, CURRENCY_MYR, CURRENCY_NOK, CURRENCY_NZD, CURRENCY_PAB, CURRENCY_PEN, CURRENCY_PHP, CURRENCY_PKR, CURRENCY_PLN, CURRENCY_RON, CURRENCY_RSD, CURRENCY_RUB, CURRENCY_SAR, CURRENCY_SEK, CURRENCY_SGD, CURRENCY_THB, CURRENCY_TRY, CURRENCY_TWD, CURRENCY_TZS, CURRENCY_UAH, CURRENCY_USD, CURRENCY_UYU, CURRENCY_VEF, CURRENCY_VND, CURRENCY_YER, CURRENCY_ZAR }
/**
* Contains a set of Fields for a community connector. This set of fields define which
* dimensions and metrics can be used in Data Studio.
*
* var cc = DataStudioApp.createCommunityConnector();
* var fields = cc.getFields();
* var types = cc.FieldType;
*
* var field1 = fields.newDimension()
* // Set other properties as needed.
* .setId('field1_id');
*/
export interface Fields {
asArray(): Field[];
build(): Object[];
forIds(ids: string[]): Fields;
getDefaultDimension(): Field;
getDefaultMetric(): Field;
getFieldById(fieldId: string): Field;
newDimension(): Field;
newMetric(): Field;
setDefaultDimension(fieldId: string): void;
setDefaultMetric(fieldId: string): void;
}
/**
* Contains info data for the config. Its properties determine how the info is displayed in Data
* Studio.
*
* var cc = DataStudioApp.createCommunityConnector();
* var config = cc.getConfig();
*
* var info1 = config.newInfo()
* .setName("info1")
* .setText("This text gives some context on the configuration.");
*/
export interface Info {
setId(id: string): Info;
setText(text: string): Info;
}
/**
* A builder for creating options for SelectSingles and SelectMultiples.
*
* var cc = DataStudioApp.createCommunityConnector();
* var config = cc.getConfig();
*
* var option1 = config.newOptionBuilder()
* .setLabel("option label")
* .setValue("option_value");
*
* var option2 = config.newOptionBuilder()
* .setLabel("second option label")
* .setValue("option_value_2");
*
* var info1 = config.newSelectSingle()
* .setId("api_endpoint")
* .setName("Data Type")
* .setHelpText("Select the data type you're interested in.")
* .addOption(option1)
* .addOption(option2);
*/
export interface OptionBuilder {
setLabel(label: string): OptionBuilder;
setValue(value: string): OptionBuilder;
}
/**
* Contains select multiple information for the config. Its properties determine how the select
* multiple is displayed in Data Studio.
*
* Usage:
*
* var option1 = config.newOptionBuilder()
* .setLabel("option label")
* .setValue("option_value");
*
* var option2 = config.newOptionBuilder()
* .setLabel("second option label")
* .setValue("option_value_2");
*
* var info1 = config.newSelectMultiple()
* .setId("api_endpoint")
* .setName("Data Type")
* .setHelpText("Select the data type you're interested in.")
* .setAllowOverride(true)
* .addOption(option1)
* .addOption(option2);
*/
export interface SelectMultiple {
addOption(optionBuilder: OptionBuilder): SelectMultiple;
setAllowOverride(allowOverride: boolean): SelectMultiple;
setHelpText(helpText: string): SelectMultiple;
setId(id: string): SelectMultiple;
setName(name: string): SelectMultiple;
}
/**
* Contains select single information for the config. Its properties determine how the select single
* is displayed in Data Studio.
*
* var option1 = config.newOptionBuilder()
* .setLabel("option label")
* .setValue("option_value");
*
* var option2 = config.newOptionBuilder()
* .setLabel("second option label")
* .setValue("option_value_2");
*
* var info1 = config.newSelectMultiple()
* .setId("api_endpoint")
* .setName("Data Type")
* .setHelpText("Select the data type you're interested in.")
* .setAllowOverride(true)
* .addOption(option1)
* .addOption(option2);
*/
export interface SelectSingle {
addOption(optionBuilder: OptionBuilder): SelectSingle;
setAllowOverride(allowOverride: boolean): SelectSingle;
setHelpText(helpText: string): SelectSingle;
setId(id: string): SelectSingle;
setName(name: string): SelectSingle;
}
/**
* Contains text area information for the config. Its properties determine how the text input is
* displayed in Data Studio.
*
* Usage:
*
* var cc = DataStudioApp.createCommunityConnector();
* var config = cc.getConfig();
*
* var textArea1 = config.newTextArea()
* .setId("textArea1")
* .setName("Search")
* .setHelpText("for example, Coldplay")
* .setAllowOverride(true)
* .setPlaceholder("Search for an artist for all songs.");
*/
export interface TextArea {
setAllowOverride(allowOverride: boolean): TextArea;
setHelpText(helpText: string): TextArea;
setId(id: string): TextArea;
setName(name: string): TextArea;
setPlaceholder(placeholder: string): TextArea;
}
/**
* Contains text input information for the config. Its properties determine how the text input is
* displayed in Data Studio.
*
* var cc = DataStudioApp.createCommunityConnector();
* var config = cc.getConfig();
*
* var info1 = config.newTextInput()
* .setId("info1")
* .setName("Search")
* .setHelpText("for example, Coldplay")
* .setAllowOverride(true)
* .setPlaceholder("Search for an artist for all songs.");
*/
export interface TextInput {
setAllowOverride(allowOverride: boolean): TextInput;
setHelpText(helpText: string): TextInput;
setId(id: string): TextInput;
setName(name: string): TextInput;
setPlaceholder(placeholder: string): TextInput;
}
}
}
declare var DataStudioApp: GoogleAppsScript.Data_Studio.DataStudioApp;
+2 -2
View File
@@ -1,4 +1,4 @@
// Type definitions for Google Apps Script 2018-07-11
// Type definitions for Google Apps Script 2018-12-26
// Project: https://developers.google.com/apps-script/
// Definitions by: motemen <https://github.com/motemen/>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
@@ -671,7 +671,7 @@ declare namespace GoogleAppsScript {
* item.setHelpText('Description of new section.');
* }
*/
export enum ItemType { CHECKBOX, CHECKBOX_GRID, DATE, DATETIME, DURATION, GRID, IMAGE, LIST, MULTIPLE_CHOICE, PAGE_BREAK, PARAGRAPH_TEXT, SCALE, SECTION_HEADER, TEXT, TIME }
export enum ItemType { CHECKBOX, CHECKBOX_GRID, DATE, DATETIME, DURATION, GRID, IMAGE, LIST, MULTIPLE_CHOICE, PAGE_BREAK, PARAGRAPH_TEXT, SCALE, SECTION_HEADER, TEXT, TIME, VIDEO }
/**
* A question item that allows the respondent to select one choice from a drop-down list. Items can
+2 -1
View File
@@ -1,4 +1,4 @@
// Type definitions for Google Apps Script 2018-07-11
// Type definitions for Google Apps Script 2018-12-26
// Project: https://developers.google.com/apps-script/
// Definitions by: motemen <https://github.com/motemen/>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
@@ -103,6 +103,7 @@ declare namespace GoogleAppsScript {
getContentType(): string;
getDataAsString(): string;
getDataAsString(charset: string): string;
getHash(): string;
getName(): string;
getSize(): Integer;
isGoogleType(): boolean;
+4 -4
View File
@@ -1,4 +1,4 @@
// Type definitions for Google Apps Script 2018-07-11
// Type definitions for Google Apps Script 2018-12-26
// Project: https://developers.google.com/apps-script/
// Definitions by: motemen <https://github.com/motemen/>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
@@ -16,13 +16,13 @@ declare namespace GoogleAppsScript {
*
* function listGroupMembers() {
* var group = GroupsApp.getGroupByEmail("example@googlegroups.com");
* var s = group.getEmail() + ': ';
* var str = group.getEmail() + ': ';
* var users = group.getUsers();
* for (var i = 0; i < users.length; i++) {
* var user = users[i];
* s = s + user.getEmail() + ", ";
* str = str + user.getEmail() + ", ";
* }
* Logger.log(s);
* Logger.log(str);
* }
*/
export interface Group {
+3 -3
View File
@@ -1,4 +1,4 @@
// Type definitions for Google Apps Script 2018-07-11
// Type definitions for Google Apps Script 2018-12-26
// Project: https://developers.google.com/apps-script/
// Definitions by: motemen <https://github.com/motemen/>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
@@ -15,8 +15,8 @@ declare namespace GoogleAppsScript {
* An enumeration that identifies which categories of authorized services Apps Script is able to
* execute through a triggered function. These values are exposed in triggered functions as the authMode
* property of the event parameter, e. For
* more information, see the guide to the authorization
* lifecycle for add-ons.
* more information, see the guide to the
* authorization lifecycle for add-ons.
*
* function onOpen(e) {
* var menu = SpreadsheetApp.getUi().createAddonMenu();
+93 -4
View File
@@ -1,4 +1,4 @@
// Type definitions for Google Apps Script 2018-07-11
// Type definitions for Google Apps Script 2018-12-26
// Project: https://developers.google.com/apps-script/
// Definitions by: motemen <https://github.com/motemen/>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
@@ -125,6 +125,14 @@ declare namespace GoogleAppsScript {
*/
export enum ColorType { UNSUPPORTED, RGB, THEME }
/**
* The connection site on a PageElement that can connect to a connector.
*/
export interface ConnectionSite {
getIndex(): Integer;
getPageElement(): PageElement;
}
/**
* The content alignments for a Shape or TableCell. The supported alignments
* correspond to predefined text anchoring types from the ECMA-376 standard.
@@ -172,8 +180,11 @@ declare namespace GoogleAppsScript {
*/
export interface Group {
alignOnPage(alignmentPosition: AlignmentPosition): Group;
bringForward(): Group;
bringToFront(): Group;
duplicate(): PageElement;
getChildren(): PageElement[];
getConnectionSites(): ConnectionSite[];
getDescription(): string;
getHeight(): Number;
getInherentHeight(): Number;
@@ -194,9 +205,13 @@ declare namespace GoogleAppsScript {
scaleWidth(ratio: Number): Group;
select(): void;
select(replace: boolean): void;
sendBackward(): Group;
sendToBack(): Group;
setDescription(description: string): Group;
setHeight(height: Number): Group;
setLeft(left: Number): Group;
setRotation(angle: Number): Group;
setTitle(title: string): Group;
setTop(top: Number): Group;
setTransform(transform: AffineTransform): Group;
setWidth(width: Number): Group;
@@ -208,10 +223,13 @@ declare namespace GoogleAppsScript {
*/
export interface Image {
alignOnPage(alignmentPosition: AlignmentPosition): Image;
bringForward(): Image;
bringToFront(): Image;
duplicate(): PageElement;
getAs(contentType: string): Base.Blob;
getBlob(): Base.Blob;
getBorder(): Border;
getConnectionSites(): ConnectionSite[];
getContentUrl(): string;
getDescription(): string;
getHeight(): Number;
@@ -240,6 +258,9 @@ declare namespace GoogleAppsScript {
scaleWidth(ratio: Number): Image;
select(): void;
select(replace: boolean): void;
sendBackward(): Image;
sendToBack(): Image;
setDescription(description: string): Image;
setHeight(height: Number): Image;
setLeft(left: Number): Image;
setLinkSlide(slideIndex: Integer): Link;
@@ -247,6 +268,7 @@ declare namespace GoogleAppsScript {
setLinkSlide(slidePosition: SlidePosition): Link;
setLinkUrl(url: string): Link;
setRotation(angle: Number): Image;
setTitle(title: string): Image;
setTop(top: Number): Image;
setTransform(transform: AffineTransform): Image;
setWidth(width: Number): Image;
@@ -267,6 +289,7 @@ declare namespace GoogleAppsScript {
getLines(): Line[];
getMaster(): Master;
getObjectId(): string;
getPageElementById(id: string): PageElement;
getPageElements(): PageElement[];
getPageType(): PageType;
getPlaceholder(placeholderType: PlaceholderType): PageElement;
@@ -285,6 +308,7 @@ declare namespace GoogleAppsScript {
insertImage(imageUrl: string): Image;
insertImage(imageUrl: string, left: Number, top: Number, width: Number, height: Number): Image;
insertLine(line: Line): Line;
insertLine(lineCategory: LineCategory, startConnectionSite: ConnectionSite, endConnectionSite: ConnectionSite): Line;
insertLine(lineCategory: LineCategory, startLeft: Number, startTop: Number, endLeft: Number, endTop: Number): Line;
insertPageElement(pageElement: PageElement): PageElement;
insertShape(shape: Shape): Shape;
@@ -313,15 +337,20 @@ declare namespace GoogleAppsScript {
*/
export interface Line {
alignOnPage(alignmentPosition: AlignmentPosition): Line;
bringForward(): Line;
bringToFront(): Line;
duplicate(): PageElement;
getConnectionSites(): ConnectionSite[];
getDashStyle(): DashStyle;
getDescription(): string;
getEnd(): Point;
getEndArrow(): ArrowStyle;
getEndConnection(): ConnectionSite;
getHeight(): Number;
getInherentHeight(): Number;
getInherentWidth(): Number;
getLeft(): Number;
getLineCategory(): LineCategory;
getLineFill(): LineFill;
getLineType(): LineType;
getLink(): Link;
@@ -332,24 +361,32 @@ declare namespace GoogleAppsScript {
getRotation(): Number;
getStart(): Point;
getStartArrow(): ArrowStyle;
getStartConnection(): ConnectionSite;
getTitle(): string;
getTop(): Number;
getTransform(): AffineTransform;
getWeight(): Number;
getWidth(): Number;
isConnector(): boolean;
preconcatenateTransform(transform: AffineTransform): Line;
remove(): void;
removeLink(): void;
reroute(): Line;
scaleHeight(ratio: Number): Line;
scaleWidth(ratio: Number): Line;
select(): void;
select(replace: boolean): void;
sendBackward(): Line;
sendToBack(): Line;
setDashStyle(style: DashStyle): Line;
setDescription(description: string): Line;
setEnd(left: Number, top: Number): Line;
setEnd(point: Point): Line;
setEndArrow(style: ArrowStyle): Line;
setEndConnection(connectionSite: ConnectionSite): Line;
setHeight(height: Number): Line;
setLeft(left: Number): Line;
setLineCategory(lineCategory: LineCategory): Line;
setLinkSlide(slideIndex: Integer): Link;
setLinkSlide(slide: Slide): Link;
setLinkSlide(slidePosition: SlidePosition): Link;
@@ -358,6 +395,8 @@ declare namespace GoogleAppsScript {
setStart(left: Number, top: Number): Line;
setStart(point: Point): Line;
setStartArrow(style: ArrowStyle): Line;
setStartConnection(connectionSite: ConnectionSite): Line;
setTitle(title: string): Line;
setTop(top: Number): Line;
setTransform(transform: AffineTransform): Line;
setWeight(points: Number): Line;
@@ -370,7 +409,7 @@ declare namespace GoogleAppsScript {
* The exact LineType created is determined based on the category and how it's routed to
* connect to other page elements.
*/
export enum LineCategory { STRAIGHT, BENT, CURVED }
export enum LineCategory { UNSUPPORTED, STRAIGHT, BENT, CURVED }
/**
* Describes the fill of a line or outline
@@ -504,6 +543,7 @@ declare namespace GoogleAppsScript {
getLayouts(): Layout[];
getLines(): Line[];
getObjectId(): string;
getPageElementById(id: string): PageElement;
getPageElements(): PageElement[];
getPageType(): PageType;
getPlaceholder(placeholderType: PlaceholderType): PageElement;
@@ -522,6 +562,7 @@ declare namespace GoogleAppsScript {
insertImage(imageUrl: string): Image;
insertImage(imageUrl: string, left: Number, top: Number, width: Number, height: Number): Image;
insertLine(line: Line): Line;
insertLine(lineCategory: LineCategory, startConnectionSite: ConnectionSite, endConnectionSite: ConnectionSite): Line;
insertLine(lineCategory: LineCategory, startLeft: Number, startTop: Number, endLeft: Number, endTop: Number): Line;
insertPageElement(pageElement: PageElement): PageElement;
insertShape(shape: Shape): Shape;
@@ -556,6 +597,7 @@ declare namespace GoogleAppsScript {
getImages(): Image[];
getLines(): Line[];
getObjectId(): string;
getPageElementById(id: string): PageElement;
getPageElements(): PageElement[];
getPlaceholder(placeholderType: PlaceholderType): PageElement;
getPlaceholder(placeholderType: PlaceholderType, placeholderIndex: Integer): PageElement;
@@ -579,6 +621,7 @@ declare namespace GoogleAppsScript {
getImages(): Image[];
getLines(): Line[];
getObjectId(): string;
getPageElementById(id: string): PageElement;
getPageElements(): PageElement[];
getPlaceholder(placeholderType: PlaceholderType): PageElement;
getPlaceholder(placeholderType: PlaceholderType, placeholderIndex: Integer): PageElement;
@@ -606,6 +649,7 @@ declare namespace GoogleAppsScript {
getImages(): Image[];
getLines(): Line[];
getObjectId(): string;
getPageElementById(id: string): PageElement;
getPageElements(): PageElement[];
getPageType(): PageType;
getPlaceholder(placeholderType: PlaceholderType): PageElement;
@@ -624,6 +668,7 @@ declare namespace GoogleAppsScript {
insertImage(imageUrl: string): Image;
insertImage(imageUrl: string, left: Number, top: Number, width: Number, height: Number): Image;
insertLine(line: Line): Line;
insertLine(lineCategory: LineCategory, startConnectionSite: ConnectionSite, endConnectionSite: ConnectionSite): Line;
insertLine(lineCategory: LineCategory, startLeft: Number, startTop: Number, endLeft: Number, endTop: Number): Line;
insertPageElement(pageElement: PageElement): PageElement;
insertShape(shape: Shape): Shape;
@@ -686,7 +731,10 @@ declare namespace GoogleAppsScript {
asTable(): Table;
asVideo(): Video;
asWordArt(): WordArt;
bringForward(): PageElement;
bringToFront(): PageElement;
duplicate(): PageElement;
getConnectionSites(): ConnectionSite[];
getDescription(): string;
getHeight(): Number;
getInherentHeight(): Number;
@@ -707,9 +755,13 @@ declare namespace GoogleAppsScript {
scaleWidth(ratio: Number): PageElement;
select(): void;
select(replace: boolean): void;
sendBackward(): PageElement;
sendToBack(): PageElement;
setDescription(description: string): PageElement;
setHeight(height: Number): PageElement;
setLeft(left: Number): PageElement;
setRotation(angle: Number): PageElement;
setTitle(title: string): PageElement;
setTop(top: Number): PageElement;
setTransform(transform: AffineTransform): PageElement;
setWidth(width: Number): PageElement;
@@ -836,11 +888,11 @@ declare namespace GoogleAppsScript {
getNotesMaster(): NotesMaster;
getNotesPageHeight(): Number;
getNotesPageWidth(): Number;
getPageElementById(id: string): PageElement;
getPageElementById(id: string): PageElement;
getPageHeight(): Number;
getPageWidth(): Number;
getSelection(): Selection;
getSlideById(id: string): Slide;
getSlideById(id: string): Slide;
getSlides(): Slide[];
getUrl(): string;
getViewers(): Base.User[];
@@ -903,8 +955,11 @@ declare namespace GoogleAppsScript {
*/
export interface Shape {
alignOnPage(alignmentPosition: AlignmentPosition): Shape;
bringForward(): Shape;
bringToFront(): Shape;
duplicate(): PageElement;
getBorder(): Border;
getConnectionSites(): ConnectionSite[];
getContentAlignment(): ContentAlignment;
getDescription(): string;
getFill(): Fill;
@@ -940,7 +995,10 @@ declare namespace GoogleAppsScript {
scaleWidth(ratio: Number): Shape;
select(): void;
select(replace: boolean): void;
sendBackward(): Shape;
sendToBack(): Shape;
setContentAlignment(contentAlignment: ContentAlignment): Shape;
setDescription(description: string): Shape;
setHeight(height: Number): Shape;
setLeft(left: Number): Shape;
setLinkSlide(slideIndex: Integer): Link;
@@ -948,6 +1006,7 @@ declare namespace GoogleAppsScript {
setLinkSlide(slidePosition: SlidePosition): Link;
setLinkUrl(url: string): Link;
setRotation(angle: Number): Shape;
setTitle(title: string): Shape;
setTop(top: Number): Shape;
setTransform(transform: AffineTransform): Shape;
setWidth(width: Number): Shape;
@@ -968,8 +1027,11 @@ declare namespace GoogleAppsScript {
export interface SheetsChart {
alignOnPage(alignmentPosition: AlignmentPosition): SheetsChart;
asImage(): Image;
bringForward(): SheetsChart;
bringToFront(): SheetsChart;
duplicate(): PageElement;
getChartId(): Integer;
getConnectionSites(): ConnectionSite[];
getDescription(): string;
getEmbedType(): SheetsChartEmbedType;
getHeight(): Number;
@@ -995,6 +1057,9 @@ declare namespace GoogleAppsScript {
scaleWidth(ratio: Number): SheetsChart;
select(): void;
select(replace: boolean): void;
sendBackward(): SheetsChart;
sendToBack(): SheetsChart;
setDescription(description: string): SheetsChart;
setHeight(height: Number): SheetsChart;
setLeft(left: Number): SheetsChart;
setLinkSlide(slideIndex: Integer): Link;
@@ -1002,6 +1067,7 @@ declare namespace GoogleAppsScript {
setLinkSlide(slidePosition: SlidePosition): Link;
setLinkUrl(url: string): Link;
setRotation(angle: Number): SheetsChart;
setTitle(title: string): SheetsChart;
setTop(top: Number): SheetsChart;
setTransform(transform: AffineTransform): SheetsChart;
setWidth(width: Number): SheetsChart;
@@ -1028,6 +1094,7 @@ declare namespace GoogleAppsScript {
getLines(): Line[];
getNotesPage(): NotesPage;
getObjectId(): string;
getPageElementById(id: string): PageElement;
getPageElements(): PageElement[];
getPageType(): PageType;
getPlaceholder(placeholderType: PlaceholderType): PageElement;
@@ -1046,6 +1113,7 @@ declare namespace GoogleAppsScript {
insertImage(imageUrl: string): Image;
insertImage(imageUrl: string, left: Number, top: Number, width: Number, height: Number): Image;
insertLine(line: Line): Line;
insertLine(lineCategory: LineCategory, startConnectionSite: ConnectionSite, endConnectionSite: ConnectionSite): Line;
insertLine(lineCategory: LineCategory, startLeft: Number, startTop: Number, endLeft: Number, endTop: Number): Line;
insertPageElement(pageElement: PageElement): PageElement;
insertShape(shape: Shape): Shape;
@@ -1144,9 +1212,12 @@ declare namespace GoogleAppsScript {
alignOnPage(alignmentPosition: AlignmentPosition): Table;
appendColumn(): TableColumn;
appendRow(): TableRow;
bringForward(): Table;
bringToFront(): Table;
duplicate(): PageElement;
getCell(rowIndex: Integer, columnIndex: Integer): TableCell;
getColumn(columnIndex: Integer): TableColumn;
getConnectionSites(): ConnectionSite[];
getDescription(): string;
getHeight(): Number;
getInherentHeight(): Number;
@@ -1172,9 +1243,13 @@ declare namespace GoogleAppsScript {
scaleWidth(ratio: Number): Table;
select(): void;
select(replace: boolean): void;
sendBackward(): Table;
sendToBack(): Table;
setDescription(description: string): Table;
setHeight(height: Number): Table;
setLeft(left: Number): Table;
setRotation(angle: Number): Table;
setTitle(title: string): Table;
setTop(top: Number): Table;
setTransform(transform: AffineTransform): Table;
setWidth(width: Number): Table;
@@ -1343,8 +1418,11 @@ declare namespace GoogleAppsScript {
*/
export interface Video {
alignOnPage(alignmentPosition: AlignmentPosition): Video;
bringForward(): Video;
bringToFront(): Video;
duplicate(): PageElement;
getBorder(): Border;
getConnectionSites(): ConnectionSite[];
getDescription(): string;
getHeight(): Number;
getInherentHeight(): Number;
@@ -1369,9 +1447,13 @@ declare namespace GoogleAppsScript {
scaleWidth(ratio: Number): Video;
select(): void;
select(replace: boolean): void;
sendBackward(): Video;
sendToBack(): Video;
setDescription(description: string): Video;
setHeight(height: Number): Video;
setLeft(left: Number): Video;
setRotation(angle: Number): Video;
setTitle(title: string): Video;
setTop(top: Number): Video;
setTransform(transform: AffineTransform): Video;
setWidth(width: Number): Video;
@@ -1387,7 +1469,10 @@ declare namespace GoogleAppsScript {
*/
export interface WordArt {
alignOnPage(alignmentPosition: AlignmentPosition): WordArt;
bringForward(): WordArt;
bringToFront(): WordArt;
duplicate(): PageElement;
getConnectionSites(): ConnectionSite[];
getDescription(): string;
getHeight(): Number;
getInherentHeight(): Number;
@@ -1411,6 +1496,9 @@ declare namespace GoogleAppsScript {
scaleWidth(ratio: Number): WordArt;
select(): void;
select(replace: boolean): void;
sendBackward(): WordArt;
sendToBack(): WordArt;
setDescription(description: string): WordArt;
setHeight(height: Number): WordArt;
setLeft(left: Number): WordArt;
setLinkSlide(slideIndex: Integer): Link;
@@ -1418,6 +1506,7 @@ declare namespace GoogleAppsScript {
setLinkSlide(slidePosition: SlidePosition): Link;
setLinkUrl(url: string): Link;
setRotation(angle: Number): WordArt;
setTitle(title: string): WordArt;
setTop(top: Number): WordArt;
setTransform(transform: AffineTransform): WordArt;
setWidth(width: Number): WordArt;
+124 -11
View File
@@ -1,4 +1,4 @@
// Type definitions for Google Apps Script 2018-07-11
// Type definitions for Google Apps Script 2018-12-26
// Project: https://developers.google.com/apps-script/
// Definitions by: motemen <https://github.com/motemen/>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
@@ -99,7 +99,7 @@ declare namespace GoogleAppsScript {
* var range = sheet.getRange("A1:B3");
* var rule = SpreadsheetApp.newConditionalFormatRule()
* .whenNumberBetween(1, 10)
* .setBackgroundColor("#FF0000")
* .setBackground("#FF0000")
* .setRanges([range])
* .build();
* var rules = sheet.getConditionalFormatRules();
@@ -268,6 +268,61 @@ declare namespace GoogleAppsScript {
*/
export enum DataValidationCriteria { DATE_AFTER, DATE_BEFORE, DATE_BETWEEN, DATE_EQUAL_TO, DATE_IS_VALID_DATE, DATE_NOT_BETWEEN, DATE_ON_OR_AFTER, DATE_ON_OR_BEFORE, NUMBER_BETWEEN, NUMBER_EQUAL_TO, NUMBER_GREATER_THAN, NUMBER_GREATER_THAN_OR_EQUAL_TO, NUMBER_LESS_THAN, NUMBER_LESS_THAN_OR_EQUAL_TO, NUMBER_NOT_BETWEEN, NUMBER_NOT_EQUAL_TO, TEXT_CONTAINS, TEXT_DOES_NOT_CONTAIN, TEXT_EQUAL_TO, TEXT_IS_VALID_EMAIL, TEXT_IS_VALID_URL, VALUE_IN_LIST, VALUE_IN_RANGE, CUSTOM_FORMULA, CHECKBOX }
/**
* Access and modify developer metadata. To create new developer metadata use Range.addDeveloperMetadata(key), Sheet.addDeveloperMetadata(key), or Spreadsheet.addDeveloperMetadata(key).
*/
export interface DeveloperMetadata {
getId(): Integer;
getKey(): string;
getLocation(): DeveloperMetadataLocation;
getValue(): string;
getVisibility(): DeveloperMetadataVisibility;
moveToColumn(column: Range): DeveloperMetadata;
moveToRow(row: Range): DeveloperMetadata;
moveToSheet(sheet: Sheet): DeveloperMetadata;
moveToSpreadsheet(): DeveloperMetadata;
remove(): void;
setKey(key: string): DeveloperMetadata;
setValue(value: string): DeveloperMetadata;
setVisibility(visibility: DeveloperMetadataVisibility): DeveloperMetadata;
}
/**
* Search for developer metadata in a spreadsheet. To create new developer metadata finder use
* Range.createDeveloperMetadataFinder(), Sheet.createDeveloperMetadataFinder(),
* or Spreadsheet.createDeveloperMetadataFinder().
*/
export interface DeveloperMetadataFinder {
find(): DeveloperMetadata[];
onIntersectingLocations(): DeveloperMetadataFinder;
withId(id: Integer): DeveloperMetadataFinder;
withKey(key: string): DeveloperMetadataFinder;
withLocationType(locationType: DeveloperMetadataLocationType): DeveloperMetadataFinder;
withValue(value: string): DeveloperMetadataFinder;
withVisibility(visibility: DeveloperMetadataVisibility): DeveloperMetadataFinder;
}
/**
* Access developer metadata location information.
*/
export interface DeveloperMetadataLocation {
getColumn(): Range;
getLocationType(): DeveloperMetadataLocationType;
getRow(): Range;
getSheet(): Sheet;
getSpreadsheet(): Spreadsheet;
}
/**
* An enumeration of the types of developer metadata location types.
*/
export enum DeveloperMetadataLocationType { SPREADSHEET, SHEET, ROW, COLUMN }
/**
* An enumeration of the types of developer metadata visibility.
*/
export enum DeveloperMetadataVisibility { DOCUMENT, PROJECT }
/**
* An enumeration of possible directions along which data can be stored in a spreadsheet.
*/
@@ -896,6 +951,36 @@ declare namespace GoogleAppsScript {
setRange(range: Range): NamedRange;
}
/**
* Represents an image over the grid in a spreadsheet.
*/
export interface OverGridImage {
assignScript(functionName: string): OverGridImage;
getAltTextDescription(): string;
getAltTextTitle(): string;
getAnchorCell(): Range;
getAnchorCellXOffset(): Integer;
getAnchorCellYOffset(): Integer;
getHeight(): Integer;
getInherentHeight(): Integer;
getInherentWidth(): Integer;
getScript(): string;
getSheet(): Sheet;
getUrl(): string;
getWidth(): Integer;
remove(): void;
replace(blob: Base.BlobSource): OverGridImage;
replace(url: string): OverGridImage;
resetSize(): OverGridImage;
setAltTextDescription(description: string): OverGridImage;
setAltTextTitle(title: string): OverGridImage;
setAnchorCell(cell: Range): OverGridImage;
setAnchorCellXOffset(offset: Integer): OverGridImage;
setAnchorCellYOffset(offset: Integer): OverGridImage;
setHeight(height: Integer): OverGridImage;
setWidth(width: Integer): OverGridImage;
}
/**
*
* Deprecated. For spreadsheets created in the newer version of Google Sheets, use the more powerful
@@ -1091,6 +1176,10 @@ declare namespace GoogleAppsScript {
export interface Range {
activate(): Range;
activateAsCurrentCell(): Range;
addDeveloperMetadata(key: string): Range;
addDeveloperMetadata(key: string, visibility: DeveloperMetadataVisibility): Range;
addDeveloperMetadata(key: string, value: string): Range;
addDeveloperMetadata(key: string, value: string, visibility: DeveloperMetadataVisibility): Range;
applyColumnBanding(): Banding;
applyColumnBanding(bandingTheme: BandingTheme): Banding;
applyColumnBanding(bandingTheme: BandingTheme, showHeader: boolean, showFooter: boolean): Banding;
@@ -1115,6 +1204,7 @@ declare namespace GoogleAppsScript {
copyTo(destination: Range, options: Object): void;
copyValuesToRange(gridId: Integer, column: Integer, columnEnd: Integer, row: Integer, rowEnd: Integer): void;
copyValuesToRange(sheet: Sheet, column: Integer, columnEnd: Integer, row: Integer, rowEnd: Integer): void;
createDeveloperMetadataFinder(): DeveloperMetadataFinder;
createFilter(): Filter;
createPivotTable(sourceData: Range): PivotTable;
deleteCells(shiftDimension: Dimension): void;
@@ -1130,6 +1220,7 @@ declare namespace GoogleAppsScript {
getDataTable(firstRowIsHeader: boolean): Charts.DataTable;
getDataValidation(): DataValidation;
getDataValidations(): DataValidation[][];
getDeveloperMetadata(): DeveloperMetadata[];
getDisplayValue(): string;
getDisplayValues(): string[][];
getFilter(): Filter;
@@ -1178,7 +1269,7 @@ declare namespace GoogleAppsScript {
getWrap(): boolean;
getWrapStrategies(): WrapStrategy[][];
getWrapStrategy(): WrapStrategy;
getWraps(): Boolean[][];
getWraps(): boolean[][];
insertCells(shiftDimension: Dimension): Range;
isBlank(): boolean;
isEndColumnBounded(): boolean;
@@ -1328,6 +1419,10 @@ declare namespace GoogleAppsScript {
*/
export interface Sheet {
activate(): Sheet;
addDeveloperMetadata(key: string): Sheet;
addDeveloperMetadata(key: string, visibility: DeveloperMetadataVisibility): Sheet;
addDeveloperMetadata(key: string, value: string): Sheet;
addDeveloperMetadata(key: string, value: string, visibility: DeveloperMetadataVisibility): Sheet;
appendRow(rowContents: Object[]): Sheet;
autoResizeColumn(columnPosition: Integer): Sheet;
autoResizeColumns(startColumn: Integer, numColumns: Integer): Sheet;
@@ -1341,6 +1436,7 @@ declare namespace GoogleAppsScript {
collapseAllColumnGroups(): Sheet;
collapseAllRowGroups(): Sheet;
copyTo(spreadsheet: Spreadsheet): Sheet;
createDeveloperMetadataFinder(): DeveloperMetadataFinder;
deleteColumn(columnPosition: Integer): Sheet;
deleteColumns(columnPosition: Integer, howMany: Integer): void;
deleteRow(rowPosition: Integer): Sheet;
@@ -1361,10 +1457,12 @@ declare namespace GoogleAppsScript {
getConditionalFormatRules(): ConditionalFormatRule[];
getCurrentCell(): Range;
getDataRange(): Range;
getDeveloperMetadata(): DeveloperMetadata[];
getFilter(): Filter;
getFormUrl(): string;
getFrozenColumns(): Integer;
getFrozenRows(): Integer;
getImages(): OverGridImage[];
getIndex(): Integer;
getLastColumn(): Integer;
getLastRow(): Integer;
@@ -1404,17 +1502,20 @@ declare namespace GoogleAppsScript {
insertColumns(columnIndex: Integer, numColumns: Integer): void;
insertColumnsAfter(afterPosition: Integer, howMany: Integer): Sheet;
insertColumnsBefore(beforePosition: Integer, howMany: Integer): Sheet;
insertImage(blobSource: Base.BlobSource, column: Integer, row: Integer): void;
insertImage(blobSource: Base.BlobSource, column: Integer, row: Integer, offsetX: Integer, offsetY: Integer): void;
insertImage(url: string, column: Integer, row: Integer): void;
insertImage(url: string, column: Integer, row: Integer, offsetX: Integer, offsetY: Integer): void;
insertImage(blobSource: Base.BlobSource, column: Integer, row: Integer): OverGridImage;
insertImage(blobSource: Base.BlobSource, column: Integer, row: Integer, offsetX: Integer, offsetY: Integer): OverGridImage;
insertImage(url: string, column: Integer, row: Integer): OverGridImage;
insertImage(url: string, column: Integer, row: Integer, offsetX: Integer, offsetY: Integer): OverGridImage;
insertRowAfter(afterPosition: Integer): Sheet;
insertRowBefore(beforePosition: Integer): Sheet;
insertRows(rowIndex: Integer): void;
insertRows(rowIndex: Integer, numRows: Integer): void;
insertRowsAfter(afterPosition: Integer, howMany: Integer): Sheet;
insertRowsBefore(beforePosition: Integer, howMany: Integer): Sheet;
isColumnHiddenByUser(columnPosition: Integer): boolean;
isRightToLeft(): boolean;
isRowHiddenByFilter(rowPosition: Integer): boolean;
isRowHiddenByUser(rowPosition: Integer): boolean;
isSheetHidden(): boolean;
moveColumns(columnSpec: Range, destinationIndex: Integer): void;
moveRows(rowSpec: Range, destinationIndex: Integer): void;
@@ -1458,6 +1559,10 @@ declare namespace GoogleAppsScript {
* collaborators.
*/
export interface Spreadsheet {
addDeveloperMetadata(key: string): Spreadsheet;
addDeveloperMetadata(key: string, visibility: DeveloperMetadataVisibility): Spreadsheet;
addDeveloperMetadata(key: string, value: string): Spreadsheet;
addDeveloperMetadata(key: string, value: string, visibility: DeveloperMetadataVisibility): Spreadsheet;
addEditor(emailAddress: string): Spreadsheet;
addEditor(user: Base.User): Spreadsheet;
addEditors(emailAddresses: string[]): Spreadsheet;
@@ -1468,6 +1573,7 @@ declare namespace GoogleAppsScript {
appendRow(rowContents: Object[]): Sheet;
autoResizeColumn(columnPosition: Integer): Sheet;
copy(name: string): Spreadsheet;
createDeveloperMetadataFinder(): DeveloperMetadataFinder;
deleteActiveSheet(): Sheet;
deleteColumn(columnPosition: Integer): Sheet;
deleteColumns(columnPosition: Integer, howMany: Integer): void;
@@ -1485,11 +1591,13 @@ declare namespace GoogleAppsScript {
getColumnWidth(columnPosition: Integer): Integer;
getCurrentCell(): Range;
getDataRange(): Range;
getDeveloperMetadata(): DeveloperMetadata[];
getEditors(): Base.User[];
getFormUrl(): string;
getFrozenColumns(): Integer;
getFrozenRows(): Integer;
getId(): string;
getImages(): OverGridImage[];
getLastColumn(): Integer;
getLastRow(): Integer;
getName(): string;
@@ -1517,10 +1625,10 @@ declare namespace GoogleAppsScript {
insertColumnBefore(beforePosition: Integer): Sheet;
insertColumnsAfter(afterPosition: Integer, howMany: Integer): Sheet;
insertColumnsBefore(beforePosition: Integer, howMany: Integer): Sheet;
insertImage(blobSource: Base.BlobSource, column: Integer, row: Integer): void;
insertImage(blobSource: Base.BlobSource, column: Integer, row: Integer, offsetX: Integer, offsetY: Integer): void;
insertImage(url: string, column: Integer, row: Integer): void;
insertImage(url: string, column: Integer, row: Integer, offsetX: Integer, offsetY: Integer): void;
insertImage(blobSource: Base.BlobSource, column: Integer, row: Integer): OverGridImage;
insertImage(blobSource: Base.BlobSource, column: Integer, row: Integer, offsetX: Integer, offsetY: Integer): OverGridImage;
insertImage(url: string, column: Integer, row: Integer): OverGridImage;
insertImage(url: string, column: Integer, row: Integer, offsetX: Integer, offsetY: Integer): OverGridImage;
insertRowAfter(afterPosition: Integer): Sheet;
insertRowBefore(beforePosition: Integer): Sheet;
insertRowsAfter(afterPosition: Integer, howMany: Integer): Sheet;
@@ -1533,6 +1641,9 @@ declare namespace GoogleAppsScript {
insertSheet(sheetName: string, sheetIndex: Integer): Sheet;
insertSheet(sheetName: string, sheetIndex: Integer, options: Object): Sheet;
insertSheet(sheetName: string, options: Object): Sheet;
isColumnHiddenByUser(columnPosition: Integer): boolean;
isRowHiddenByFilter(rowPosition: Integer): boolean;
isRowHiddenByUser(rowPosition: Integer): boolean;
moveActiveSheet(pos: Integer): void;
removeEditor(emailAddress: string): Spreadsheet;
removeEditor(user: Base.User): Spreadsheet;
@@ -1582,6 +1693,8 @@ declare namespace GoogleAppsScript {
BorderStyle: typeof BorderStyle;
CopyPasteType: typeof CopyPasteType;
DataValidationCriteria: typeof DataValidationCriteria;
DeveloperMetadataLocationType: typeof DeveloperMetadataLocationType;
DeveloperMetadataVisibility: typeof DeveloperMetadataVisibility;
Dimension: typeof Dimension;
Direction: typeof Direction;
GroupControlTogglePosition: typeof GroupControlTogglePosition;
+13 -2
View File
@@ -1,4 +1,4 @@
// Type definitions for Google Apps Script 2018-07-11
// Type definitions for Google Apps Script 2018-12-26
// Project: https://developers.google.com/apps-script/
// Definitions by: motemen <https://github.com/motemen/>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
@@ -14,7 +14,7 @@ declare namespace GoogleAppsScript {
export enum Charset { US_ASCII, UTF_8 }
/**
* Selector of Digest algorithm
* Selector of Digest algorithm.
*/
export enum DigestAlgorithm { MD2, MD5, SHA_1, SHA_256, SHA_384, SHA_512 }
@@ -23,6 +23,11 @@ declare namespace GoogleAppsScript {
*/
export enum MacAlgorithm { HMAC_MD5, HMAC_SHA_1, HMAC_SHA_256, HMAC_SHA_384, HMAC_SHA_512 }
/**
* Selector of RSA algorithm
*/
export enum RsaAlgorithm { RSA_SHA_1, RSA_SHA_256 }
/**
* This service provides utilities for string encoding/decoding, date formatting, JSON manipulation,
* and other miscellaneous tasks.
@@ -31,6 +36,7 @@ declare namespace GoogleAppsScript {
Charset: typeof Charset;
DigestAlgorithm: typeof DigestAlgorithm;
MacAlgorithm: typeof MacAlgorithm;
RsaAlgorithm: typeof RsaAlgorithm;
base64Decode(encoded: string): Byte[];
base64Decode(encoded: string, charset: Charset): Byte[];
base64DecodeWebSafe(encoded: string): Byte[];
@@ -50,8 +56,12 @@ declare namespace GoogleAppsScript {
computeHmacSignature(algorithm: MacAlgorithm, value: Byte[], key: Byte[]): Byte[];
computeHmacSignature(algorithm: MacAlgorithm, value: string, key: string): Byte[];
computeHmacSignature(algorithm: MacAlgorithm, value: string, key: string, charset: Charset): Byte[];
computeRsaSha1Signature(value: string, key: string): Byte[];
computeRsaSha1Signature(value: string, key: string, charset: Charset): Byte[];
computeRsaSha256Signature(value: string, key: string): Byte[];
computeRsaSha256Signature(value: string, key: string, charset: Charset): Byte[];
computeRsaSignature(algorithm: RsaAlgorithm, value: string, key: string): Byte[];
computeRsaSignature(algorithm: RsaAlgorithm, value: string, key: string, charset: Charset): Byte[];
formatDate(date: Date, timeZone: string, format: string): string;
formatString(template: string, ...args: Object[]): string;
getUuid(): string;
@@ -80,4 +90,5 @@ declare namespace GoogleAppsScript {
declare var Charset: GoogleAppsScript.Utilities.Charset;
declare var DigestAlgorithm: GoogleAppsScript.Utilities.DigestAlgorithm;
declare var MacAlgorithm: GoogleAppsScript.Utilities.MacAlgorithm;
declare var RsaAlgorithm: GoogleAppsScript.Utilities.RsaAlgorithm;
declare var Utilities: GoogleAppsScript.Utilities.Utilities;
+7 -6
View File
@@ -11,28 +11,29 @@
// Google Services (Google APIs)
/// <reference path="google-apps-script.calendar.d.ts"/>
/// <reference path="google-apps-script.card.d.ts"/>
/// <reference path="google-apps-script.charts.d.ts"/>
/// <reference path="google-apps-script.contacts.d.ts"/>
/// <reference path="google-apps-script.content.d.ts"/>
/// <reference path="google-apps-script.data-studio.d.ts"/>
/// <reference path="google-apps-script.document.d.ts"/>
/// <reference path="google-apps-script.drive.d.ts"/>
/// <reference path="google-apps-script.forms.d.ts"/>
/// <reference path="google-apps-script.gmail.d.ts"/>
/// <reference path="google-apps-script.groups.d.ts"/>
/// <reference path="google-apps-script.mail.d.ts"/>
/// <reference path="google-apps-script.language.d.ts"/>
/// <reference path="google-apps-script.maps.d.ts"/>
/// <reference path="google-apps-script.sites.d.ts"/>
/// <reference path="google-apps-script.slides.d.ts"/>
/// <reference path="google-apps-script.spreadsheet.d.ts"/>
// Script Services (Other *App / *Service)
/// <reference path="google-apps-script.card-service.d.ts"/>
/// <reference path="google-apps-script.charts.d.ts"/>
/// <reference path="google-apps-script.content.d.ts"/>
/// <reference path="google-apps-script.html.d.ts"/>
/// <reference path="google-apps-script.jdbc.d.ts"/>
/// <reference path="google-apps-script.language.d.ts"/>
/// <reference path="google-apps-script.lock.d.ts"/>
/// <reference path="google-apps-script.properties.d.ts"/>
/// <reference path="google-apps-script.mail.d.ts"/>
/// <reference path="google-apps-script.optimization.d.ts"/>
/// <reference path="google-apps-script.properties.d.ts"/>
/// <reference path="google-apps-script.script.d.ts"/>
/// <reference path="google-apps-script.ui.d.ts"/>
/// <reference path="google-apps-script.url-fetch.d.ts"/>