import type { sheets_v4 } from '@googleapis/sheets'; import type { CellData } from '../entities/CellData.js'; /** * Apply one batchUpdate request to a spreadsheet and return its reply. * `spreadsheets.batchUpdate` takes a union-typed requests array of 69 request * types; the suite exposes a curated subset as purpose-named operations, each * of which funnels through here with exactly one request. Request types whose * reply is empty (deletes, property updates) get `{}` back. */ export declare function applyRequest(sheets: sheets_v4.Sheets, spreadsheetId: string, request: sheets_v4.Schema$Request): Promise; /** * Build an update request's field mask from the arguments actually provided: * one path per defined key, with each key named in `expand` broken into one * path per defined subkey, so an untouched sibling (a frozen count, a bold * flag) is not reset to its default by a too-wide mask. Returns the * comma-joined mask, empty when nothing was provided (an expanded key whose * object is empty counts as nothing); callers must reject an empty mask * rather than send it (Google reads it as "update no fields"). */ export declare function fieldPaths>(provided: T, expand?: readonly (keyof T & string)[]): string; /** * Derive an UpdateCellsRequest field mask from the union of fields the * provided cells actually carry, `fieldPaths`' sibling for per-cell data. * `userEnteredFormat` expands per subkey (textFormat per sub-subkey, like * `repeat_cell`), so a format field no cell provides is never reset by a * too-wide mask. The mask applies to every written cell, so a masked field * a cell omits is cleared in that cell; returns '' when no cell provides * anything, which callers must refuse to send, like `fieldPaths`. */ export declare function cellFieldPaths(rows: readonly { values: readonly CellData[]; }[]): string; //# sourceMappingURL=requests.d.ts.map