awolve-myoffice-cli 1.1.0

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 (94) hide show
  1. package/README.md +205 -0
  2. package/dist/auth/cache-plugin.d.ts +20 -0
  3. package/dist/auth/cache-plugin.d.ts.map +1 -0
  4. package/dist/auth/cache-plugin.js +49 -0
  5. package/dist/auth/cache-plugin.js.map +1 -0
  6. package/dist/auth/config.d.ts +22 -0
  7. package/dist/auth/config.d.ts.map +1 -0
  8. package/dist/auth/config.js +64 -0
  9. package/dist/auth/config.js.map +1 -0
  10. package/dist/auth/device-code.d.ts +2 -0
  11. package/dist/auth/device-code.d.ts.map +1 -0
  12. package/dist/auth/device-code.js +38 -0
  13. package/dist/auth/device-code.js.map +1 -0
  14. package/dist/auth/index.d.ts +4 -0
  15. package/dist/auth/index.d.ts.map +1 -0
  16. package/dist/auth/index.js +4 -0
  17. package/dist/auth/index.js.map +1 -0
  18. package/dist/auth/login.d.ts +7 -0
  19. package/dist/auth/login.d.ts.map +1 -0
  20. package/dist/auth/login.js +22 -0
  21. package/dist/auth/login.js.map +1 -0
  22. package/dist/auth/token-manager.d.ts +4 -0
  23. package/dist/auth/token-manager.d.ts.map +1 -0
  24. package/dist/auth/token-manager.js +78 -0
  25. package/dist/auth/token-manager.js.map +1 -0
  26. package/dist/cli/formatter.d.ts +5 -0
  27. package/dist/cli/formatter.d.ts.map +1 -0
  28. package/dist/cli/formatter.js +317 -0
  29. package/dist/cli/formatter.js.map +1 -0
  30. package/dist/cli.d.ts +3 -0
  31. package/dist/cli.d.ts.map +1 -0
  32. package/dist/cli.js +802 -0
  33. package/dist/cli.js.map +1 -0
  34. package/dist/core/handler.d.ts +8 -0
  35. package/dist/core/handler.d.ts.map +1 -0
  36. package/dist/core/handler.js +289 -0
  37. package/dist/core/handler.js.map +1 -0
  38. package/dist/index.d.ts +3 -0
  39. package/dist/index.d.ts.map +1 -0
  40. package/dist/index.js +819 -0
  41. package/dist/index.js.map +1 -0
  42. package/dist/tools/calendar.d.ts +124 -0
  43. package/dist/tools/calendar.d.ts.map +1 -0
  44. package/dist/tools/calendar.js +129 -0
  45. package/dist/tools/calendar.js.map +1 -0
  46. package/dist/tools/chats.d.ts +66 -0
  47. package/dist/tools/chats.d.ts.map +1 -0
  48. package/dist/tools/chats.js +102 -0
  49. package/dist/tools/chats.js.map +1 -0
  50. package/dist/tools/contacts.d.ts +119 -0
  51. package/dist/tools/contacts.d.ts.map +1 -0
  52. package/dist/tools/contacts.js +136 -0
  53. package/dist/tools/contacts.js.map +1 -0
  54. package/dist/tools/index.d.ts +10 -0
  55. package/dist/tools/index.d.ts.map +1 -0
  56. package/dist/tools/index.js +10 -0
  57. package/dist/tools/index.js.map +1 -0
  58. package/dist/tools/mail.d.ts +138 -0
  59. package/dist/tools/mail.d.ts.map +1 -0
  60. package/dist/tools/mail.js +187 -0
  61. package/dist/tools/mail.js.map +1 -0
  62. package/dist/tools/onedrive.d.ts +107 -0
  63. package/dist/tools/onedrive.d.ts.map +1 -0
  64. package/dist/tools/onedrive.js +136 -0
  65. package/dist/tools/onedrive.js.map +1 -0
  66. package/dist/tools/planner.d.ts +261 -0
  67. package/dist/tools/planner.d.ts.map +1 -0
  68. package/dist/tools/planner.js +401 -0
  69. package/dist/tools/planner.js.map +1 -0
  70. package/dist/tools/sharepoint.d.ts +138 -0
  71. package/dist/tools/sharepoint.d.ts.map +1 -0
  72. package/dist/tools/sharepoint.js +156 -0
  73. package/dist/tools/sharepoint.js.map +1 -0
  74. package/dist/tools/tasks.d.ts +107 -0
  75. package/dist/tools/tasks.d.ts.map +1 -0
  76. package/dist/tools/tasks.js +131 -0
  77. package/dist/tools/tasks.js.map +1 -0
  78. package/dist/tools/teams.d.ts +66 -0
  79. package/dist/tools/teams.d.ts.map +1 -0
  80. package/dist/tools/teams.js +69 -0
  81. package/dist/tools/teams.js.map +1 -0
  82. package/dist/utils/graph-client.d.ts +10 -0
  83. package/dist/utils/graph-client.d.ts.map +1 -0
  84. package/dist/utils/graph-client.js +49 -0
  85. package/dist/utils/graph-client.js.map +1 -0
  86. package/dist/utils/signature.d.ts +2 -0
  87. package/dist/utils/signature.d.ts.map +1 -0
  88. package/dist/utils/signature.js +17 -0
  89. package/dist/utils/signature.js.map +1 -0
  90. package/dist/utils/version.d.ts +2 -0
  91. package/dist/utils/version.d.ts.map +1 -0
  92. package/dist/utils/version.js +20 -0
  93. package/dist/utils/version.js.map +1 -0
  94. package/package.json +51 -0
@@ -0,0 +1,401 @@
1
+ import { z } from 'zod';
2
+ import { graphRequest, graphList } from '../utils/graph-client.js';
3
+ // ============================================================================
4
+ // Schemas
5
+ // ============================================================================
6
+ // Plans (read-only)
7
+ export const listPlansSchema = z.object({
8
+ maxItems: z.number().optional().describe('Maximum number of plans. Default: 50'),
9
+ });
10
+ export const getPlanSchema = z.object({
11
+ planId: z.string().describe('The plan ID'),
12
+ });
13
+ // Buckets
14
+ export const listBucketsSchema = z.object({
15
+ planId: z.string().describe('The plan ID'),
16
+ });
17
+ export const createBucketSchema = z.object({
18
+ planId: z.string().describe('The plan ID'),
19
+ name: z.string().describe('Bucket name'),
20
+ });
21
+ export const updateBucketSchema = z.object({
22
+ bucketId: z.string().describe('The bucket ID'),
23
+ name: z.string().describe('New bucket name'),
24
+ });
25
+ export const deleteBucketSchema = z.object({
26
+ bucketId: z.string().describe('The bucket ID'),
27
+ });
28
+ // Tasks
29
+ export const listPlannerTasksSchema = z.object({
30
+ planId: z.string().describe('The plan ID'),
31
+ bucketId: z.string().optional().describe('Filter by bucket ID'),
32
+ maxItems: z.number().optional().describe('Maximum number of tasks. Default: 100'),
33
+ });
34
+ export const getPlannerTaskSchema = z.object({
35
+ taskId: z.string().describe('The task ID'),
36
+ });
37
+ export const createPlannerTaskSchema = z.object({
38
+ planId: z.string().describe('The plan ID'),
39
+ title: z.string().describe('Task title'),
40
+ bucketId: z.string().optional().describe('Bucket ID to place the task in'),
41
+ assignments: z
42
+ .array(z.string())
43
+ .optional()
44
+ .describe('Email addresses of users to assign'),
45
+ dueDateTime: z.string().optional().describe('Due date (ISO format)'),
46
+ startDateTime: z.string().optional().describe('Start date (ISO format)'),
47
+ priority: z
48
+ .enum(['urgent', 'important', 'medium', 'low'])
49
+ .optional()
50
+ .describe('Task priority'),
51
+ progress: z
52
+ .enum(['notStarted', 'inProgress', 'completed'])
53
+ .optional()
54
+ .describe('Task progress'),
55
+ });
56
+ export const updatePlannerTaskSchema = z.object({
57
+ taskId: z.string().describe('The task ID'),
58
+ title: z.string().optional().describe('New task title'),
59
+ bucketId: z.string().optional().describe('Move to different bucket'),
60
+ assignments: z
61
+ .array(z.string())
62
+ .optional()
63
+ .describe('Email addresses of users to assign (replaces existing)'),
64
+ dueDateTime: z.string().optional().describe('New due date (ISO format)'),
65
+ startDateTime: z.string().optional().describe('New start date (ISO format)'),
66
+ priority: z
67
+ .enum(['urgent', 'important', 'medium', 'low'])
68
+ .optional()
69
+ .describe('New priority'),
70
+ progress: z
71
+ .enum(['notStarted', 'inProgress', 'completed'])
72
+ .optional()
73
+ .describe('New progress'),
74
+ });
75
+ export const deletePlannerTaskSchema = z.object({
76
+ taskId: z.string().describe('The task ID'),
77
+ });
78
+ // Task Details
79
+ export const getPlannerTaskDetailsSchema = z.object({
80
+ taskId: z.string().describe('The task ID'),
81
+ });
82
+ export const updatePlannerTaskDetailsSchema = z.object({
83
+ taskId: z.string().describe('The task ID'),
84
+ description: z.string().optional().describe('Task description'),
85
+ checklist: z
86
+ .array(z.object({
87
+ title: z.string().describe('Checklist item title'),
88
+ isChecked: z.boolean().optional().describe('Whether item is checked'),
89
+ }))
90
+ .optional()
91
+ .describe('Checklist items (replaces existing checklist)'),
92
+ });
93
+ // ============================================================================
94
+ // Helpers
95
+ // ============================================================================
96
+ // Priority mapping: semantic -> numeric
97
+ const PRIORITY_MAP = {
98
+ urgent: 1,
99
+ important: 3,
100
+ medium: 5,
101
+ low: 9,
102
+ };
103
+ // Reverse priority mapping for display
104
+ const PRIORITY_REVERSE = {
105
+ 1: 'urgent',
106
+ 3: 'important',
107
+ 5: 'medium',
108
+ 9: 'low',
109
+ };
110
+ // Progress mapping: semantic -> percentComplete
111
+ const PROGRESS_MAP = {
112
+ notStarted: 0,
113
+ inProgress: 50,
114
+ completed: 100,
115
+ };
116
+ // Reverse progress mapping for display
117
+ function progressToSemantic(percentComplete) {
118
+ if (percentComplete === 0)
119
+ return 'notStarted';
120
+ if (percentComplete === 100)
121
+ return 'completed';
122
+ return 'inProgress';
123
+ }
124
+ // Get ETag for a resource
125
+ async function getETag(endpoint) {
126
+ const resource = await graphRequest(endpoint);
127
+ const etag = resource['@odata.etag'];
128
+ if (!etag) {
129
+ throw new Error('Resource does not have an ETag');
130
+ }
131
+ return etag;
132
+ }
133
+ // Simple cache for user ID lookups within a session
134
+ const userIdCache = new Map();
135
+ // Resolve email to user ID
136
+ async function resolveUserId(emailOrId) {
137
+ // If it looks like a GUID, assume it's already a user ID
138
+ if (/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(emailOrId)) {
139
+ return emailOrId;
140
+ }
141
+ // Check cache
142
+ const cached = userIdCache.get(emailOrId.toLowerCase());
143
+ if (cached) {
144
+ return cached;
145
+ }
146
+ // Look up user by email
147
+ const user = await graphRequest(`/users/${encodeURIComponent(emailOrId)}`);
148
+ userIdCache.set(emailOrId.toLowerCase(), user.id);
149
+ return user.id;
150
+ }
151
+ // ============================================================================
152
+ // Plans (Read-Only)
153
+ // ============================================================================
154
+ export async function listPlans(params) {
155
+ const { maxItems = 50 } = params;
156
+ const plans = await graphList('/me/planner/plans', { maxItems });
157
+ return plans.map((p) => ({
158
+ id: p.id,
159
+ title: p.title,
160
+ owner: p.owner,
161
+ createdDateTime: p.createdDateTime,
162
+ }));
163
+ }
164
+ export async function getPlan(params) {
165
+ const { planId } = params;
166
+ const plan = await graphRequest(`/planner/plans/${planId}`);
167
+ return {
168
+ id: plan.id,
169
+ title: plan.title,
170
+ owner: plan.owner,
171
+ createdDateTime: plan.createdDateTime,
172
+ createdBy: plan.createdBy?.user,
173
+ };
174
+ }
175
+ // ============================================================================
176
+ // Buckets
177
+ // ============================================================================
178
+ export async function listBuckets(params) {
179
+ const { planId } = params;
180
+ const buckets = await graphList(`/planner/plans/${planId}/buckets`);
181
+ return buckets.map((b) => ({
182
+ id: b.id,
183
+ name: b.name,
184
+ planId: b.planId,
185
+ orderHint: b.orderHint,
186
+ }));
187
+ }
188
+ export async function createBucket(params) {
189
+ const { planId, name } = params;
190
+ const bucket = await graphRequest('/planner/buckets', {
191
+ method: 'POST',
192
+ body: { planId, name },
193
+ });
194
+ return {
195
+ success: true,
196
+ bucketId: bucket.id,
197
+ name: bucket.name,
198
+ };
199
+ }
200
+ export async function updateBucket(params) {
201
+ const { bucketId, name } = params;
202
+ // Fetch ETag first
203
+ const etag = await getETag(`/planner/buckets/${bucketId}`);
204
+ const bucket = await graphRequest(`/planner/buckets/${bucketId}`, {
205
+ method: 'PATCH',
206
+ body: { name },
207
+ headers: { 'If-Match': etag },
208
+ });
209
+ return {
210
+ success: true,
211
+ bucketId: bucket.id,
212
+ name: bucket.name,
213
+ };
214
+ }
215
+ export async function deleteBucket(params) {
216
+ const { bucketId } = params;
217
+ // Fetch ETag first
218
+ const etag = await getETag(`/planner/buckets/${bucketId}`);
219
+ await graphRequest(`/planner/buckets/${bucketId}`, {
220
+ method: 'DELETE',
221
+ headers: { 'If-Match': etag },
222
+ });
223
+ return { success: true, message: 'Bucket deleted' };
224
+ }
225
+ // ============================================================================
226
+ // Tasks
227
+ // ============================================================================
228
+ export async function listPlannerTasks(params) {
229
+ const { planId, bucketId, maxItems = 100 } = params;
230
+ let tasks = await graphList(`/planner/plans/${planId}/tasks`, { maxItems });
231
+ // Filter by bucket if specified
232
+ if (bucketId) {
233
+ tasks = tasks.filter((t) => t.bucketId === bucketId);
234
+ }
235
+ return tasks.map((t) => ({
236
+ id: t.id,
237
+ title: t.title,
238
+ bucketId: t.bucketId,
239
+ progress: progressToSemantic(t.percentComplete),
240
+ percentComplete: t.percentComplete,
241
+ priority: PRIORITY_REVERSE[t.priority] || 'medium',
242
+ dueDateTime: t.dueDateTime,
243
+ startDateTime: t.startDateTime,
244
+ assignedTo: Object.keys(t.assignments || {}),
245
+ createdDateTime: t.createdDateTime,
246
+ }));
247
+ }
248
+ export async function getPlannerTask(params) {
249
+ const { taskId } = params;
250
+ const task = await graphRequest(`/planner/tasks/${taskId}`);
251
+ return {
252
+ id: task.id,
253
+ planId: task.planId,
254
+ bucketId: task.bucketId,
255
+ title: task.title,
256
+ progress: progressToSemantic(task.percentComplete),
257
+ percentComplete: task.percentComplete,
258
+ priority: PRIORITY_REVERSE[task.priority] || 'medium',
259
+ dueDateTime: task.dueDateTime,
260
+ startDateTime: task.startDateTime,
261
+ assignedTo: Object.keys(task.assignments || {}),
262
+ createdDateTime: task.createdDateTime,
263
+ };
264
+ }
265
+ export async function createPlannerTask(params) {
266
+ const { planId, title, bucketId, assignments, dueDateTime, startDateTime, priority, progress } = params;
267
+ const body = {
268
+ planId,
269
+ title,
270
+ };
271
+ if (bucketId)
272
+ body.bucketId = bucketId;
273
+ if (dueDateTime)
274
+ body.dueDateTime = dueDateTime;
275
+ if (startDateTime)
276
+ body.startDateTime = startDateTime;
277
+ if (priority)
278
+ body.priority = PRIORITY_MAP[priority];
279
+ if (progress)
280
+ body.percentComplete = PROGRESS_MAP[progress];
281
+ // Resolve assignments to user IDs
282
+ if (assignments && assignments.length > 0) {
283
+ const assignmentObj = {};
284
+ for (const email of assignments) {
285
+ const userId = await resolveUserId(email);
286
+ assignmentObj[userId] = { '@odata.type': '#microsoft.graph.plannerAssignment' };
287
+ }
288
+ body.assignments = assignmentObj;
289
+ }
290
+ const task = await graphRequest('/planner/tasks', {
291
+ method: 'POST',
292
+ body,
293
+ });
294
+ return {
295
+ success: true,
296
+ taskId: task.id,
297
+ title: task.title,
298
+ };
299
+ }
300
+ export async function updatePlannerTask(params) {
301
+ const { taskId, title, bucketId, assignments, dueDateTime, startDateTime, priority, progress } = params;
302
+ // Fetch ETag first
303
+ const etag = await getETag(`/planner/tasks/${taskId}`);
304
+ const body = {};
305
+ if (title)
306
+ body.title = title;
307
+ if (bucketId)
308
+ body.bucketId = bucketId;
309
+ if (dueDateTime)
310
+ body.dueDateTime = dueDateTime;
311
+ if (startDateTime)
312
+ body.startDateTime = startDateTime;
313
+ if (priority)
314
+ body.priority = PRIORITY_MAP[priority];
315
+ if (progress)
316
+ body.percentComplete = PROGRESS_MAP[progress];
317
+ // Resolve assignments to user IDs
318
+ if (assignments) {
319
+ const assignmentObj = {};
320
+ for (const email of assignments) {
321
+ const userId = await resolveUserId(email);
322
+ assignmentObj[userId] = { '@odata.type': '#microsoft.graph.plannerAssignment' };
323
+ }
324
+ body.assignments = assignmentObj;
325
+ }
326
+ const task = await graphRequest(`/planner/tasks/${taskId}`, {
327
+ method: 'PATCH',
328
+ body,
329
+ headers: { 'If-Match': etag },
330
+ });
331
+ return {
332
+ success: true,
333
+ taskId: task.id,
334
+ title: task.title,
335
+ };
336
+ }
337
+ export async function deletePlannerTask(params) {
338
+ const { taskId } = params;
339
+ // Fetch ETag first
340
+ const etag = await getETag(`/planner/tasks/${taskId}`);
341
+ await graphRequest(`/planner/tasks/${taskId}`, {
342
+ method: 'DELETE',
343
+ headers: { 'If-Match': etag },
344
+ });
345
+ return { success: true, message: 'Task deleted' };
346
+ }
347
+ // ============================================================================
348
+ // Task Details
349
+ // ============================================================================
350
+ export async function getPlannerTaskDetails(params) {
351
+ const { taskId } = params;
352
+ const details = await graphRequest(`/planner/tasks/${taskId}/details`);
353
+ // Transform checklist to array for easier consumption
354
+ const checklistItems = Object.entries(details.checklist || {}).map(([id, item]) => ({
355
+ id,
356
+ title: item.title,
357
+ isChecked: item.isChecked,
358
+ }));
359
+ // Transform references to array
360
+ const referenceItems = Object.entries(details.references || {}).map(([url, ref]) => ({
361
+ url: decodeURIComponent(url),
362
+ alias: ref.alias,
363
+ type: ref.type,
364
+ }));
365
+ return {
366
+ taskId,
367
+ description: details.description,
368
+ checklist: checklistItems,
369
+ references: referenceItems,
370
+ };
371
+ }
372
+ export async function updatePlannerTaskDetails(params) {
373
+ const { taskId, description, checklist } = params;
374
+ // Fetch ETag first
375
+ const etag = await getETag(`/planner/tasks/${taskId}/details`);
376
+ const body = {};
377
+ if (description !== undefined) {
378
+ body.description = description;
379
+ }
380
+ // Transform checklist array to object format
381
+ if (checklist) {
382
+ const checklistObj = {};
383
+ checklist.forEach((item, index) => {
384
+ // Generate a simple GUID-like key for new items
385
+ const key = crypto.randomUUID();
386
+ checklistObj[key] = {
387
+ '@odata.type': 'microsoft.graph.plannerChecklistItem',
388
+ title: item.title,
389
+ isChecked: item.isChecked ?? false,
390
+ };
391
+ });
392
+ body.checklist = checklistObj;
393
+ }
394
+ await graphRequest(`/planner/tasks/${taskId}/details`, {
395
+ method: 'PATCH',
396
+ body,
397
+ headers: { 'If-Match': etag },
398
+ });
399
+ return { success: true, message: 'Task details updated' };
400
+ }
401
+ //# sourceMappingURL=planner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"planner.js","sourceRoot":"","sources":["../../src/tools/planner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,138 @@
1
+ import { z } from 'zod';
2
+ export declare const listSitesSchema: z.ZodObject<{
3
+ maxItems: z.ZodOptional<z.ZodNumber>;
4
+ search: z.ZodOptional<z.ZodString>;
5
+ }, "strip", z.ZodTypeAny, {
6
+ search?: string | undefined;
7
+ maxItems?: number | undefined;
8
+ }, {
9
+ search?: string | undefined;
10
+ maxItems?: number | undefined;
11
+ }>;
12
+ export declare const getSiteSchema: z.ZodObject<{
13
+ siteId: z.ZodString;
14
+ }, "strip", z.ZodTypeAny, {
15
+ siteId: string;
16
+ }, {
17
+ siteId: string;
18
+ }>;
19
+ export declare const listDrivesSchema: z.ZodObject<{
20
+ siteId: z.ZodString;
21
+ maxItems: z.ZodOptional<z.ZodNumber>;
22
+ }, "strip", z.ZodTypeAny, {
23
+ siteId: string;
24
+ maxItems?: number | undefined;
25
+ }, {
26
+ siteId: string;
27
+ maxItems?: number | undefined;
28
+ }>;
29
+ export declare const listDriveFilesSchema: z.ZodObject<{
30
+ driveId: z.ZodString;
31
+ path: z.ZodOptional<z.ZodString>;
32
+ maxItems: z.ZodOptional<z.ZodNumber>;
33
+ }, "strip", z.ZodTypeAny, {
34
+ driveId: string;
35
+ maxItems?: number | undefined;
36
+ path?: string | undefined;
37
+ }, {
38
+ driveId: string;
39
+ maxItems?: number | undefined;
40
+ path?: string | undefined;
41
+ }>;
42
+ export declare const getDriveFileSchema: z.ZodObject<{
43
+ driveId: z.ZodString;
44
+ path: z.ZodString;
45
+ }, "strip", z.ZodTypeAny, {
46
+ path: string;
47
+ driveId: string;
48
+ }, {
49
+ path: string;
50
+ driveId: string;
51
+ }>;
52
+ export declare const readDriveFileSchema: z.ZodObject<{
53
+ driveId: z.ZodString;
54
+ path: z.ZodString;
55
+ }, "strip", z.ZodTypeAny, {
56
+ path: string;
57
+ driveId: string;
58
+ }, {
59
+ path: string;
60
+ driveId: string;
61
+ }>;
62
+ export declare const searchDriveFilesSchema: z.ZodObject<{
63
+ driveId: z.ZodString;
64
+ query: z.ZodString;
65
+ maxItems: z.ZodOptional<z.ZodNumber>;
66
+ }, "strip", z.ZodTypeAny, {
67
+ query: string;
68
+ driveId: string;
69
+ maxItems?: number | undefined;
70
+ }, {
71
+ query: string;
72
+ driveId: string;
73
+ maxItems?: number | undefined;
74
+ }>;
75
+ export declare function listSites(params: z.infer<typeof listSitesSchema>): Promise<{
76
+ id: string;
77
+ name: string;
78
+ displayName: string;
79
+ webUrl: string;
80
+ description: string | undefined;
81
+ created: string;
82
+ modified: string;
83
+ }[]>;
84
+ export declare function getSite(params: z.infer<typeof getSiteSchema>): Promise<{
85
+ id: string;
86
+ name: string;
87
+ displayName: string;
88
+ webUrl: string;
89
+ description: string | undefined;
90
+ created: string;
91
+ modified: string;
92
+ }>;
93
+ export declare function listDrives(params: z.infer<typeof listDrivesSchema>): Promise<{
94
+ id: string;
95
+ name: string;
96
+ type: string;
97
+ webUrl: string;
98
+ quota: {
99
+ total: number;
100
+ used: number;
101
+ remaining: number;
102
+ } | undefined;
103
+ }[]>;
104
+ export declare function listDriveFiles(params: z.infer<typeof listDriveFilesSchema>): Promise<{
105
+ id: string;
106
+ name: string;
107
+ type: string;
108
+ size: number | undefined;
109
+ mimeType: string | undefined;
110
+ childCount: number | undefined;
111
+ created: string;
112
+ modified: string;
113
+ webUrl: string;
114
+ }[]>;
115
+ export declare function getDriveFile(params: z.infer<typeof getDriveFileSchema>): Promise<{
116
+ id: string;
117
+ name: string;
118
+ size: number | undefined;
119
+ mimeType: string | undefined;
120
+ created: string;
121
+ modified: string;
122
+ webUrl: string;
123
+ }>;
124
+ export declare function readDriveFile(params: z.infer<typeof readDriveFileSchema>): Promise<{
125
+ name: string;
126
+ size: number | undefined;
127
+ mimeType: string | undefined;
128
+ content: string;
129
+ }>;
130
+ export declare function searchDriveFiles(params: z.infer<typeof searchDriveFilesSchema>): Promise<{
131
+ id: string;
132
+ name: string;
133
+ type: string;
134
+ size: number | undefined;
135
+ mimeType: string | undefined;
136
+ webUrl: string;
137
+ }[]>;
138
+ //# sourceMappingURL=sharepoint.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sharepoint.d.ts","sourceRoot":"","sources":["../../src/tools/sharepoint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAuCxB,eAAO,MAAM,eAAe;;;;;;;;;EAG1B,CAAC;AAEH,eAAO,MAAM,aAAa;;;;;;EAExB,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;EAG3B,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAI/B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;EAG7B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;EAG9B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;EAIjC,CAAC;AAIH,wBAAsB,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC;;;;;;;;KAsBtE;AAED,wBAAsB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC;;;;;;;;GAgBlE;AAED,wBAAsB,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC;;;;;;;;;;KAoBxE;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC;;;;;;;;;;KAsBhF;AAED,wBAAsB,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC;;;;;;;;GAgB5E;AAED,wBAAsB,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC;;;;;GAgC9E;AAED,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC;;;;;;;KAepF"}