google-apis-drive_v3 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,28 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ module Google
16
+ module Apis
17
+ module DriveV3
18
+ # Version of the google-apis-drive_v3 gem
19
+ GEM_VERSION = "0.1.0"
20
+
21
+ # Version of the code generator used to generate this client
22
+ GENERATOR_VERSION = "0.1.1"
23
+
24
+ # Revision of the discovery document this client was generated from
25
+ REVISION = "20201130"
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,927 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module DriveV3
24
+
25
+ class About
26
+ class Representation < Google::Apis::Core::JsonRepresentation; end
27
+
28
+ class DriveTheme
29
+ class Representation < Google::Apis::Core::JsonRepresentation; end
30
+
31
+ include Google::Apis::Core::JsonObjectSupport
32
+ end
33
+
34
+ class StorageQuota
35
+ class Representation < Google::Apis::Core::JsonRepresentation; end
36
+
37
+ include Google::Apis::Core::JsonObjectSupport
38
+ end
39
+
40
+ class TeamDriveTheme
41
+ class Representation < Google::Apis::Core::JsonRepresentation; end
42
+
43
+ include Google::Apis::Core::JsonObjectSupport
44
+ end
45
+
46
+ include Google::Apis::Core::JsonObjectSupport
47
+ end
48
+
49
+ class Change
50
+ class Representation < Google::Apis::Core::JsonRepresentation; end
51
+
52
+ include Google::Apis::Core::JsonObjectSupport
53
+ end
54
+
55
+ class ChangeList
56
+ class Representation < Google::Apis::Core::JsonRepresentation; end
57
+
58
+ include Google::Apis::Core::JsonObjectSupport
59
+ end
60
+
61
+ class Channel
62
+ class Representation < Google::Apis::Core::JsonRepresentation; end
63
+
64
+ include Google::Apis::Core::JsonObjectSupport
65
+ end
66
+
67
+ class Comment
68
+ class Representation < Google::Apis::Core::JsonRepresentation; end
69
+
70
+ class QuotedFileContent
71
+ class Representation < Google::Apis::Core::JsonRepresentation; end
72
+
73
+ include Google::Apis::Core::JsonObjectSupport
74
+ end
75
+
76
+ include Google::Apis::Core::JsonObjectSupport
77
+ end
78
+
79
+ class CommentList
80
+ class Representation < Google::Apis::Core::JsonRepresentation; end
81
+
82
+ include Google::Apis::Core::JsonObjectSupport
83
+ end
84
+
85
+ class ContentRestriction
86
+ class Representation < Google::Apis::Core::JsonRepresentation; end
87
+
88
+ include Google::Apis::Core::JsonObjectSupport
89
+ end
90
+
91
+ class Drive
92
+ class Representation < Google::Apis::Core::JsonRepresentation; end
93
+
94
+ class BackgroundImageFile
95
+ class Representation < Google::Apis::Core::JsonRepresentation; end
96
+
97
+ include Google::Apis::Core::JsonObjectSupport
98
+ end
99
+
100
+ class Capabilities
101
+ class Representation < Google::Apis::Core::JsonRepresentation; end
102
+
103
+ include Google::Apis::Core::JsonObjectSupport
104
+ end
105
+
106
+ class Restrictions
107
+ class Representation < Google::Apis::Core::JsonRepresentation; end
108
+
109
+ include Google::Apis::Core::JsonObjectSupport
110
+ end
111
+
112
+ include Google::Apis::Core::JsonObjectSupport
113
+ end
114
+
115
+ class DriveList
116
+ class Representation < Google::Apis::Core::JsonRepresentation; end
117
+
118
+ include Google::Apis::Core::JsonObjectSupport
119
+ end
120
+
121
+ class File
122
+ class Representation < Google::Apis::Core::JsonRepresentation; end
123
+
124
+ class Capabilities
125
+ class Representation < Google::Apis::Core::JsonRepresentation; end
126
+
127
+ include Google::Apis::Core::JsonObjectSupport
128
+ end
129
+
130
+ class ContentHints
131
+ class Representation < Google::Apis::Core::JsonRepresentation; end
132
+
133
+ class Thumbnail
134
+ class Representation < Google::Apis::Core::JsonRepresentation; end
135
+
136
+ include Google::Apis::Core::JsonObjectSupport
137
+ end
138
+
139
+ include Google::Apis::Core::JsonObjectSupport
140
+ end
141
+
142
+ class ImageMediaMetadata
143
+ class Representation < Google::Apis::Core::JsonRepresentation; end
144
+
145
+ class Location
146
+ class Representation < Google::Apis::Core::JsonRepresentation; end
147
+
148
+ include Google::Apis::Core::JsonObjectSupport
149
+ end
150
+
151
+ include Google::Apis::Core::JsonObjectSupport
152
+ end
153
+
154
+ class ShortcutDetails
155
+ class Representation < Google::Apis::Core::JsonRepresentation; end
156
+
157
+ include Google::Apis::Core::JsonObjectSupport
158
+ end
159
+
160
+ class VideoMediaMetadata
161
+ class Representation < Google::Apis::Core::JsonRepresentation; end
162
+
163
+ include Google::Apis::Core::JsonObjectSupport
164
+ end
165
+
166
+ include Google::Apis::Core::JsonObjectSupport
167
+ end
168
+
169
+ class FileList
170
+ class Representation < Google::Apis::Core::JsonRepresentation; end
171
+
172
+ include Google::Apis::Core::JsonObjectSupport
173
+ end
174
+
175
+ class GeneratedIds
176
+ class Representation < Google::Apis::Core::JsonRepresentation; end
177
+
178
+ include Google::Apis::Core::JsonObjectSupport
179
+ end
180
+
181
+ class Permission
182
+ class Representation < Google::Apis::Core::JsonRepresentation; end
183
+
184
+ class PermissionDetail
185
+ class Representation < Google::Apis::Core::JsonRepresentation; end
186
+
187
+ include Google::Apis::Core::JsonObjectSupport
188
+ end
189
+
190
+ class TeamDrivePermissionDetail
191
+ class Representation < Google::Apis::Core::JsonRepresentation; end
192
+
193
+ include Google::Apis::Core::JsonObjectSupport
194
+ end
195
+
196
+ include Google::Apis::Core::JsonObjectSupport
197
+ end
198
+
199
+ class PermissionList
200
+ class Representation < Google::Apis::Core::JsonRepresentation; end
201
+
202
+ include Google::Apis::Core::JsonObjectSupport
203
+ end
204
+
205
+ class Reply
206
+ class Representation < Google::Apis::Core::JsonRepresentation; end
207
+
208
+ include Google::Apis::Core::JsonObjectSupport
209
+ end
210
+
211
+ class ReplyList
212
+ class Representation < Google::Apis::Core::JsonRepresentation; end
213
+
214
+ include Google::Apis::Core::JsonObjectSupport
215
+ end
216
+
217
+ class Revision
218
+ class Representation < Google::Apis::Core::JsonRepresentation; end
219
+
220
+ include Google::Apis::Core::JsonObjectSupport
221
+ end
222
+
223
+ class RevisionList
224
+ class Representation < Google::Apis::Core::JsonRepresentation; end
225
+
226
+ include Google::Apis::Core::JsonObjectSupport
227
+ end
228
+
229
+ class StartPageToken
230
+ class Representation < Google::Apis::Core::JsonRepresentation; end
231
+
232
+ include Google::Apis::Core::JsonObjectSupport
233
+ end
234
+
235
+ class TeamDrive
236
+ class Representation < Google::Apis::Core::JsonRepresentation; end
237
+
238
+ class BackgroundImageFile
239
+ class Representation < Google::Apis::Core::JsonRepresentation; end
240
+
241
+ include Google::Apis::Core::JsonObjectSupport
242
+ end
243
+
244
+ class Capabilities
245
+ class Representation < Google::Apis::Core::JsonRepresentation; end
246
+
247
+ include Google::Apis::Core::JsonObjectSupport
248
+ end
249
+
250
+ class Restrictions
251
+ class Representation < Google::Apis::Core::JsonRepresentation; end
252
+
253
+ include Google::Apis::Core::JsonObjectSupport
254
+ end
255
+
256
+ include Google::Apis::Core::JsonObjectSupport
257
+ end
258
+
259
+ class TeamDriveList
260
+ class Representation < Google::Apis::Core::JsonRepresentation; end
261
+
262
+ include Google::Apis::Core::JsonObjectSupport
263
+ end
264
+
265
+ class User
266
+ class Representation < Google::Apis::Core::JsonRepresentation; end
267
+
268
+ include Google::Apis::Core::JsonObjectSupport
269
+ end
270
+
271
+ class About
272
+ # @private
273
+ class Representation < Google::Apis::Core::JsonRepresentation
274
+ property :app_installed, as: 'appInstalled'
275
+ property :can_create_drives, as: 'canCreateDrives'
276
+ property :can_create_team_drives, as: 'canCreateTeamDrives'
277
+ collection :drive_themes, as: 'driveThemes', class: Google::Apis::DriveV3::About::DriveTheme, decorator: Google::Apis::DriveV3::About::DriveTheme::Representation
278
+
279
+ hash :export_formats, as: 'exportFormats', :class => Array do
280
+ include Representable::JSON::Collection
281
+ items
282
+ end
283
+
284
+ collection :folder_color_palette, as: 'folderColorPalette'
285
+ hash :import_formats, as: 'importFormats', :class => Array do
286
+ include Representable::JSON::Collection
287
+ items
288
+ end
289
+
290
+ property :kind, as: 'kind'
291
+ hash :max_import_sizes, as: 'maxImportSizes'
292
+ property :max_upload_size, :numeric_string => true, as: 'maxUploadSize'
293
+ property :storage_quota, as: 'storageQuota', class: Google::Apis::DriveV3::About::StorageQuota, decorator: Google::Apis::DriveV3::About::StorageQuota::Representation
294
+
295
+ collection :team_drive_themes, as: 'teamDriveThemes', class: Google::Apis::DriveV3::About::TeamDriveTheme, decorator: Google::Apis::DriveV3::About::TeamDriveTheme::Representation
296
+
297
+ property :user, as: 'user', class: Google::Apis::DriveV3::User, decorator: Google::Apis::DriveV3::User::Representation
298
+
299
+ end
300
+
301
+ class DriveTheme
302
+ # @private
303
+ class Representation < Google::Apis::Core::JsonRepresentation
304
+ property :background_image_link, as: 'backgroundImageLink'
305
+ property :color_rgb, as: 'colorRgb'
306
+ property :id, as: 'id'
307
+ end
308
+ end
309
+
310
+ class StorageQuota
311
+ # @private
312
+ class Representation < Google::Apis::Core::JsonRepresentation
313
+ property :limit, :numeric_string => true, as: 'limit'
314
+ property :usage, :numeric_string => true, as: 'usage'
315
+ property :usage_in_drive, :numeric_string => true, as: 'usageInDrive'
316
+ property :usage_in_drive_trash, :numeric_string => true, as: 'usageInDriveTrash'
317
+ end
318
+ end
319
+
320
+ class TeamDriveTheme
321
+ # @private
322
+ class Representation < Google::Apis::Core::JsonRepresentation
323
+ property :background_image_link, as: 'backgroundImageLink'
324
+ property :color_rgb, as: 'colorRgb'
325
+ property :id, as: 'id'
326
+ end
327
+ end
328
+ end
329
+
330
+ class Change
331
+ # @private
332
+ class Representation < Google::Apis::Core::JsonRepresentation
333
+ property :change_type, as: 'changeType'
334
+ property :drive, as: 'drive', class: Google::Apis::DriveV3::Drive, decorator: Google::Apis::DriveV3::Drive::Representation
335
+
336
+ property :drive_id, as: 'driveId'
337
+ property :file, as: 'file', class: Google::Apis::DriveV3::File, decorator: Google::Apis::DriveV3::File::Representation
338
+
339
+ property :file_id, as: 'fileId'
340
+ property :kind, as: 'kind'
341
+ property :removed, as: 'removed'
342
+ property :team_drive, as: 'teamDrive', class: Google::Apis::DriveV3::TeamDrive, decorator: Google::Apis::DriveV3::TeamDrive::Representation
343
+
344
+ property :team_drive_id, as: 'teamDriveId'
345
+ property :time, as: 'time', type: DateTime
346
+
347
+ property :type, as: 'type'
348
+ end
349
+ end
350
+
351
+ class ChangeList
352
+ # @private
353
+ class Representation < Google::Apis::Core::JsonRepresentation
354
+ collection :changes, as: 'changes', class: Google::Apis::DriveV3::Change, decorator: Google::Apis::DriveV3::Change::Representation
355
+
356
+ property :kind, as: 'kind'
357
+ property :new_start_page_token, as: 'newStartPageToken'
358
+ property :next_page_token, as: 'nextPageToken'
359
+ end
360
+ end
361
+
362
+ class Channel
363
+ # @private
364
+ class Representation < Google::Apis::Core::JsonRepresentation
365
+ property :address, as: 'address'
366
+ property :expiration, :numeric_string => true, as: 'expiration'
367
+ property :id, as: 'id'
368
+ property :kind, as: 'kind'
369
+ hash :params, as: 'params'
370
+ property :payload, as: 'payload'
371
+ property :resource_id, as: 'resourceId'
372
+ property :resource_uri, as: 'resourceUri'
373
+ property :token, as: 'token'
374
+ property :type, as: 'type'
375
+ end
376
+ end
377
+
378
+ class Comment
379
+ # @private
380
+ class Representation < Google::Apis::Core::JsonRepresentation
381
+ property :anchor, as: 'anchor'
382
+ property :author, as: 'author', class: Google::Apis::DriveV3::User, decorator: Google::Apis::DriveV3::User::Representation
383
+
384
+ property :content, as: 'content'
385
+ property :created_time, as: 'createdTime', type: DateTime
386
+
387
+ property :deleted, as: 'deleted'
388
+ property :html_content, as: 'htmlContent'
389
+ property :id, as: 'id'
390
+ property :kind, as: 'kind'
391
+ property :modified_time, as: 'modifiedTime', type: DateTime
392
+
393
+ property :quoted_file_content, as: 'quotedFileContent', class: Google::Apis::DriveV3::Comment::QuotedFileContent, decorator: Google::Apis::DriveV3::Comment::QuotedFileContent::Representation
394
+
395
+ collection :replies, as: 'replies', class: Google::Apis::DriveV3::Reply, decorator: Google::Apis::DriveV3::Reply::Representation
396
+
397
+ property :resolved, as: 'resolved'
398
+ end
399
+
400
+ class QuotedFileContent
401
+ # @private
402
+ class Representation < Google::Apis::Core::JsonRepresentation
403
+ property :mime_type, as: 'mimeType'
404
+ property :value, as: 'value'
405
+ end
406
+ end
407
+ end
408
+
409
+ class CommentList
410
+ # @private
411
+ class Representation < Google::Apis::Core::JsonRepresentation
412
+ collection :comments, as: 'comments', class: Google::Apis::DriveV3::Comment, decorator: Google::Apis::DriveV3::Comment::Representation
413
+
414
+ property :kind, as: 'kind'
415
+ property :next_page_token, as: 'nextPageToken'
416
+ end
417
+ end
418
+
419
+ class ContentRestriction
420
+ # @private
421
+ class Representation < Google::Apis::Core::JsonRepresentation
422
+ property :read_only, as: 'readOnly'
423
+ property :reason, as: 'reason'
424
+ property :restricting_user, as: 'restrictingUser', class: Google::Apis::DriveV3::User, decorator: Google::Apis::DriveV3::User::Representation
425
+
426
+ property :restriction_time, as: 'restrictionTime', type: DateTime
427
+
428
+ property :type, as: 'type'
429
+ end
430
+ end
431
+
432
+ class Drive
433
+ # @private
434
+ class Representation < Google::Apis::Core::JsonRepresentation
435
+ property :background_image_file, as: 'backgroundImageFile', class: Google::Apis::DriveV3::Drive::BackgroundImageFile, decorator: Google::Apis::DriveV3::Drive::BackgroundImageFile::Representation
436
+
437
+ property :background_image_link, as: 'backgroundImageLink'
438
+ property :capabilities, as: 'capabilities', class: Google::Apis::DriveV3::Drive::Capabilities, decorator: Google::Apis::DriveV3::Drive::Capabilities::Representation
439
+
440
+ property :color_rgb, as: 'colorRgb'
441
+ property :created_time, as: 'createdTime', type: DateTime
442
+
443
+ property :hidden, as: 'hidden'
444
+ property :id, as: 'id'
445
+ property :kind, as: 'kind'
446
+ property :name, as: 'name'
447
+ property :restrictions, as: 'restrictions', class: Google::Apis::DriveV3::Drive::Restrictions, decorator: Google::Apis::DriveV3::Drive::Restrictions::Representation
448
+
449
+ property :theme_id, as: 'themeId'
450
+ end
451
+
452
+ class BackgroundImageFile
453
+ # @private
454
+ class Representation < Google::Apis::Core::JsonRepresentation
455
+ property :id, as: 'id'
456
+ property :width, as: 'width'
457
+ property :x_coordinate, as: 'xCoordinate'
458
+ property :y_coordinate, as: 'yCoordinate'
459
+ end
460
+ end
461
+
462
+ class Capabilities
463
+ # @private
464
+ class Representation < Google::Apis::Core::JsonRepresentation
465
+ property :can_add_children, as: 'canAddChildren'
466
+ property :can_change_copy_requires_writer_permission_restriction, as: 'canChangeCopyRequiresWriterPermissionRestriction'
467
+ property :can_change_domain_users_only_restriction, as: 'canChangeDomainUsersOnlyRestriction'
468
+ property :can_change_drive_background, as: 'canChangeDriveBackground'
469
+ property :can_change_drive_members_only_restriction, as: 'canChangeDriveMembersOnlyRestriction'
470
+ property :can_comment, as: 'canComment'
471
+ property :can_copy, as: 'canCopy'
472
+ property :can_delete_children, as: 'canDeleteChildren'
473
+ property :can_delete_drive, as: 'canDeleteDrive'
474
+ property :can_download, as: 'canDownload'
475
+ property :can_edit, as: 'canEdit'
476
+ property :can_list_children, as: 'canListChildren'
477
+ property :can_manage_members, as: 'canManageMembers'
478
+ property :can_read_revisions, as: 'canReadRevisions'
479
+ property :can_rename, as: 'canRename'
480
+ property :can_rename_drive, as: 'canRenameDrive'
481
+ property :can_share, as: 'canShare'
482
+ property :can_trash_children, as: 'canTrashChildren'
483
+ end
484
+ end
485
+
486
+ class Restrictions
487
+ # @private
488
+ class Representation < Google::Apis::Core::JsonRepresentation
489
+ property :admin_managed_restrictions, as: 'adminManagedRestrictions'
490
+ property :copy_requires_writer_permission, as: 'copyRequiresWriterPermission'
491
+ property :domain_users_only, as: 'domainUsersOnly'
492
+ property :drive_members_only, as: 'driveMembersOnly'
493
+ end
494
+ end
495
+ end
496
+
497
+ class DriveList
498
+ # @private
499
+ class Representation < Google::Apis::Core::JsonRepresentation
500
+ collection :drives, as: 'drives', class: Google::Apis::DriveV3::Drive, decorator: Google::Apis::DriveV3::Drive::Representation
501
+
502
+ property :kind, as: 'kind'
503
+ property :next_page_token, as: 'nextPageToken'
504
+ end
505
+ end
506
+
507
+ class File
508
+ # @private
509
+ class Representation < Google::Apis::Core::JsonRepresentation
510
+ hash :app_properties, as: 'appProperties'
511
+ property :capabilities, as: 'capabilities', class: Google::Apis::DriveV3::File::Capabilities, decorator: Google::Apis::DriveV3::File::Capabilities::Representation
512
+
513
+ property :content_hints, as: 'contentHints', class: Google::Apis::DriveV3::File::ContentHints, decorator: Google::Apis::DriveV3::File::ContentHints::Representation
514
+
515
+ collection :content_restrictions, as: 'contentRestrictions', class: Google::Apis::DriveV3::ContentRestriction, decorator: Google::Apis::DriveV3::ContentRestriction::Representation
516
+
517
+ property :copy_requires_writer_permission, as: 'copyRequiresWriterPermission'
518
+ property :created_time, as: 'createdTime', type: DateTime
519
+
520
+ property :description, as: 'description'
521
+ property :drive_id, as: 'driveId'
522
+ property :explicitly_trashed, as: 'explicitlyTrashed'
523
+ hash :export_links, as: 'exportLinks'
524
+ property :file_extension, as: 'fileExtension'
525
+ property :folder_color_rgb, as: 'folderColorRgb'
526
+ property :full_file_extension, as: 'fullFileExtension'
527
+ property :has_augmented_permissions, as: 'hasAugmentedPermissions'
528
+ property :has_thumbnail, as: 'hasThumbnail'
529
+ property :head_revision_id, as: 'headRevisionId'
530
+ property :icon_link, as: 'iconLink'
531
+ property :id, as: 'id'
532
+ property :image_media_metadata, as: 'imageMediaMetadata', class: Google::Apis::DriveV3::File::ImageMediaMetadata, decorator: Google::Apis::DriveV3::File::ImageMediaMetadata::Representation
533
+
534
+ property :is_app_authorized, as: 'isAppAuthorized'
535
+ property :kind, as: 'kind'
536
+ property :last_modifying_user, as: 'lastModifyingUser', class: Google::Apis::DriveV3::User, decorator: Google::Apis::DriveV3::User::Representation
537
+
538
+ property :md5_checksum, as: 'md5Checksum'
539
+ property :mime_type, as: 'mimeType'
540
+ property :modified_by_me, as: 'modifiedByMe'
541
+ property :modified_by_me_time, as: 'modifiedByMeTime', type: DateTime
542
+
543
+ property :modified_time, as: 'modifiedTime', type: DateTime
544
+
545
+ property :name, as: 'name'
546
+ property :original_filename, as: 'originalFilename'
547
+ property :owned_by_me, as: 'ownedByMe'
548
+ collection :owners, as: 'owners', class: Google::Apis::DriveV3::User, decorator: Google::Apis::DriveV3::User::Representation
549
+
550
+ collection :parents, as: 'parents'
551
+ collection :permission_ids, as: 'permissionIds'
552
+ collection :permissions, as: 'permissions', class: Google::Apis::DriveV3::Permission, decorator: Google::Apis::DriveV3::Permission::Representation
553
+
554
+ hash :properties, as: 'properties'
555
+ property :quota_bytes_used, :numeric_string => true, as: 'quotaBytesUsed'
556
+ property :shared, as: 'shared'
557
+ property :shared_with_me_time, as: 'sharedWithMeTime', type: DateTime
558
+
559
+ property :sharing_user, as: 'sharingUser', class: Google::Apis::DriveV3::User, decorator: Google::Apis::DriveV3::User::Representation
560
+
561
+ property :shortcut_details, as: 'shortcutDetails', class: Google::Apis::DriveV3::File::ShortcutDetails, decorator: Google::Apis::DriveV3::File::ShortcutDetails::Representation
562
+
563
+ property :size, :numeric_string => true, as: 'size'
564
+ collection :spaces, as: 'spaces'
565
+ property :starred, as: 'starred'
566
+ property :team_drive_id, as: 'teamDriveId'
567
+ property :thumbnail_link, as: 'thumbnailLink'
568
+ property :thumbnail_version, :numeric_string => true, as: 'thumbnailVersion'
569
+ property :trashed, as: 'trashed'
570
+ property :trashed_time, as: 'trashedTime', type: DateTime
571
+
572
+ property :trashing_user, as: 'trashingUser', class: Google::Apis::DriveV3::User, decorator: Google::Apis::DriveV3::User::Representation
573
+
574
+ property :version, :numeric_string => true, as: 'version'
575
+ property :video_media_metadata, as: 'videoMediaMetadata', class: Google::Apis::DriveV3::File::VideoMediaMetadata, decorator: Google::Apis::DriveV3::File::VideoMediaMetadata::Representation
576
+
577
+ property :viewed_by_me, as: 'viewedByMe'
578
+ property :viewed_by_me_time, as: 'viewedByMeTime', type: DateTime
579
+
580
+ property :viewers_can_copy_content, as: 'viewersCanCopyContent'
581
+ property :web_content_link, as: 'webContentLink'
582
+ property :web_view_link, as: 'webViewLink'
583
+ property :writers_can_share, as: 'writersCanShare'
584
+ end
585
+
586
+ class Capabilities
587
+ # @private
588
+ class Representation < Google::Apis::Core::JsonRepresentation
589
+ property :can_add_children, as: 'canAddChildren'
590
+ property :can_add_folder_from_another_drive, as: 'canAddFolderFromAnotherDrive'
591
+ property :can_add_my_drive_parent, as: 'canAddMyDriveParent'
592
+ property :can_change_copy_requires_writer_permission, as: 'canChangeCopyRequiresWriterPermission'
593
+ property :can_change_viewers_can_copy_content, as: 'canChangeViewersCanCopyContent'
594
+ property :can_comment, as: 'canComment'
595
+ property :can_copy, as: 'canCopy'
596
+ property :can_delete, as: 'canDelete'
597
+ property :can_delete_children, as: 'canDeleteChildren'
598
+ property :can_download, as: 'canDownload'
599
+ property :can_edit, as: 'canEdit'
600
+ property :can_list_children, as: 'canListChildren'
601
+ property :can_modify_content, as: 'canModifyContent'
602
+ property :can_modify_content_restriction, as: 'canModifyContentRestriction'
603
+ property :can_move_children_out_of_drive, as: 'canMoveChildrenOutOfDrive'
604
+ property :can_move_children_out_of_team_drive, as: 'canMoveChildrenOutOfTeamDrive'
605
+ property :can_move_children_within_drive, as: 'canMoveChildrenWithinDrive'
606
+ property :can_move_children_within_team_drive, as: 'canMoveChildrenWithinTeamDrive'
607
+ property :can_move_item_into_team_drive, as: 'canMoveItemIntoTeamDrive'
608
+ property :can_move_item_out_of_drive, as: 'canMoveItemOutOfDrive'
609
+ property :can_move_item_out_of_team_drive, as: 'canMoveItemOutOfTeamDrive'
610
+ property :can_move_item_within_drive, as: 'canMoveItemWithinDrive'
611
+ property :can_move_item_within_team_drive, as: 'canMoveItemWithinTeamDrive'
612
+ property :can_move_team_drive_item, as: 'canMoveTeamDriveItem'
613
+ property :can_read_drive, as: 'canReadDrive'
614
+ property :can_read_revisions, as: 'canReadRevisions'
615
+ property :can_read_team_drive, as: 'canReadTeamDrive'
616
+ property :can_remove_children, as: 'canRemoveChildren'
617
+ property :can_remove_my_drive_parent, as: 'canRemoveMyDriveParent'
618
+ property :can_rename, as: 'canRename'
619
+ property :can_share, as: 'canShare'
620
+ property :can_trash, as: 'canTrash'
621
+ property :can_trash_children, as: 'canTrashChildren'
622
+ property :can_untrash, as: 'canUntrash'
623
+ end
624
+ end
625
+
626
+ class ContentHints
627
+ # @private
628
+ class Representation < Google::Apis::Core::JsonRepresentation
629
+ property :indexable_text, as: 'indexableText'
630
+ property :thumbnail, as: 'thumbnail', class: Google::Apis::DriveV3::File::ContentHints::Thumbnail, decorator: Google::Apis::DriveV3::File::ContentHints::Thumbnail::Representation
631
+
632
+ end
633
+
634
+ class Thumbnail
635
+ # @private
636
+ class Representation < Google::Apis::Core::JsonRepresentation
637
+ property :image, :base64 => true, as: 'image'
638
+ property :mime_type, as: 'mimeType'
639
+ end
640
+ end
641
+ end
642
+
643
+ class ImageMediaMetadata
644
+ # @private
645
+ class Representation < Google::Apis::Core::JsonRepresentation
646
+ property :aperture, as: 'aperture'
647
+ property :camera_make, as: 'cameraMake'
648
+ property :camera_model, as: 'cameraModel'
649
+ property :color_space, as: 'colorSpace'
650
+ property :exposure_bias, as: 'exposureBias'
651
+ property :exposure_mode, as: 'exposureMode'
652
+ property :exposure_time, as: 'exposureTime'
653
+ property :flash_used, as: 'flashUsed'
654
+ property :focal_length, as: 'focalLength'
655
+ property :height, as: 'height'
656
+ property :iso_speed, as: 'isoSpeed'
657
+ property :lens, as: 'lens'
658
+ property :location, as: 'location', class: Google::Apis::DriveV3::File::ImageMediaMetadata::Location, decorator: Google::Apis::DriveV3::File::ImageMediaMetadata::Location::Representation
659
+
660
+ property :max_aperture_value, as: 'maxApertureValue'
661
+ property :metering_mode, as: 'meteringMode'
662
+ property :rotation, as: 'rotation'
663
+ property :sensor, as: 'sensor'
664
+ property :subject_distance, as: 'subjectDistance'
665
+ property :time, as: 'time'
666
+ property :white_balance, as: 'whiteBalance'
667
+ property :width, as: 'width'
668
+ end
669
+
670
+ class Location
671
+ # @private
672
+ class Representation < Google::Apis::Core::JsonRepresentation
673
+ property :altitude, as: 'altitude'
674
+ property :latitude, as: 'latitude'
675
+ property :longitude, as: 'longitude'
676
+ end
677
+ end
678
+ end
679
+
680
+ class ShortcutDetails
681
+ # @private
682
+ class Representation < Google::Apis::Core::JsonRepresentation
683
+ property :target_id, as: 'targetId'
684
+ property :target_mime_type, as: 'targetMimeType'
685
+ end
686
+ end
687
+
688
+ class VideoMediaMetadata
689
+ # @private
690
+ class Representation < Google::Apis::Core::JsonRepresentation
691
+ property :duration_millis, :numeric_string => true, as: 'durationMillis'
692
+ property :height, as: 'height'
693
+ property :width, as: 'width'
694
+ end
695
+ end
696
+ end
697
+
698
+ class FileList
699
+ # @private
700
+ class Representation < Google::Apis::Core::JsonRepresentation
701
+ collection :files, as: 'files', class: Google::Apis::DriveV3::File, decorator: Google::Apis::DriveV3::File::Representation
702
+
703
+ property :incomplete_search, as: 'incompleteSearch'
704
+ property :kind, as: 'kind'
705
+ property :next_page_token, as: 'nextPageToken'
706
+ end
707
+ end
708
+
709
+ class GeneratedIds
710
+ # @private
711
+ class Representation < Google::Apis::Core::JsonRepresentation
712
+ collection :ids, as: 'ids'
713
+ property :kind, as: 'kind'
714
+ property :space, as: 'space'
715
+ end
716
+ end
717
+
718
+ class Permission
719
+ # @private
720
+ class Representation < Google::Apis::Core::JsonRepresentation
721
+ property :allow_file_discovery, as: 'allowFileDiscovery'
722
+ property :deleted, as: 'deleted'
723
+ property :display_name, as: 'displayName'
724
+ property :domain, as: 'domain'
725
+ property :email_address, as: 'emailAddress'
726
+ property :expiration_time, as: 'expirationTime', type: DateTime
727
+
728
+ property :id, as: 'id'
729
+ property :kind, as: 'kind'
730
+ collection :permission_details, as: 'permissionDetails', class: Google::Apis::DriveV3::Permission::PermissionDetail, decorator: Google::Apis::DriveV3::Permission::PermissionDetail::Representation
731
+
732
+ property :photo_link, as: 'photoLink'
733
+ property :role, as: 'role'
734
+ collection :team_drive_permission_details, as: 'teamDrivePermissionDetails', class: Google::Apis::DriveV3::Permission::TeamDrivePermissionDetail, decorator: Google::Apis::DriveV3::Permission::TeamDrivePermissionDetail::Representation
735
+
736
+ property :type, as: 'type'
737
+ property :view, as: 'view'
738
+ end
739
+
740
+ class PermissionDetail
741
+ # @private
742
+ class Representation < Google::Apis::Core::JsonRepresentation
743
+ property :inherited, as: 'inherited'
744
+ property :inherited_from, as: 'inheritedFrom'
745
+ property :permission_type, as: 'permissionType'
746
+ property :role, as: 'role'
747
+ end
748
+ end
749
+
750
+ class TeamDrivePermissionDetail
751
+ # @private
752
+ class Representation < Google::Apis::Core::JsonRepresentation
753
+ property :inherited, as: 'inherited'
754
+ property :inherited_from, as: 'inheritedFrom'
755
+ property :role, as: 'role'
756
+ property :team_drive_permission_type, as: 'teamDrivePermissionType'
757
+ end
758
+ end
759
+ end
760
+
761
+ class PermissionList
762
+ # @private
763
+ class Representation < Google::Apis::Core::JsonRepresentation
764
+ property :kind, as: 'kind'
765
+ property :next_page_token, as: 'nextPageToken'
766
+ collection :permissions, as: 'permissions', class: Google::Apis::DriveV3::Permission, decorator: Google::Apis::DriveV3::Permission::Representation
767
+
768
+ end
769
+ end
770
+
771
+ class Reply
772
+ # @private
773
+ class Representation < Google::Apis::Core::JsonRepresentation
774
+ property :action, as: 'action'
775
+ property :author, as: 'author', class: Google::Apis::DriveV3::User, decorator: Google::Apis::DriveV3::User::Representation
776
+
777
+ property :content, as: 'content'
778
+ property :created_time, as: 'createdTime', type: DateTime
779
+
780
+ property :deleted, as: 'deleted'
781
+ property :html_content, as: 'htmlContent'
782
+ property :id, as: 'id'
783
+ property :kind, as: 'kind'
784
+ property :modified_time, as: 'modifiedTime', type: DateTime
785
+
786
+ end
787
+ end
788
+
789
+ class ReplyList
790
+ # @private
791
+ class Representation < Google::Apis::Core::JsonRepresentation
792
+ property :kind, as: 'kind'
793
+ property :next_page_token, as: 'nextPageToken'
794
+ collection :replies, as: 'replies', class: Google::Apis::DriveV3::Reply, decorator: Google::Apis::DriveV3::Reply::Representation
795
+
796
+ end
797
+ end
798
+
799
+ class Revision
800
+ # @private
801
+ class Representation < Google::Apis::Core::JsonRepresentation
802
+ hash :export_links, as: 'exportLinks'
803
+ property :id, as: 'id'
804
+ property :keep_forever, as: 'keepForever'
805
+ property :kind, as: 'kind'
806
+ property :last_modifying_user, as: 'lastModifyingUser', class: Google::Apis::DriveV3::User, decorator: Google::Apis::DriveV3::User::Representation
807
+
808
+ property :md5_checksum, as: 'md5Checksum'
809
+ property :mime_type, as: 'mimeType'
810
+ property :modified_time, as: 'modifiedTime', type: DateTime
811
+
812
+ property :original_filename, as: 'originalFilename'
813
+ property :publish_auto, as: 'publishAuto'
814
+ property :published, as: 'published'
815
+ property :published_link, as: 'publishedLink'
816
+ property :published_outside_domain, as: 'publishedOutsideDomain'
817
+ property :size, :numeric_string => true, as: 'size'
818
+ end
819
+ end
820
+
821
+ class RevisionList
822
+ # @private
823
+ class Representation < Google::Apis::Core::JsonRepresentation
824
+ property :kind, as: 'kind'
825
+ property :next_page_token, as: 'nextPageToken'
826
+ collection :revisions, as: 'revisions', class: Google::Apis::DriveV3::Revision, decorator: Google::Apis::DriveV3::Revision::Representation
827
+
828
+ end
829
+ end
830
+
831
+ class StartPageToken
832
+ # @private
833
+ class Representation < Google::Apis::Core::JsonRepresentation
834
+ property :kind, as: 'kind'
835
+ property :start_page_token, as: 'startPageToken'
836
+ end
837
+ end
838
+
839
+ class TeamDrive
840
+ # @private
841
+ class Representation < Google::Apis::Core::JsonRepresentation
842
+ property :background_image_file, as: 'backgroundImageFile', class: Google::Apis::DriveV3::TeamDrive::BackgroundImageFile, decorator: Google::Apis::DriveV3::TeamDrive::BackgroundImageFile::Representation
843
+
844
+ property :background_image_link, as: 'backgroundImageLink'
845
+ property :capabilities, as: 'capabilities', class: Google::Apis::DriveV3::TeamDrive::Capabilities, decorator: Google::Apis::DriveV3::TeamDrive::Capabilities::Representation
846
+
847
+ property :color_rgb, as: 'colorRgb'
848
+ property :created_time, as: 'createdTime', type: DateTime
849
+
850
+ property :id, as: 'id'
851
+ property :kind, as: 'kind'
852
+ property :name, as: 'name'
853
+ property :restrictions, as: 'restrictions', class: Google::Apis::DriveV3::TeamDrive::Restrictions, decorator: Google::Apis::DriveV3::TeamDrive::Restrictions::Representation
854
+
855
+ property :theme_id, as: 'themeId'
856
+ end
857
+
858
+ class BackgroundImageFile
859
+ # @private
860
+ class Representation < Google::Apis::Core::JsonRepresentation
861
+ property :id, as: 'id'
862
+ property :width, as: 'width'
863
+ property :x_coordinate, as: 'xCoordinate'
864
+ property :y_coordinate, as: 'yCoordinate'
865
+ end
866
+ end
867
+
868
+ class Capabilities
869
+ # @private
870
+ class Representation < Google::Apis::Core::JsonRepresentation
871
+ property :can_add_children, as: 'canAddChildren'
872
+ property :can_change_copy_requires_writer_permission_restriction, as: 'canChangeCopyRequiresWriterPermissionRestriction'
873
+ property :can_change_domain_users_only_restriction, as: 'canChangeDomainUsersOnlyRestriction'
874
+ property :can_change_team_drive_background, as: 'canChangeTeamDriveBackground'
875
+ property :can_change_team_members_only_restriction, as: 'canChangeTeamMembersOnlyRestriction'
876
+ property :can_comment, as: 'canComment'
877
+ property :can_copy, as: 'canCopy'
878
+ property :can_delete_children, as: 'canDeleteChildren'
879
+ property :can_delete_team_drive, as: 'canDeleteTeamDrive'
880
+ property :can_download, as: 'canDownload'
881
+ property :can_edit, as: 'canEdit'
882
+ property :can_list_children, as: 'canListChildren'
883
+ property :can_manage_members, as: 'canManageMembers'
884
+ property :can_read_revisions, as: 'canReadRevisions'
885
+ property :can_remove_children, as: 'canRemoveChildren'
886
+ property :can_rename, as: 'canRename'
887
+ property :can_rename_team_drive, as: 'canRenameTeamDrive'
888
+ property :can_share, as: 'canShare'
889
+ property :can_trash_children, as: 'canTrashChildren'
890
+ end
891
+ end
892
+
893
+ class Restrictions
894
+ # @private
895
+ class Representation < Google::Apis::Core::JsonRepresentation
896
+ property :admin_managed_restrictions, as: 'adminManagedRestrictions'
897
+ property :copy_requires_writer_permission, as: 'copyRequiresWriterPermission'
898
+ property :domain_users_only, as: 'domainUsersOnly'
899
+ property :team_members_only, as: 'teamMembersOnly'
900
+ end
901
+ end
902
+ end
903
+
904
+ class TeamDriveList
905
+ # @private
906
+ class Representation < Google::Apis::Core::JsonRepresentation
907
+ property :kind, as: 'kind'
908
+ property :next_page_token, as: 'nextPageToken'
909
+ collection :team_drives, as: 'teamDrives', class: Google::Apis::DriveV3::TeamDrive, decorator: Google::Apis::DriveV3::TeamDrive::Representation
910
+
911
+ end
912
+ end
913
+
914
+ class User
915
+ # @private
916
+ class Representation < Google::Apis::Core::JsonRepresentation
917
+ property :display_name, as: 'displayName'
918
+ property :email_address, as: 'emailAddress'
919
+ property :kind, as: 'kind'
920
+ property :me, as: 'me'
921
+ property :permission_id, as: 'permissionId'
922
+ property :photo_link, as: 'photoLink'
923
+ end
924
+ end
925
+ end
926
+ end
927
+ end