import { ServiceBubble } from '../../../types/service-bubble-class.js'; import type { BubbleContext } from '../../../types/bubble.js'; import { CredentialType } from '@bubblelab/shared-schemas'; import { type GoogleSheetsParamsInput, type GoogleSheetsResult } from './google-sheets.schema.js'; /** * Google Sheets Service Bubble * * Comprehensive Google Sheets integration for spreadsheet data management. * * Features: * - Automatic range normalization (quotes sheet names with spaces) * - Automatic value sanitization (converts null/undefined to empty strings) * - Enhanced error messages with helpful hints * - Support for all major Google Sheets operations * * Use cases: * - Read and write spreadsheet data with flexible ranges * - Batch operations for efficient data processing * - Create and manage spreadsheets and sheets * - Clear and append data with various formatting options * - Handle formulas, formatted values, and raw data * * Security Features: * - OAuth 2.0 authentication with Google * - Scoped access permissions for Google Sheets * - Secure data validation and sanitization * - User-controlled access to spreadsheet data */ export declare class GoogleSheetsBubble extends ServiceBubble> { static readonly type: "service"; static readonly service = "google-sheets"; static readonly authType: "oauth"; static readonly bubbleName = "google-sheets"; static readonly schema: import("zod").ZodDiscriminatedUnion<"operation", [import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"read_values">; spreadsheet_id: import("zod").ZodString; range: import("zod").ZodEffects; major_dimension: import("zod").ZodDefault>>; value_render_option: import("zod").ZodDefault>>; date_time_render_option: import("zod").ZodDefault>>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "read_values"; range: string; spreadsheet_id: string; major_dimension: "ROWS" | "COLUMNS"; value_render_option: "FORMATTED_VALUE" | "UNFORMATTED_VALUE" | "FORMULA"; date_time_render_option: "SERIAL_NUMBER" | "FORMATTED_STRING"; credentials?: Partial> | undefined; }, { operation: "read_values"; range: string; spreadsheet_id: string; credentials?: Partial> | undefined; major_dimension?: "ROWS" | "COLUMNS" | undefined; value_render_option?: "FORMATTED_VALUE" | "UNFORMATTED_VALUE" | "FORMULA" | undefined; date_time_render_option?: "SERIAL_NUMBER" | "FORMATTED_STRING" | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"write_values">; spreadsheet_id: import("zod").ZodString; range: import("zod").ZodEffects; values: import("zod").ZodEffects, "many">, (string | number | boolean)[][], unknown[][]>; major_dimension: import("zod").ZodDefault>>; value_input_option: import("zod").ZodDefault>>; include_values_in_response: import("zod").ZodDefault>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { values: (string | number | boolean)[][]; operation: "write_values"; range: string; spreadsheet_id: string; major_dimension: "ROWS" | "COLUMNS"; value_input_option: "RAW" | "USER_ENTERED"; include_values_in_response: boolean; credentials?: Partial> | undefined; }, { values: unknown[][]; operation: "write_values"; range: string; spreadsheet_id: string; credentials?: Partial> | undefined; major_dimension?: "ROWS" | "COLUMNS" | undefined; value_input_option?: "RAW" | "USER_ENTERED" | undefined; include_values_in_response?: boolean | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"update_values">; spreadsheet_id: import("zod").ZodString; range: import("zod").ZodEffects; values: import("zod").ZodEffects, "many">, (string | number | boolean)[][], unknown[][]>; major_dimension: import("zod").ZodDefault>>; value_input_option: import("zod").ZodDefault>>; include_values_in_response: import("zod").ZodDefault>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { values: (string | number | boolean)[][]; operation: "update_values"; range: string; spreadsheet_id: string; major_dimension: "ROWS" | "COLUMNS"; value_input_option: "RAW" | "USER_ENTERED"; include_values_in_response: boolean; credentials?: Partial> | undefined; }, { values: unknown[][]; operation: "update_values"; range: string; spreadsheet_id: string; credentials?: Partial> | undefined; major_dimension?: "ROWS" | "COLUMNS" | undefined; value_input_option?: "RAW" | "USER_ENTERED" | undefined; include_values_in_response?: boolean | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"append_values">; spreadsheet_id: import("zod").ZodString; range: import("zod").ZodEffects; values: import("zod").ZodEffects, "many">, (string | number | boolean)[][], unknown[][]>; major_dimension: import("zod").ZodDefault>>; value_input_option: import("zod").ZodDefault>>; insert_data_option: import("zod").ZodDefault>>; include_values_in_response: import("zod").ZodDefault>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { values: (string | number | boolean)[][]; operation: "append_values"; range: string; spreadsheet_id: string; major_dimension: "ROWS" | "COLUMNS"; value_input_option: "RAW" | "USER_ENTERED"; include_values_in_response: boolean; insert_data_option: "OVERWRITE" | "INSERT_ROWS"; credentials?: Partial> | undefined; }, { values: unknown[][]; operation: "append_values"; range: string; spreadsheet_id: string; credentials?: Partial> | undefined; major_dimension?: "ROWS" | "COLUMNS" | undefined; value_input_option?: "RAW" | "USER_ENTERED" | undefined; include_values_in_response?: boolean | undefined; insert_data_option?: "OVERWRITE" | "INSERT_ROWS" | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"clear_values">; spreadsheet_id: import("zod").ZodString; range: import("zod").ZodEffects; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "clear_values"; range: string; spreadsheet_id: string; credentials?: Partial> | undefined; }, { operation: "clear_values"; range: string; spreadsheet_id: string; credentials?: Partial> | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"batch_read_values">; spreadsheet_id: import("zod").ZodString; ranges: import("zod").ZodEffects, string[], string[]>; major_dimension: import("zod").ZodDefault>>; value_render_option: import("zod").ZodDefault>>; date_time_render_option: import("zod").ZodDefault>>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "batch_read_values"; spreadsheet_id: string; major_dimension: "ROWS" | "COLUMNS"; value_render_option: "FORMATTED_VALUE" | "UNFORMATTED_VALUE" | "FORMULA"; date_time_render_option: "SERIAL_NUMBER" | "FORMATTED_STRING"; ranges: string[]; credentials?: Partial> | undefined; }, { operation: "batch_read_values"; spreadsheet_id: string; ranges: string[]; credentials?: Partial> | undefined; major_dimension?: "ROWS" | "COLUMNS" | undefined; value_render_option?: "FORMATTED_VALUE" | "UNFORMATTED_VALUE" | "FORMULA" | undefined; date_time_render_option?: "SERIAL_NUMBER" | "FORMATTED_STRING" | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"batch_update_values">; spreadsheet_id: import("zod").ZodString; value_ranges: import("zod").ZodArray; values: import("zod").ZodEffects, "many">, (string | number | boolean)[][], unknown[][]>; major_dimension: import("zod").ZodDefault>>; }, "strip", import("zod").ZodTypeAny, { values: (string | number | boolean)[][]; range: string; major_dimension: "ROWS" | "COLUMNS"; }, { values: unknown[][]; range: string; major_dimension?: "ROWS" | "COLUMNS" | undefined; }>, "many">; value_input_option: import("zod").ZodDefault>>; include_values_in_response: import("zod").ZodDefault>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "batch_update_values"; spreadsheet_id: string; value_input_option: "RAW" | "USER_ENTERED"; include_values_in_response: boolean; value_ranges: { values: (string | number | boolean)[][]; range: string; major_dimension: "ROWS" | "COLUMNS"; }[]; credentials?: Partial> | undefined; }, { operation: "batch_update_values"; spreadsheet_id: string; value_ranges: { values: unknown[][]; range: string; major_dimension?: "ROWS" | "COLUMNS" | undefined; }[]; credentials?: Partial> | undefined; value_input_option?: "RAW" | "USER_ENTERED" | undefined; include_values_in_response?: boolean | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"get_spreadsheet_info">; spreadsheet_id: import("zod").ZodString; include_grid_data: import("zod").ZodDefault>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "get_spreadsheet_info"; spreadsheet_id: string; include_grid_data: boolean; credentials?: Partial> | undefined; }, { operation: "get_spreadsheet_info"; spreadsheet_id: string; credentials?: Partial> | undefined; include_grid_data?: boolean | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_spreadsheet">; title: import("zod").ZodString; sheet_titles: import("zod").ZodDefault>>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { title: string; operation: "create_spreadsheet"; sheet_titles: string[]; credentials?: Partial> | undefined; }, { title: string; operation: "create_spreadsheet"; credentials?: Partial> | undefined; sheet_titles?: string[] | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"add_sheet">; spreadsheet_id: import("zod").ZodString; sheet_title: import("zod").ZodString; row_count: import("zod").ZodDefault>; column_count: import("zod").ZodDefault>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "add_sheet"; spreadsheet_id: string; sheet_title: string; row_count: number; column_count: number; credentials?: Partial> | undefined; }, { operation: "add_sheet"; spreadsheet_id: string; sheet_title: string; credentials?: Partial> | undefined; row_count?: number | undefined; column_count?: number | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"delete_sheet">; spreadsheet_id: import("zod").ZodString; sheet_id: import("zod").ZodNumber; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "delete_sheet"; spreadsheet_id: string; sheet_id: number; credentials?: Partial> | undefined; }, { operation: "delete_sheet"; spreadsheet_id: string; sheet_id: number; credentials?: Partial> | undefined; }>]>; static readonly resultSchema: import("zod").ZodDiscriminatedUnion<"operation", [import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"read_values">; success: import("zod").ZodBoolean; range: import("zod").ZodOptional; values: import("zod").ZodOptional, "many">, "many">>; major_dimension: import("zod").ZodOptional; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "read_values"; values?: (string | number | boolean)[][] | undefined; range?: string | undefined; major_dimension?: string | undefined; }, { error: string; success: boolean; operation: "read_values"; values?: (string | number | boolean)[][] | undefined; range?: string | undefined; major_dimension?: string | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"write_values">; success: import("zod").ZodBoolean; updated_range: import("zod").ZodOptional; updated_rows: import("zod").ZodOptional; updated_columns: import("zod").ZodOptional; updated_cells: import("zod").ZodOptional; updated_data: import("zod").ZodOptional>; values: import("zod").ZodArray, "many">, "many">; }, "strip", import("zod").ZodTypeAny, { values: (string | number | boolean)[][]; range: string; majorDimension?: "ROWS" | "COLUMNS" | undefined; }, { values: (string | number | boolean)[][]; range: string; majorDimension?: "ROWS" | "COLUMNS" | undefined; }>>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "write_values"; updated_range?: string | undefined; updated_rows?: number | undefined; updated_columns?: number | undefined; updated_cells?: number | undefined; updated_data?: { values: (string | number | boolean)[][]; range: string; majorDimension?: "ROWS" | "COLUMNS" | undefined; } | undefined; }, { error: string; success: boolean; operation: "write_values"; updated_range?: string | undefined; updated_rows?: number | undefined; updated_columns?: number | undefined; updated_cells?: number | undefined; updated_data?: { values: (string | number | boolean)[][]; range: string; majorDimension?: "ROWS" | "COLUMNS" | undefined; } | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"update_values">; success: import("zod").ZodBoolean; updated_range: import("zod").ZodOptional; updated_rows: import("zod").ZodOptional; updated_columns: import("zod").ZodOptional; updated_cells: import("zod").ZodOptional; updated_data: import("zod").ZodOptional>; values: import("zod").ZodArray, "many">, "many">; }, "strip", import("zod").ZodTypeAny, { values: (string | number | boolean)[][]; range: string; majorDimension?: "ROWS" | "COLUMNS" | undefined; }, { values: (string | number | boolean)[][]; range: string; majorDimension?: "ROWS" | "COLUMNS" | undefined; }>>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "update_values"; updated_range?: string | undefined; updated_rows?: number | undefined; updated_columns?: number | undefined; updated_cells?: number | undefined; updated_data?: { values: (string | number | boolean)[][]; range: string; majorDimension?: "ROWS" | "COLUMNS" | undefined; } | undefined; }, { error: string; success: boolean; operation: "update_values"; updated_range?: string | undefined; updated_rows?: number | undefined; updated_columns?: number | undefined; updated_cells?: number | undefined; updated_data?: { values: (string | number | boolean)[][]; range: string; majorDimension?: "ROWS" | "COLUMNS" | undefined; } | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"append_values">; success: import("zod").ZodBoolean; table_range: import("zod").ZodOptional; updated_range: import("zod").ZodOptional; updated_rows: import("zod").ZodOptional; updated_columns: import("zod").ZodOptional; updated_cells: import("zod").ZodOptional; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "append_values"; updated_range?: string | undefined; updated_rows?: number | undefined; updated_columns?: number | undefined; updated_cells?: number | undefined; table_range?: string | undefined; }, { error: string; success: boolean; operation: "append_values"; updated_range?: string | undefined; updated_rows?: number | undefined; updated_columns?: number | undefined; updated_cells?: number | undefined; table_range?: string | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"clear_values">; success: import("zod").ZodBoolean; cleared_range: import("zod").ZodOptional; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "clear_values"; cleared_range?: string | undefined; }, { error: string; success: boolean; operation: "clear_values"; cleared_range?: string | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"batch_read_values">; success: import("zod").ZodBoolean; value_ranges: import("zod").ZodOptional>; values: import("zod").ZodArray, "many">, "many">; }, "strip", import("zod").ZodTypeAny, { values: (string | number | boolean)[][]; range: string; majorDimension?: "ROWS" | "COLUMNS" | undefined; }, { values: (string | number | boolean)[][]; range: string; majorDimension?: "ROWS" | "COLUMNS" | undefined; }>, "many">>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "batch_read_values"; value_ranges?: { values: (string | number | boolean)[][]; range: string; majorDimension?: "ROWS" | "COLUMNS" | undefined; }[] | undefined; }, { error: string; success: boolean; operation: "batch_read_values"; value_ranges?: { values: (string | number | boolean)[][]; range: string; majorDimension?: "ROWS" | "COLUMNS" | undefined; }[] | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"batch_update_values">; success: import("zod").ZodBoolean; total_updated_rows: import("zod").ZodOptional; total_updated_columns: import("zod").ZodOptional; total_updated_cells: import("zod").ZodOptional; total_updated_sheets: import("zod").ZodOptional; responses: import("zod").ZodOptional; updated_rows: import("zod").ZodOptional; updated_columns: import("zod").ZodOptional; updated_cells: import("zod").ZodOptional; }, "strip", import("zod").ZodTypeAny, { updated_range?: string | undefined; updated_rows?: number | undefined; updated_columns?: number | undefined; updated_cells?: number | undefined; }, { updated_range?: string | undefined; updated_rows?: number | undefined; updated_columns?: number | undefined; updated_cells?: number | undefined; }>, "many">>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "batch_update_values"; total_updated_rows?: number | undefined; total_updated_columns?: number | undefined; total_updated_cells?: number | undefined; total_updated_sheets?: number | undefined; responses?: { updated_range?: string | undefined; updated_rows?: number | undefined; updated_columns?: number | undefined; updated_cells?: number | undefined; }[] | undefined; }, { error: string; success: boolean; operation: "batch_update_values"; total_updated_rows?: number | undefined; total_updated_columns?: number | undefined; total_updated_cells?: number | undefined; total_updated_sheets?: number | undefined; responses?: { updated_range?: string | undefined; updated_rows?: number | undefined; updated_columns?: number | undefined; updated_cells?: number | undefined; }[] | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"get_spreadsheet_info">; success: import("zod").ZodBoolean; spreadsheet: import("zod").ZodOptional; autoRecalc: import("zod").ZodOptional; timeZone: import("zod").ZodOptional; }, "strip", import("zod").ZodTypeAny, { title: string; timeZone?: string | undefined; locale?: string | undefined; autoRecalc?: string | undefined; }, { title: string; timeZone?: string | undefined; locale?: string | undefined; autoRecalc?: string | undefined; }>>; sheets: import("zod").ZodOptional; gridProperties: import("zod").ZodOptional; columnCount: import("zod").ZodOptional; }, "strip", import("zod").ZodTypeAny, { rowCount?: number | undefined; columnCount?: number | undefined; }, { rowCount?: number | undefined; columnCount?: number | undefined; }>>; }, "strip", import("zod").ZodTypeAny, { title: string; index: number; sheetId: number; sheetType?: string | undefined; gridProperties?: { rowCount?: number | undefined; columnCount?: number | undefined; } | undefined; }, { title: string; index: number; sheetId: number; sheetType?: string | undefined; gridProperties?: { rowCount?: number | undefined; columnCount?: number | undefined; } | undefined; }>; }, "strip", import("zod").ZodTypeAny, { properties: { title: string; index: number; sheetId: number; sheetType?: string | undefined; gridProperties?: { rowCount?: number | undefined; columnCount?: number | undefined; } | undefined; }; }, { properties: { title: string; index: number; sheetId: number; sheetType?: string | undefined; gridProperties?: { rowCount?: number | undefined; columnCount?: number | undefined; } | undefined; }; }>, "many">>; spreadsheetUrl: import("zod").ZodOptional; }, "strip", import("zod").ZodTypeAny, { spreadsheetId: string; properties?: { title: string; timeZone?: string | undefined; locale?: string | undefined; autoRecalc?: string | undefined; } | undefined; sheets?: { properties: { title: string; index: number; sheetId: number; sheetType?: string | undefined; gridProperties?: { rowCount?: number | undefined; columnCount?: number | undefined; } | undefined; }; }[] | undefined; spreadsheetUrl?: string | undefined; }, { spreadsheetId: string; properties?: { title: string; timeZone?: string | undefined; locale?: string | undefined; autoRecalc?: string | undefined; } | undefined; sheets?: { properties: { title: string; index: number; sheetId: number; sheetType?: string | undefined; gridProperties?: { rowCount?: number | undefined; columnCount?: number | undefined; } | undefined; }; }[] | undefined; spreadsheetUrl?: string | undefined; }>>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "get_spreadsheet_info"; spreadsheet?: { spreadsheetId: string; properties?: { title: string; timeZone?: string | undefined; locale?: string | undefined; autoRecalc?: string | undefined; } | undefined; sheets?: { properties: { title: string; index: number; sheetId: number; sheetType?: string | undefined; gridProperties?: { rowCount?: number | undefined; columnCount?: number | undefined; } | undefined; }; }[] | undefined; spreadsheetUrl?: string | undefined; } | undefined; }, { error: string; success: boolean; operation: "get_spreadsheet_info"; spreadsheet?: { spreadsheetId: string; properties?: { title: string; timeZone?: string | undefined; locale?: string | undefined; autoRecalc?: string | undefined; } | undefined; sheets?: { properties: { title: string; index: number; sheetId: number; sheetType?: string | undefined; gridProperties?: { rowCount?: number | undefined; columnCount?: number | undefined; } | undefined; }; }[] | undefined; spreadsheetUrl?: string | undefined; } | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_spreadsheet">; success: import("zod").ZodBoolean; spreadsheet: import("zod").ZodOptional; autoRecalc: import("zod").ZodOptional; timeZone: import("zod").ZodOptional; }, "strip", import("zod").ZodTypeAny, { title: string; timeZone?: string | undefined; locale?: string | undefined; autoRecalc?: string | undefined; }, { title: string; timeZone?: string | undefined; locale?: string | undefined; autoRecalc?: string | undefined; }>>; sheets: import("zod").ZodOptional; gridProperties: import("zod").ZodOptional; columnCount: import("zod").ZodOptional; }, "strip", import("zod").ZodTypeAny, { rowCount?: number | undefined; columnCount?: number | undefined; }, { rowCount?: number | undefined; columnCount?: number | undefined; }>>; }, "strip", import("zod").ZodTypeAny, { title: string; index: number; sheetId: number; sheetType?: string | undefined; gridProperties?: { rowCount?: number | undefined; columnCount?: number | undefined; } | undefined; }, { title: string; index: number; sheetId: number; sheetType?: string | undefined; gridProperties?: { rowCount?: number | undefined; columnCount?: number | undefined; } | undefined; }>; }, "strip", import("zod").ZodTypeAny, { properties: { title: string; index: number; sheetId: number; sheetType?: string | undefined; gridProperties?: { rowCount?: number | undefined; columnCount?: number | undefined; } | undefined; }; }, { properties: { title: string; index: number; sheetId: number; sheetType?: string | undefined; gridProperties?: { rowCount?: number | undefined; columnCount?: number | undefined; } | undefined; }; }>, "many">>; spreadsheetUrl: import("zod").ZodOptional; }, "strip", import("zod").ZodTypeAny, { spreadsheetId: string; properties?: { title: string; timeZone?: string | undefined; locale?: string | undefined; autoRecalc?: string | undefined; } | undefined; sheets?: { properties: { title: string; index: number; sheetId: number; sheetType?: string | undefined; gridProperties?: { rowCount?: number | undefined; columnCount?: number | undefined; } | undefined; }; }[] | undefined; spreadsheetUrl?: string | undefined; }, { spreadsheetId: string; properties?: { title: string; timeZone?: string | undefined; locale?: string | undefined; autoRecalc?: string | undefined; } | undefined; sheets?: { properties: { title: string; index: number; sheetId: number; sheetType?: string | undefined; gridProperties?: { rowCount?: number | undefined; columnCount?: number | undefined; } | undefined; }; }[] | undefined; spreadsheetUrl?: string | undefined; }>>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "create_spreadsheet"; spreadsheet?: { spreadsheetId: string; properties?: { title: string; timeZone?: string | undefined; locale?: string | undefined; autoRecalc?: string | undefined; } | undefined; sheets?: { properties: { title: string; index: number; sheetId: number; sheetType?: string | undefined; gridProperties?: { rowCount?: number | undefined; columnCount?: number | undefined; } | undefined; }; }[] | undefined; spreadsheetUrl?: string | undefined; } | undefined; }, { error: string; success: boolean; operation: "create_spreadsheet"; spreadsheet?: { spreadsheetId: string; properties?: { title: string; timeZone?: string | undefined; locale?: string | undefined; autoRecalc?: string | undefined; } | undefined; sheets?: { properties: { title: string; index: number; sheetId: number; sheetType?: string | undefined; gridProperties?: { rowCount?: number | undefined; columnCount?: number | undefined; } | undefined; }; }[] | undefined; spreadsheetUrl?: string | undefined; } | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"add_sheet">; success: import("zod").ZodBoolean; sheet_id: import("zod").ZodOptional; sheet_title: import("zod").ZodOptional; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "add_sheet"; sheet_title?: string | undefined; sheet_id?: number | undefined; }, { error: string; success: boolean; operation: "add_sheet"; sheet_title?: string | undefined; sheet_id?: number | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"delete_sheet">; success: import("zod").ZodBoolean; deleted_sheet_id: import("zod").ZodOptional; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "delete_sheet"; deleted_sheet_id?: number | undefined; }, { error: string; success: boolean; operation: "delete_sheet"; deleted_sheet_id?: number | undefined; }>]>; static readonly shortDescription = "Google Sheets integration for spreadsheet operations"; static readonly longDescription = "\n Google Sheets service integration for comprehensive spreadsheet data management.\n \n Features:\n - Automatic range normalization (sheet names with spaces are automatically quoted)\n - Automatic value sanitization (null/undefined converted to empty strings)\n - Enhanced error messages with helpful hints\n - Support for all major Google Sheets operations\n \n Use cases:\n - Read and write spreadsheet data with flexible ranges\n - Batch operations for efficient data processing\n - Create and manage spreadsheets and sheets\n - Clear and append data with various formatting options\n - Handle formulas, formatted values, and raw data\n \n Security Features:\n - OAuth 2.0 authentication with Google\n - Scoped access permissions for Google Sheets\n - Secure data validation and sanitization\n - User-controlled access to spreadsheet data\n "; static readonly alias = "sheets"; constructor(params?: T, context?: BubbleContext); testCredential(): Promise; private makeSheetsApiRequest; protected performAction(context?: BubbleContext): Promise>; private readValues; private writeValues; private updateValues; private appendValues; private clearValues; private batchReadValues; private batchUpdateValues; private getSpreadsheetInfo; private createSpreadsheet; private addSheet; private deleteSheet; protected chooseCredential(): string | undefined; } //# sourceMappingURL=google-sheets.d.ts.map