import type { IDataObject, IExecuteFunctions, ILoadOptionsFunctions, INode, IPollFunctions } from 'n8n-workflow'; import type { ILookupValues, ISheetUpdateData, ResourceLocator, SheetRangeData, ValueInputOption, ValueRenderOption } from './GoogleSheets.types'; export declare class GoogleSheet { id: string; executeFunctions: IExecuteFunctions | ILoadOptionsFunctions | IPollFunctions; constructor(spreadsheetId: string, executeFunctions: IExecuteFunctions | ILoadOptionsFunctions | IPollFunctions); private encodeRange; clearData(range: string): Promise; getData(range: string, valueRenderMode: ValueRenderOption, dateTimeRenderOption?: string): Promise; spreadsheetGetSheets(): Promise; spreadsheetGetSheet(node: INode, mode: ResourceLocator, value: string): Promise<{ title: string; sheetId: number; }>; getDataRange(sheetId: string): Promise; spreadsheetBatchUpdate(requests: IDataObject[]): Promise; batchUpdate(updateData: ISheetUpdateData[], valueInputMode: ValueInputOption): Promise; appendEmptyRowsOrColumns(sheetId: string, rowsToAdd?: number, columnsToAdd?: number): Promise; appendData(range: string, data: string[][], valueInputMode: ValueInputOption, lastRow?: number, useAppend?: boolean): Promise; updateRows(sheetName: string, data: string[][], valueInputMode: ValueInputOption, row: number, rowsLength?: number, useAppend?: boolean): Promise; convertSheetDataArrayToObjectArray(sheet: SheetRangeData, startRow: number, columnKeys: string[], addEmpty?: boolean, includeHeadersWithEmptyCells?: boolean): IDataObject[]; structureArrayDataByColumn(inputData: string[][], keyRow: number, dataStartRow: number, includeHeadersWithEmptyCells?: boolean): IDataObject[]; testFilter(inputData: string[][], keyRow: number, dataStartRow: number): string[]; appendSheetData({ inputData, range, keyRowIndex, valueInputMode, usePathForKeyRow, columnNamesList, lastRow, useAppend, }: { inputData: IDataObject[]; range: string; keyRowIndex: number; valueInputMode: ValueInputOption; usePathForKeyRow?: boolean; columnNamesList?: string[][]; lastRow?: number; useAppend?: boolean; }): Promise; getColumnWithOffset(startColumn: string, offset: number): string; getColumnValues({ range, keyIndex, dataStartRowIndex, valueRenderMode, sheetData, }: { range: string; keyIndex: number; dataStartRowIndex: number; valueRenderMode: ValueRenderOption; sheetData?: string[][]; }): Promise; prepareDataForUpdateOrUpsert({ inputData, indexKey, range, keyRowIndex, dataStartRowIndex, valueRenderMode, upsert, columnNamesList, columnValuesList, }: { inputData: IDataObject[]; indexKey: string; range: string; keyRowIndex: number; dataStartRowIndex: number; valueRenderMode: ValueRenderOption; upsert?: boolean; columnNamesList?: string[][]; columnValuesList?: string[]; }): Promise<{ updateData: ISheetUpdateData[]; appendData: IDataObject[]; }>; prepareDataForUpdatingByRowNumber(inputData: IDataObject[], range: string, columnNamesList: string[][]): { updateData: ISheetUpdateData[]; }; lookupValues({ inputData, keyRowIndex, dataStartRowIndex, lookupValues, returnAllMatches, nodeVersion, combineFilters, }: { inputData: string[][]; keyRowIndex: number; dataStartRowIndex: number; lookupValues: ILookupValues[]; nodeVersion: number; returnAllMatches?: boolean; combineFilters?: 'AND' | 'OR'; }): Promise; private convertObjectArrayToSheetDataArray; private getDecodedSheetRange; private splitCellRange; }