@marktoflow/integrations 2.0.0-alpha.6 → 2.0.0-alpha.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. package/README.md +738 -9
  2. package/dist/adapters/claude-agent-hooks.d.ts +176 -0
  3. package/dist/adapters/claude-agent-hooks.d.ts.map +1 -0
  4. package/dist/adapters/claude-agent-hooks.js +339 -0
  5. package/dist/adapters/claude-agent-hooks.js.map +1 -0
  6. package/dist/adapters/claude-agent-types.d.ts +426 -0
  7. package/dist/adapters/claude-agent-types.d.ts.map +1 -0
  8. package/dist/adapters/claude-agent-types.js +62 -0
  9. package/dist/adapters/claude-agent-types.js.map +1 -0
  10. package/dist/adapters/claude-agent-workflow.d.ts +393 -0
  11. package/dist/adapters/claude-agent-workflow.d.ts.map +1 -0
  12. package/dist/adapters/claude-agent-workflow.js +445 -0
  13. package/dist/adapters/claude-agent-workflow.js.map +1 -0
  14. package/dist/adapters/claude-agent.d.ts +171 -0
  15. package/dist/adapters/claude-agent.d.ts.map +1 -0
  16. package/dist/adapters/claude-agent.js +468 -0
  17. package/dist/adapters/claude-agent.js.map +1 -0
  18. package/dist/adapters/codex-types.d.ts +463 -0
  19. package/dist/adapters/codex-types.d.ts.map +1 -0
  20. package/dist/adapters/codex-types.js +53 -0
  21. package/dist/adapters/codex-types.js.map +1 -0
  22. package/dist/adapters/codex-workflow.d.ts +414 -0
  23. package/dist/adapters/codex-workflow.d.ts.map +1 -0
  24. package/dist/adapters/codex-workflow.js +470 -0
  25. package/dist/adapters/codex-workflow.js.map +1 -0
  26. package/dist/adapters/codex.d.ts +136 -0
  27. package/dist/adapters/codex.d.ts.map +1 -0
  28. package/dist/adapters/codex.js +390 -0
  29. package/dist/adapters/codex.js.map +1 -0
  30. package/dist/adapters/github-copilot-types.d.ts +1012 -0
  31. package/dist/adapters/github-copilot-types.d.ts.map +1 -0
  32. package/dist/adapters/github-copilot-types.js +80 -0
  33. package/dist/adapters/github-copilot-types.js.map +1 -0
  34. package/dist/adapters/github-copilot-workflow.d.ts +462 -0
  35. package/dist/adapters/github-copilot-workflow.d.ts.map +1 -0
  36. package/dist/adapters/github-copilot-workflow.js +473 -0
  37. package/dist/adapters/github-copilot-workflow.js.map +1 -0
  38. package/dist/adapters/github-copilot.d.ts +221 -37
  39. package/dist/adapters/github-copilot.d.ts.map +1 -1
  40. package/dist/adapters/github-copilot.js +336 -58
  41. package/dist/adapters/github-copilot.js.map +1 -1
  42. package/dist/adapters/opencode.d.ts +2 -0
  43. package/dist/adapters/opencode.d.ts.map +1 -1
  44. package/dist/adapters/opencode.js +6 -0
  45. package/dist/adapters/opencode.js.map +1 -1
  46. package/dist/index.d.ts +31 -1
  47. package/dist/index.d.ts.map +1 -1
  48. package/dist/index.js +88 -1
  49. package/dist/index.js.map +1 -1
  50. package/dist/services/ai-browser.d.ts +112 -0
  51. package/dist/services/ai-browser.d.ts.map +1 -0
  52. package/dist/services/ai-browser.js +363 -0
  53. package/dist/services/ai-browser.js.map +1 -0
  54. package/dist/services/asana.d.ts +159 -0
  55. package/dist/services/asana.d.ts.map +1 -0
  56. package/dist/services/asana.js +196 -0
  57. package/dist/services/asana.js.map +1 -0
  58. package/dist/services/aws-s3.d.ts +89 -0
  59. package/dist/services/aws-s3.d.ts.map +1 -0
  60. package/dist/services/aws-s3.js +154 -0
  61. package/dist/services/aws-s3.js.map +1 -0
  62. package/dist/services/dropbox.d.ts +134 -0
  63. package/dist/services/dropbox.d.ts.map +1 -0
  64. package/dist/services/dropbox.js +190 -0
  65. package/dist/services/dropbox.js.map +1 -0
  66. package/dist/services/google-calendar.d.ts +220 -0
  67. package/dist/services/google-calendar.d.ts.map +1 -0
  68. package/dist/services/google-calendar.js +318 -0
  69. package/dist/services/google-calendar.js.map +1 -0
  70. package/dist/services/google-docs.d.ts +197 -0
  71. package/dist/services/google-docs.d.ts.map +1 -0
  72. package/dist/services/google-docs.js +293 -0
  73. package/dist/services/google-docs.js.map +1 -0
  74. package/dist/services/google-drive.d.ts +149 -0
  75. package/dist/services/google-drive.d.ts.map +1 -0
  76. package/dist/services/google-drive.js +288 -0
  77. package/dist/services/google-drive.js.map +1 -0
  78. package/dist/services/google-sheets.d.ts +165 -0
  79. package/dist/services/google-sheets.d.ts.map +1 -0
  80. package/dist/services/google-sheets.js +352 -0
  81. package/dist/services/google-sheets.js.map +1 -0
  82. package/dist/services/mailchimp.d.ts +169 -0
  83. package/dist/services/mailchimp.d.ts.map +1 -0
  84. package/dist/services/mailchimp.js +180 -0
  85. package/dist/services/mailchimp.js.map +1 -0
  86. package/dist/services/mysql.d.ts +91 -0
  87. package/dist/services/mysql.d.ts.map +1 -0
  88. package/dist/services/mysql.js +250 -0
  89. package/dist/services/mysql.js.map +1 -0
  90. package/dist/services/playwright.d.ts +678 -0
  91. package/dist/services/playwright.d.ts.map +1 -0
  92. package/dist/services/playwright.js +1141 -0
  93. package/dist/services/playwright.js.map +1 -0
  94. package/dist/services/postgres.d.ts +83 -0
  95. package/dist/services/postgres.d.ts.map +1 -0
  96. package/dist/services/postgres.js +230 -0
  97. package/dist/services/postgres.js.map +1 -0
  98. package/dist/services/sendgrid.d.ts +43 -0
  99. package/dist/services/sendgrid.d.ts.map +1 -0
  100. package/dist/services/sendgrid.js +87 -0
  101. package/dist/services/sendgrid.js.map +1 -0
  102. package/dist/services/shopify.d.ts +160 -0
  103. package/dist/services/shopify.d.ts.map +1 -0
  104. package/dist/services/shopify.js +166 -0
  105. package/dist/services/shopify.js.map +1 -0
  106. package/dist/services/stripe.d.ts +275 -0
  107. package/dist/services/stripe.d.ts.map +1 -0
  108. package/dist/services/stripe.js +229 -0
  109. package/dist/services/stripe.js.map +1 -0
  110. package/dist/services/supabase.d.ts +193 -0
  111. package/dist/services/supabase.d.ts.map +1 -0
  112. package/dist/services/supabase.js +328 -0
  113. package/dist/services/supabase.js.map +1 -0
  114. package/dist/services/teams.d.ts +224 -0
  115. package/dist/services/teams.d.ts.map +1 -0
  116. package/dist/services/teams.js +229 -0
  117. package/dist/services/teams.js.map +1 -0
  118. package/dist/services/telegram.d.ts +247 -0
  119. package/dist/services/telegram.d.ts.map +1 -0
  120. package/dist/services/telegram.js +247 -0
  121. package/dist/services/telegram.js.map +1 -0
  122. package/dist/services/trello.d.ts +160 -0
  123. package/dist/services/trello.d.ts.map +1 -0
  124. package/dist/services/trello.js +194 -0
  125. package/dist/services/trello.js.map +1 -0
  126. package/dist/services/twilio.d.ts +126 -0
  127. package/dist/services/twilio.d.ts.map +1 -0
  128. package/dist/services/twilio.js +153 -0
  129. package/dist/services/twilio.js.map +1 -0
  130. package/dist/services/whatsapp.d.ts +311 -0
  131. package/dist/services/whatsapp.d.ts.map +1 -0
  132. package/dist/services/whatsapp.js +253 -0
  133. package/dist/services/whatsapp.js.map +1 -0
  134. package/dist/services/zendesk.d.ts +134 -0
  135. package/dist/services/zendesk.d.ts.map +1 -0
  136. package/dist/services/zendesk.js +148 -0
  137. package/dist/services/zendesk.js.map +1 -0
  138. package/package.json +43 -5
  139. package/dist/claude-code.d.ts +0 -16
  140. package/dist/claude-code.d.ts.map +0 -1
  141. package/dist/claude-code.js +0 -56
  142. package/dist/claude-code.js.map +0 -1
  143. package/dist/github.d.ts +0 -3
  144. package/dist/github.d.ts.map +0 -1
  145. package/dist/github.js +0 -13
  146. package/dist/github.js.map +0 -1
  147. package/dist/jira.d.ts +0 -3
  148. package/dist/jira.d.ts.map +0 -1
  149. package/dist/jira.js +0 -21
  150. package/dist/jira.js.map +0 -1
  151. package/dist/ollama.d.ts +0 -3
  152. package/dist/ollama.d.ts.map +0 -1
  153. package/dist/ollama.js +0 -9
  154. package/dist/ollama.js.map +0 -1
  155. package/dist/opencode.d.ts +0 -19
  156. package/dist/opencode.d.ts.map +0 -1
  157. package/dist/opencode.js +0 -104
  158. package/dist/opencode.js.map +0 -1
  159. package/dist/script.d.ts +0 -3
  160. package/dist/script.d.ts.map +0 -1
  161. package/dist/script.js +0 -21
  162. package/dist/script.js.map +0 -1
  163. package/dist/slack.d.ts +0 -3
  164. package/dist/slack.d.ts.map +0 -1
  165. package/dist/slack.js +0 -11
  166. package/dist/slack.js.map +0 -1
@@ -0,0 +1,288 @@
1
+ /**
2
+ * Google Drive Integration
3
+ *
4
+ * File storage and collaboration platform.
5
+ * API Docs: https://developers.google.com/drive/api
6
+ */
7
+ import { google } from 'googleapis';
8
+ /**
9
+ * Google Drive actions for workflow integration
10
+ */
11
+ export class GoogleDriveActions {
12
+ drive;
13
+ constructor(drive) {
14
+ this.drive = drive;
15
+ }
16
+ /**
17
+ * List files and folders
18
+ */
19
+ async listFiles(options = {}) {
20
+ const response = await this.drive.files.list({
21
+ q: options.q,
22
+ pageSize: options.pageSize ?? 100,
23
+ pageToken: options.pageToken,
24
+ orderBy: options.orderBy,
25
+ spaces: options.spaces,
26
+ fields: options.fields ??
27
+ 'nextPageToken, files(id, name, mimeType, size, createdTime, modifiedTime, parents, webViewLink, webContentLink, description, starred, trashed, shared, owners)',
28
+ includeItemsFromAllDrives: options.includeItemsFromAllDrives,
29
+ supportsAllDrives: options.supportsAllDrives,
30
+ });
31
+ return {
32
+ files: response.data.files?.map((f) => this.parseFile(f)) ?? [],
33
+ nextPageToken: response.data.nextPageToken ?? undefined,
34
+ };
35
+ }
36
+ /**
37
+ * Get a file by ID
38
+ */
39
+ async getFile(fileId, fields) {
40
+ const response = await this.drive.files.get({
41
+ fileId,
42
+ fields: fields ??
43
+ 'id, name, mimeType, size, createdTime, modifiedTime, parents, webViewLink, webContentLink, description, starred, trashed, shared, owners',
44
+ supportsAllDrives: true,
45
+ });
46
+ return this.parseFile(response.data);
47
+ }
48
+ /**
49
+ * Download file content
50
+ */
51
+ async downloadFile(fileId) {
52
+ const response = await this.drive.files.get({
53
+ fileId,
54
+ alt: 'media',
55
+ supportsAllDrives: true,
56
+ }, { responseType: 'arraybuffer' });
57
+ return Buffer.from(response.data);
58
+ }
59
+ /**
60
+ * Export Google Workspace file to another format
61
+ */
62
+ async exportFile(fileId, mimeType) {
63
+ const response = await this.drive.files.export({
64
+ fileId,
65
+ mimeType,
66
+ }, { responseType: 'arraybuffer' });
67
+ return Buffer.from(response.data);
68
+ }
69
+ /**
70
+ * Create a file or folder
71
+ */
72
+ async createFile(options) {
73
+ const metadata = {
74
+ name: options.name,
75
+ mimeType: options.mimeType,
76
+ parents: options.parents,
77
+ description: options.description,
78
+ };
79
+ let media;
80
+ if (options.content) {
81
+ media = {
82
+ mimeType: options.contentType,
83
+ body: options.content,
84
+ };
85
+ }
86
+ const response = await this.drive.files.create({
87
+ requestBody: metadata,
88
+ media,
89
+ fields: 'id, name, mimeType, size, createdTime, modifiedTime, parents, webViewLink, webContentLink',
90
+ supportsAllDrives: true,
91
+ });
92
+ return this.parseFile(response.data);
93
+ }
94
+ /**
95
+ * Create a folder
96
+ */
97
+ async createFolder(name, parentId) {
98
+ return this.createFile({
99
+ name,
100
+ mimeType: 'application/vnd.google-apps.folder',
101
+ parents: parentId ? [parentId] : undefined,
102
+ });
103
+ }
104
+ /**
105
+ * Update a file
106
+ */
107
+ async updateFile(fileId, options) {
108
+ const metadata = {
109
+ name: options.name,
110
+ description: options.description,
111
+ starred: options.starred,
112
+ trashed: options.trashed,
113
+ };
114
+ let media;
115
+ if (options.content) {
116
+ media = {
117
+ mimeType: options.contentType,
118
+ body: options.content,
119
+ };
120
+ }
121
+ const response = await this.drive.files.update({
122
+ fileId,
123
+ requestBody: metadata,
124
+ media,
125
+ fields: 'id, name, mimeType, size, createdTime, modifiedTime, parents, webViewLink, webContentLink',
126
+ supportsAllDrives: true,
127
+ });
128
+ return this.parseFile(response.data);
129
+ }
130
+ /**
131
+ * Delete a file
132
+ */
133
+ async deleteFile(fileId) {
134
+ await this.drive.files.delete({
135
+ fileId,
136
+ supportsAllDrives: true,
137
+ });
138
+ }
139
+ /**
140
+ * Copy a file
141
+ */
142
+ async copyFile(fileId, name, parents) {
143
+ const response = await this.drive.files.copy({
144
+ fileId,
145
+ requestBody: {
146
+ name,
147
+ parents,
148
+ },
149
+ fields: 'id, name, mimeType, size, createdTime, modifiedTime, parents, webViewLink, webContentLink',
150
+ supportsAllDrives: true,
151
+ });
152
+ return this.parseFile(response.data);
153
+ }
154
+ /**
155
+ * Move a file
156
+ */
157
+ async moveFile(fileId, newParentId) {
158
+ // Get current parents
159
+ const file = await this.drive.files.get({
160
+ fileId,
161
+ fields: 'parents',
162
+ supportsAllDrives: true,
163
+ });
164
+ const previousParents = file.data.parents?.join(',');
165
+ const response = await this.drive.files.update({
166
+ fileId,
167
+ addParents: newParentId,
168
+ removeParents: previousParents,
169
+ fields: 'id, name, mimeType, size, createdTime, modifiedTime, parents, webViewLink, webContentLink',
170
+ supportsAllDrives: true,
171
+ });
172
+ return this.parseFile(response.data);
173
+ }
174
+ /**
175
+ * Share a file
176
+ */
177
+ async shareFile(fileId, options) {
178
+ const response = await this.drive.permissions.create({
179
+ fileId,
180
+ requestBody: {
181
+ type: options.type,
182
+ role: options.role,
183
+ emailAddress: options.emailAddress,
184
+ domain: options.domain,
185
+ allowFileDiscovery: options.allowFileDiscovery,
186
+ },
187
+ sendNotificationEmail: options.sendNotificationEmail ?? true,
188
+ emailMessage: options.emailMessage,
189
+ supportsAllDrives: true,
190
+ });
191
+ return {
192
+ id: response.data.id ?? '',
193
+ type: response.data.type ?? 'user',
194
+ role: response.data.role ?? 'reader',
195
+ emailAddress: response.data.emailAddress ?? undefined,
196
+ displayName: response.data.displayName ?? undefined,
197
+ deleted: response.data.deleted ?? undefined,
198
+ };
199
+ }
200
+ /**
201
+ * List permissions for a file
202
+ */
203
+ async listPermissions(fileId) {
204
+ const response = await this.drive.permissions.list({
205
+ fileId,
206
+ fields: 'permissions(id, type, role, emailAddress, displayName, deleted)',
207
+ supportsAllDrives: true,
208
+ });
209
+ return (response.data.permissions?.map((p) => ({
210
+ id: p.id ?? '',
211
+ type: p.type ?? 'user',
212
+ role: p.role ?? 'reader',
213
+ emailAddress: p.emailAddress ?? undefined,
214
+ displayName: p.displayName ?? undefined,
215
+ deleted: p.deleted ?? undefined,
216
+ })) ?? []);
217
+ }
218
+ /**
219
+ * Remove a permission
220
+ */
221
+ async removePermission(fileId, permissionId) {
222
+ await this.drive.permissions.delete({
223
+ fileId,
224
+ permissionId,
225
+ supportsAllDrives: true,
226
+ });
227
+ }
228
+ /**
229
+ * Search files
230
+ */
231
+ async searchFiles(query, options = {}) {
232
+ const result = await this.listFiles({ ...options, q: query });
233
+ return result.files;
234
+ }
235
+ /**
236
+ * Get files in a folder
237
+ */
238
+ async getFilesInFolder(folderId) {
239
+ return this.searchFiles(`'${folderId}' in parents and trashed=false`);
240
+ }
241
+ /**
242
+ * Parse file from API response
243
+ */
244
+ parseFile(file) {
245
+ return {
246
+ id: file.id ?? '',
247
+ name: file.name ?? '',
248
+ mimeType: file.mimeType ?? '',
249
+ parents: file.parents ?? undefined,
250
+ size: file.size ?? undefined,
251
+ createdTime: file.createdTime ?? undefined,
252
+ modifiedTime: file.modifiedTime ?? undefined,
253
+ webViewLink: file.webViewLink ?? undefined,
254
+ webContentLink: file.webContentLink ?? undefined,
255
+ description: file.description ?? undefined,
256
+ starred: file.starred ?? undefined,
257
+ trashed: file.trashed ?? undefined,
258
+ shared: file.shared ?? undefined,
259
+ owners: file.owners?.map((o) => ({
260
+ displayName: o.displayName ?? undefined,
261
+ emailAddress: o.emailAddress ?? undefined,
262
+ })),
263
+ };
264
+ }
265
+ }
266
+ export const GoogleDriveInitializer = {
267
+ async initialize(_module, config) {
268
+ const clientId = config.auth?.['client_id'];
269
+ const clientSecret = config.auth?.['client_secret'];
270
+ const redirectUri = config.auth?.['redirect_uri'];
271
+ const refreshToken = config.auth?.['refresh_token'];
272
+ const accessToken = config.auth?.['access_token'];
273
+ if (!clientId || !clientSecret || !redirectUri) {
274
+ throw new Error('Google Drive SDK requires auth.client_id, auth.client_secret, auth.redirect_uri');
275
+ }
276
+ const oauth2Client = new google.auth.OAuth2(clientId, clientSecret, redirectUri);
277
+ oauth2Client.setCredentials({
278
+ refresh_token: refreshToken,
279
+ access_token: accessToken,
280
+ });
281
+ const drive = google.drive({ version: 'v3', auth: oauth2Client });
282
+ return {
283
+ client: drive,
284
+ actions: new GoogleDriveActions(drive),
285
+ };
286
+ },
287
+ };
288
+ //# sourceMappingURL=google-drive.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"google-drive.js","sourceRoot":"","sources":["../../src/services/google-drive.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,165 @@
1
+ /**
2
+ * Google Sheets Integration
3
+ *
4
+ * Spreadsheet automation platform.
5
+ * API Docs: https://developers.google.com/sheets/api
6
+ */
7
+ import { sheets_v4 } from 'googleapis';
8
+ import { SDKInitializer } from '@marktoflow/core';
9
+ export interface SpreadsheetInfo {
10
+ spreadsheetId: string;
11
+ properties: {
12
+ title: string;
13
+ locale: string;
14
+ autoRecalc: string;
15
+ timeZone: string;
16
+ };
17
+ sheets: SheetInfo[];
18
+ }
19
+ export interface SheetInfo {
20
+ sheetId: number;
21
+ title: string;
22
+ index: number;
23
+ sheetType: string;
24
+ gridProperties: {
25
+ rowCount: number;
26
+ columnCount: number;
27
+ };
28
+ }
29
+ export interface CellData {
30
+ row: number;
31
+ column: number;
32
+ value: string | number | boolean | null;
33
+ formattedValue?: string;
34
+ formula?: string;
35
+ }
36
+ export interface AppendValuesOptions {
37
+ range: string;
38
+ values: unknown[][];
39
+ valueInputOption?: 'RAW' | 'USER_ENTERED';
40
+ insertDataOption?: 'OVERWRITE' | 'INSERT_ROWS';
41
+ }
42
+ export interface UpdateValuesOptions {
43
+ range: string;
44
+ values: unknown[][];
45
+ valueInputOption?: 'RAW' | 'USER_ENTERED';
46
+ }
47
+ export interface BatchUpdateOptions {
48
+ data: {
49
+ range: string;
50
+ values: unknown[][];
51
+ }[];
52
+ valueInputOption?: 'RAW' | 'USER_ENTERED';
53
+ }
54
+ export interface CreateSpreadsheetOptions {
55
+ title: string;
56
+ sheets?: {
57
+ title: string;
58
+ rowCount?: number;
59
+ columnCount?: number;
60
+ }[];
61
+ locale?: string;
62
+ timeZone?: string;
63
+ }
64
+ export interface AddSheetOptions {
65
+ title: string;
66
+ rowCount?: number;
67
+ columnCount?: number;
68
+ index?: number;
69
+ }
70
+ /**
71
+ * Google Sheets actions for workflow integration
72
+ */
73
+ export declare class GoogleSheetsActions {
74
+ private sheets;
75
+ constructor(sheets: sheets_v4.Sheets);
76
+ /**
77
+ * Get spreadsheet metadata
78
+ */
79
+ getSpreadsheet(spreadsheetId: string): Promise<SpreadsheetInfo>;
80
+ /**
81
+ * Get values from a range
82
+ */
83
+ getValues(spreadsheetId: string, range: string): Promise<unknown[][]>;
84
+ /**
85
+ * Get multiple ranges at once
86
+ */
87
+ batchGetValues(spreadsheetId: string, ranges: string[]): Promise<{
88
+ range: string;
89
+ values: unknown[][];
90
+ }[]>;
91
+ /**
92
+ * Append values to a sheet
93
+ */
94
+ appendValues(spreadsheetId: string, options: AppendValuesOptions): Promise<{
95
+ updatedRange: string;
96
+ updatedRows: number;
97
+ updatedColumns: number;
98
+ }>;
99
+ /**
100
+ * Update values in a range
101
+ */
102
+ updateValues(spreadsheetId: string, options: UpdateValuesOptions): Promise<{
103
+ updatedRange: string;
104
+ updatedRows: number;
105
+ updatedColumns: number;
106
+ updatedCells: number;
107
+ }>;
108
+ /**
109
+ * Update multiple ranges at once
110
+ */
111
+ batchUpdateValues(spreadsheetId: string, options: BatchUpdateOptions): Promise<{
112
+ totalUpdatedRows: number;
113
+ totalUpdatedColumns: number;
114
+ totalUpdatedCells: number;
115
+ }>;
116
+ /**
117
+ * Clear values in a range
118
+ */
119
+ clearValues(spreadsheetId: string, range: string): Promise<{
120
+ clearedRange: string;
121
+ }>;
122
+ /**
123
+ * Create a new spreadsheet
124
+ */
125
+ createSpreadsheet(options: CreateSpreadsheetOptions): Promise<SpreadsheetInfo>;
126
+ /**
127
+ * Add a new sheet to an existing spreadsheet
128
+ */
129
+ addSheet(spreadsheetId: string, options: AddSheetOptions): Promise<SheetInfo>;
130
+ /**
131
+ * Delete a sheet
132
+ */
133
+ deleteSheet(spreadsheetId: string, sheetId: number): Promise<void>;
134
+ /**
135
+ * Duplicate a sheet
136
+ */
137
+ duplicateSheet(spreadsheetId: string, sourceSheetId: number, newSheetName?: string): Promise<SheetInfo>;
138
+ /**
139
+ * Find and replace text
140
+ */
141
+ findReplace(spreadsheetId: string, find: string, replacement: string, options?: {
142
+ sheetId?: number;
143
+ allSheets?: boolean;
144
+ matchCase?: boolean;
145
+ matchEntireCell?: boolean;
146
+ searchByRegex?: boolean;
147
+ }): Promise<{
148
+ occurrencesChanged: number;
149
+ valuesChanged: number;
150
+ }>;
151
+ /**
152
+ * Sort a range
153
+ */
154
+ sortRange(spreadsheetId: string, range: string, sortSpecs: {
155
+ dimensionIndex: number;
156
+ sortOrder: 'ASCENDING' | 'DESCENDING';
157
+ }[]): Promise<void>;
158
+ /**
159
+ * Parse A1 notation into grid range
160
+ * Helper method for internal use
161
+ */
162
+ private parseA1Notation;
163
+ }
164
+ export declare const GoogleSheetsInitializer: SDKInitializer;
165
+ //# sourceMappingURL=google-sheets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"google-sheets.d.ts","sourceRoot":"","sources":["../../src/services/google-sheets.ts"],"names":[],"mappings":"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"}