@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,134 @@
1
+ /**
2
+ * Dropbox Integration
3
+ *
4
+ * Cloud file storage and collaboration.
5
+ * API Docs: https://www.dropbox.com/developers/documentation/http/overview
6
+ * SDK: https://github.com/dropbox/dropbox-sdk-js
7
+ */
8
+ import { Dropbox } from 'dropbox';
9
+ import { SDKInitializer } from '@marktoflow/core';
10
+ export interface DropboxFileMetadata {
11
+ name: string;
12
+ path_display?: string;
13
+ id?: string;
14
+ client_modified?: string;
15
+ server_modified?: string;
16
+ size?: number;
17
+ }
18
+ export interface DropboxFolderMetadata {
19
+ name: string;
20
+ path_display?: string;
21
+ id?: string;
22
+ }
23
+ export interface UploadOptions {
24
+ path: string;
25
+ contents: string | Buffer;
26
+ mode?: 'add' | 'overwrite' | 'update';
27
+ autorename?: boolean;
28
+ mute?: boolean;
29
+ }
30
+ export interface DownloadOptions {
31
+ path: string;
32
+ }
33
+ export interface SearchOptions {
34
+ query: string;
35
+ max_results?: number;
36
+ }
37
+ export interface ShareOptions {
38
+ path: string;
39
+ settings?: {
40
+ requested_visibility?: 'public' | 'team_only' | 'password';
41
+ audience?: 'public' | 'team' | 'no_one';
42
+ access?: 'viewer' | 'editor';
43
+ };
44
+ }
45
+ /**
46
+ * Dropbox client wrapper for workflow integration
47
+ */
48
+ export declare class DropboxClient {
49
+ private client;
50
+ constructor(client: Dropbox);
51
+ /**
52
+ * Upload file
53
+ */
54
+ uploadFile(options: UploadOptions): Promise<import("dropbox").DropboxResponse<import("dropbox").files.FileMetadata>>;
55
+ /**
56
+ * Download file
57
+ */
58
+ downloadFile(options: DownloadOptions): Promise<import("dropbox").DropboxResponse<import("dropbox").files.FileMetadata>>;
59
+ /**
60
+ * Get file metadata
61
+ */
62
+ getMetadata(path: string): Promise<import("dropbox").DropboxResponse<import("dropbox").files.FileMetadataReference | import("dropbox").files.FolderMetadataReference | import("dropbox").files.DeletedMetadataReference>>;
63
+ /**
64
+ * List folder contents
65
+ */
66
+ listFolder(path: string, options?: {
67
+ recursive?: boolean;
68
+ limit?: number;
69
+ }): Promise<import("dropbox").DropboxResponse<import("dropbox").files.ListFolderResult>>;
70
+ /**
71
+ * Continue listing folder (pagination)
72
+ */
73
+ listFolderContinue(cursor: string): Promise<import("dropbox").DropboxResponse<import("dropbox").files.ListFolderResult>>;
74
+ /**
75
+ * Create folder
76
+ */
77
+ createFolder(path: string, autorename?: boolean): Promise<import("dropbox").DropboxResponse<import("dropbox").files.CreateFolderResult>>;
78
+ /**
79
+ * Delete file or folder
80
+ */
81
+ delete(path: string): Promise<import("dropbox").DropboxResponse<import("dropbox").files.DeleteResult>>;
82
+ /**
83
+ * Move file or folder
84
+ */
85
+ move(fromPath: string, toPath: string, autorename?: boolean): Promise<import("dropbox").DropboxResponse<import("dropbox").files.RelocationResult>>;
86
+ /**
87
+ * Copy file or folder
88
+ */
89
+ copy(fromPath: string, toPath: string, autorename?: boolean): Promise<import("dropbox").DropboxResponse<import("dropbox").files.RelocationResult>>;
90
+ /**
91
+ * Search files
92
+ */
93
+ search(options: SearchOptions): Promise<import("dropbox").DropboxResponse<import("dropbox").files.SearchV2Result>>;
94
+ /**
95
+ * Create shared link
96
+ */
97
+ createSharedLink(options: ShareOptions): Promise<import("dropbox").DropboxResponse<import("dropbox").sharing.FileLinkMetadataReference | import("dropbox").sharing.FolderLinkMetadataReference | import("dropbox").sharing.SharedLinkMetadataReference>>;
98
+ /**
99
+ * List shared links
100
+ */
101
+ listSharedLinks(path?: string): Promise<import("dropbox").DropboxResponse<import("dropbox").sharing.ListSharedLinksResult>>;
102
+ /**
103
+ * Revoke shared link
104
+ */
105
+ revokeSharedLink(url: string): Promise<import("dropbox").DropboxResponse<void>>;
106
+ /**
107
+ * Share folder
108
+ */
109
+ shareFolder(path: string, options?: {
110
+ member_policy?: 'team' | 'anyone';
111
+ acl_update_policy?: 'owner' | 'editors';
112
+ }): Promise<import("dropbox").DropboxResponse<import("dropbox").sharing.ShareFolderLaunch>>;
113
+ /**
114
+ * Add folder member
115
+ */
116
+ addFolderMember(sharedFolderId: string, members: Array<{
117
+ email: string;
118
+ access_level?: 'owner' | 'editor' | 'viewer' | 'viewer_no_comment';
119
+ }>): Promise<import("dropbox").DropboxResponse<void>>;
120
+ /**
121
+ * Remove folder member
122
+ */
123
+ removeFolderMember(sharedFolderId: string, memberEmail: string, leaveACopy?: boolean): Promise<import("dropbox").DropboxResponse<import("dropbox").async.LaunchResultBaseAsyncJobId>>;
124
+ /**
125
+ * Get current account info
126
+ */
127
+ getCurrentAccount(): Promise<import("dropbox").DropboxResponse<import("dropbox").users.FullAccount>>;
128
+ /**
129
+ * Get space usage
130
+ */
131
+ getSpaceUsage(): Promise<import("dropbox").DropboxResponse<import("dropbox").users.SpaceUsage>>;
132
+ }
133
+ export declare const DropboxInitializer: SDKInitializer;
134
+ //# sourceMappingURL=dropbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropbox.d.ts","sourceRoot":"","sources":["../../src/services/dropbox.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,190 @@
1
+ /**
2
+ * Dropbox Integration
3
+ *
4
+ * Cloud file storage and collaboration.
5
+ * API Docs: https://www.dropbox.com/developers/documentation/http/overview
6
+ * SDK: https://github.com/dropbox/dropbox-sdk-js
7
+ */
8
+ import { Dropbox } from 'dropbox';
9
+ /**
10
+ * Dropbox client wrapper for workflow integration
11
+ */
12
+ export class DropboxClient {
13
+ client;
14
+ constructor(client) {
15
+ this.client = client;
16
+ }
17
+ // ==================== Files ====================
18
+ /**
19
+ * Upload file
20
+ */
21
+ async uploadFile(options) {
22
+ return await this.client.filesUpload({
23
+ path: options.path,
24
+ contents: options.contents,
25
+ mode: options.mode ? { '.tag': options.mode } : { '.tag': 'add' },
26
+ autorename: options.autorename ?? false,
27
+ mute: options.mute ?? false,
28
+ });
29
+ }
30
+ /**
31
+ * Download file
32
+ */
33
+ async downloadFile(options) {
34
+ return await this.client.filesDownload({ path: options.path });
35
+ }
36
+ /**
37
+ * Get file metadata
38
+ */
39
+ async getMetadata(path) {
40
+ return await this.client.filesGetMetadata({ path });
41
+ }
42
+ /**
43
+ * List folder contents
44
+ */
45
+ async listFolder(path, options) {
46
+ return await this.client.filesListFolder({
47
+ path: path || '',
48
+ recursive: options?.recursive ?? false,
49
+ limit: options?.limit,
50
+ });
51
+ }
52
+ /**
53
+ * Continue listing folder (pagination)
54
+ */
55
+ async listFolderContinue(cursor) {
56
+ return await this.client.filesListFolderContinue({ cursor });
57
+ }
58
+ /**
59
+ * Create folder
60
+ */
61
+ async createFolder(path, autorename) {
62
+ return await this.client.filesCreateFolderV2({
63
+ path,
64
+ autorename: autorename ?? false,
65
+ });
66
+ }
67
+ /**
68
+ * Delete file or folder
69
+ */
70
+ async delete(path) {
71
+ return await this.client.filesDeleteV2({ path });
72
+ }
73
+ /**
74
+ * Move file or folder
75
+ */
76
+ async move(fromPath, toPath, autorename) {
77
+ return await this.client.filesMoveV2({
78
+ from_path: fromPath,
79
+ to_path: toPath,
80
+ autorename: autorename ?? false,
81
+ });
82
+ }
83
+ /**
84
+ * Copy file or folder
85
+ */
86
+ async copy(fromPath, toPath, autorename) {
87
+ return await this.client.filesCopyV2({
88
+ from_path: fromPath,
89
+ to_path: toPath,
90
+ autorename: autorename ?? false,
91
+ });
92
+ }
93
+ // ==================== Search ====================
94
+ /**
95
+ * Search files
96
+ */
97
+ async search(options) {
98
+ return await this.client.filesSearchV2({
99
+ query: options.query,
100
+ options: {
101
+ max_results: options.max_results ?? 100,
102
+ },
103
+ });
104
+ }
105
+ // ==================== Sharing ====================
106
+ /**
107
+ * Create shared link
108
+ */
109
+ async createSharedLink(options) {
110
+ return await this.client.sharingCreateSharedLinkWithSettings({
111
+ path: options.path,
112
+ settings: options.settings,
113
+ });
114
+ }
115
+ /**
116
+ * List shared links
117
+ */
118
+ async listSharedLinks(path) {
119
+ return await this.client.sharingListSharedLinks({
120
+ path: path || '',
121
+ });
122
+ }
123
+ /**
124
+ * Revoke shared link
125
+ */
126
+ async revokeSharedLink(url) {
127
+ return await this.client.sharingRevokeSharedLink({ url });
128
+ }
129
+ /**
130
+ * Share folder
131
+ */
132
+ async shareFolder(path, options) {
133
+ return await this.client.sharingShareFolder({
134
+ path,
135
+ member_policy: options?.member_policy ? { '.tag': options.member_policy } : undefined,
136
+ acl_update_policy: options?.acl_update_policy ? { '.tag': options.acl_update_policy } : undefined,
137
+ });
138
+ }
139
+ /**
140
+ * Add folder member
141
+ */
142
+ async addFolderMember(sharedFolderId, members) {
143
+ return await this.client.sharingAddFolderMember({
144
+ shared_folder_id: sharedFolderId,
145
+ members: members.map((m) => ({
146
+ member: { '.tag': 'email', email: m.email },
147
+ access_level: m.access_level ? { '.tag': m.access_level } : { '.tag': 'viewer' },
148
+ })),
149
+ });
150
+ }
151
+ /**
152
+ * Remove folder member
153
+ */
154
+ async removeFolderMember(sharedFolderId, memberEmail, leaveACopy) {
155
+ return await this.client.sharingRemoveFolderMember({
156
+ shared_folder_id: sharedFolderId,
157
+ member: { '.tag': 'email', email: memberEmail },
158
+ leave_a_copy: leaveACopy ?? false,
159
+ });
160
+ }
161
+ // ==================== Account ====================
162
+ /**
163
+ * Get current account info
164
+ */
165
+ async getCurrentAccount() {
166
+ return await this.client.usersGetCurrentAccount();
167
+ }
168
+ /**
169
+ * Get space usage
170
+ */
171
+ async getSpaceUsage() {
172
+ return await this.client.usersGetSpaceUsage();
173
+ }
174
+ }
175
+ export const DropboxInitializer = {
176
+ async initialize(_module, config) {
177
+ const accessToken = config.auth?.['access_token'];
178
+ if (!accessToken) {
179
+ throw new Error('Dropbox SDK requires auth.access_token');
180
+ }
181
+ const client = new Dropbox({ accessToken });
182
+ const wrapper = new DropboxClient(client);
183
+ return {
184
+ client: wrapper,
185
+ actions: wrapper,
186
+ rawClient: client,
187
+ };
188
+ },
189
+ };
190
+ //# sourceMappingURL=dropbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropbox.js","sourceRoot":"","sources":["../../src/services/dropbox.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,220 @@
1
+ /**
2
+ * Google Calendar Integration
3
+ *
4
+ * Calendar and event management.
5
+ * API Docs: https://developers.google.com/calendar/api
6
+ */
7
+ import { calendar_v3 } from 'googleapis';
8
+ import { SDKInitializer } from '@marktoflow/core';
9
+ export interface CalendarEvent {
10
+ id: string;
11
+ summary: string;
12
+ description?: string;
13
+ location?: string;
14
+ start: {
15
+ dateTime?: string;
16
+ date?: string;
17
+ timeZone?: string;
18
+ };
19
+ end: {
20
+ dateTime?: string;
21
+ date?: string;
22
+ timeZone?: string;
23
+ };
24
+ attendees?: {
25
+ email: string;
26
+ displayName?: string;
27
+ responseStatus?: string;
28
+ }[];
29
+ creator?: {
30
+ email: string;
31
+ displayName?: string;
32
+ };
33
+ organizer?: {
34
+ email: string;
35
+ displayName?: string;
36
+ };
37
+ status?: string;
38
+ htmlLink?: string;
39
+ recurringEventId?: string;
40
+ recurrence?: string[];
41
+ reminders?: {
42
+ useDefault: boolean;
43
+ overrides?: {
44
+ method: string;
45
+ minutes: number;
46
+ }[];
47
+ };
48
+ conferenceData?: {
49
+ conferenceId?: string;
50
+ conferenceSolution?: {
51
+ name: string;
52
+ iconUri?: string;
53
+ };
54
+ entryPoints?: {
55
+ entryPointType: string;
56
+ uri: string;
57
+ label?: string;
58
+ }[];
59
+ };
60
+ }
61
+ export interface CalendarInfo {
62
+ id: string;
63
+ summary: string;
64
+ description?: string;
65
+ location?: string;
66
+ timeZone?: string;
67
+ accessRole?: string;
68
+ primary?: boolean;
69
+ }
70
+ export interface CreateEventOptions {
71
+ summary: string;
72
+ description?: string;
73
+ location?: string;
74
+ start: {
75
+ dateTime?: string;
76
+ date?: string;
77
+ timeZone?: string;
78
+ };
79
+ end: {
80
+ dateTime?: string;
81
+ date?: string;
82
+ timeZone?: string;
83
+ };
84
+ attendees?: string[] | {
85
+ email: string;
86
+ displayName?: string;
87
+ }[];
88
+ recurrence?: string[];
89
+ reminders?: {
90
+ useDefault?: boolean;
91
+ overrides?: {
92
+ method: 'email' | 'popup';
93
+ minutes: number;
94
+ }[];
95
+ };
96
+ conferenceData?: {
97
+ createRequest?: {
98
+ requestId: string;
99
+ conferenceSolutionKey?: {
100
+ type: string;
101
+ };
102
+ };
103
+ };
104
+ sendUpdates?: 'all' | 'externalOnly' | 'none';
105
+ }
106
+ export interface UpdateEventOptions extends Partial<CreateEventOptions> {
107
+ sendUpdates?: 'all' | 'externalOnly' | 'none';
108
+ }
109
+ export interface ListEventsOptions {
110
+ timeMin?: string;
111
+ timeMax?: string;
112
+ maxResults?: number;
113
+ orderBy?: 'startTime' | 'updated';
114
+ q?: string;
115
+ singleEvents?: boolean;
116
+ showDeleted?: boolean;
117
+ pageToken?: string;
118
+ }
119
+ export interface FreeBusyQuery {
120
+ timeMin: string;
121
+ timeMax: string;
122
+ items: {
123
+ id: string;
124
+ }[];
125
+ timeZone?: string;
126
+ }
127
+ export interface FreeBusyResponse {
128
+ calendars: {
129
+ [calendarId: string]: {
130
+ busy: {
131
+ start: string;
132
+ end: string;
133
+ }[];
134
+ errors?: unknown[];
135
+ };
136
+ };
137
+ }
138
+ /**
139
+ * Google Calendar actions for workflow integration
140
+ */
141
+ export declare class GoogleCalendarActions {
142
+ private calendar;
143
+ constructor(calendar: calendar_v3.Calendar);
144
+ /**
145
+ * List user's calendars
146
+ */
147
+ listCalendars(): Promise<CalendarInfo[]>;
148
+ /**
149
+ * Get a specific calendar
150
+ */
151
+ getCalendar(calendarId?: string): Promise<CalendarInfo>;
152
+ /**
153
+ * List events from a calendar
154
+ */
155
+ listEvents(calendarId?: string, options?: ListEventsOptions): Promise<{
156
+ events: CalendarEvent[];
157
+ nextPageToken?: string;
158
+ }>;
159
+ /**
160
+ * Get a specific event
161
+ */
162
+ getEvent(calendarId: string, eventId: string): Promise<CalendarEvent>;
163
+ /**
164
+ * Create a new event
165
+ */
166
+ createEvent(calendarId: string | undefined, options: CreateEventOptions): Promise<CalendarEvent>;
167
+ /**
168
+ * Update an existing event
169
+ */
170
+ updateEvent(calendarId: string, eventId: string, options: UpdateEventOptions): Promise<CalendarEvent>;
171
+ /**
172
+ * Delete an event
173
+ */
174
+ deleteEvent(calendarId: string, eventId: string, sendUpdates?: 'all' | 'externalOnly' | 'none'): Promise<void>;
175
+ /**
176
+ * Quick add event using natural language
177
+ */
178
+ quickAddEvent(calendarId: string | undefined, text: string): Promise<CalendarEvent>;
179
+ /**
180
+ * Move event to another calendar
181
+ */
182
+ moveEvent(sourceCalendarId: string, eventId: string, destinationCalendarId: string): Promise<CalendarEvent>;
183
+ /**
184
+ * Query free/busy information
185
+ */
186
+ queryFreeBusy(query: FreeBusyQuery): Promise<FreeBusyResponse>;
187
+ /**
188
+ * Create a calendar
189
+ */
190
+ createCalendar(summary: string, options?: {
191
+ description?: string;
192
+ location?: string;
193
+ timeZone?: string;
194
+ }): Promise<CalendarInfo>;
195
+ /**
196
+ * Delete a calendar
197
+ */
198
+ deleteCalendar(calendarId: string): Promise<void>;
199
+ /**
200
+ * Watch for changes to a calendar
201
+ */
202
+ watchEvents(calendarId: string, webhookUrl: string, options?: {
203
+ token?: string;
204
+ expiration?: number;
205
+ }): Promise<{
206
+ id: string;
207
+ resourceId: string;
208
+ expiration: string;
209
+ }>;
210
+ /**
211
+ * Stop watching for changes
212
+ */
213
+ stopWatching(channelId: string, resourceId: string): Promise<void>;
214
+ /**
215
+ * Parse calendar event from API response
216
+ */
217
+ private parseEvent;
218
+ }
219
+ export declare const GoogleCalendarInitializer: SDKInitializer;
220
+ //# sourceMappingURL=google-calendar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"google-calendar.d.ts","sourceRoot":"","sources":["../../src/services/google-calendar.ts"],"names":[],"mappings":"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"}