Module File.Capabilities

type t = {
canAddChildren : bool;(*

Whether the current user can add children to this folder. This is always false when the item is not a folder.

*)
canAddFolderFromAnotherDrive : bool;(*

Whether the current user can add a folder from another drive (different shared drive or My Drive) to this folder. This is false when the item is not a folder. Only populated for items in shared drives.

*)
canAddMyDriveParent : bool;(*

Whether the current user can add a parent for the item without removing an existing parent in the same request. Not populated for shared drive files.

*)
canChangeCopyRequiresWriterPermission : bool;(*

Whether the current user can change the copyRequiresWriterPermission restriction of this file.

*)
canChangeSecurityUpdateEnabled : bool;(*

Whether the current user can change the securityUpdateEnabled field on link share metadata.

*)
canChangeViewersCanCopyContent : bool;(*

Deprecated

*)
canComment : bool;(*

Whether the current user can comment on this file.

*)
canCopy : bool;(*

Whether the current user can copy this file. For an item in a shared drive, whether the current user can copy non-folder descendants of this item, or this item itself if it is not a folder.

*)
canDelete : bool;(*

Whether the current user can delete this file.

*)
canDeleteChildren : bool;(*

Whether the current user can delete children of this folder. This is false when the item is not a folder. Only populated for items in shared drives.

*)
canDownload : bool;(*

Whether the current user can download this file.

*)
canEdit : bool;(*

Whether the current user can edit this file. Other factors may limit the type of changes a user can make to a file. For example, see canChangeCopyRequiresWriterPermission or canModifyContent.

*)
canListChildren : bool;(*

Whether the current user can list the children of this folder. This is always false when the item is not a folder.

*)
canModifyContent : bool;(*

Whether the current user can modify the content of this file.

*)
canModifyContentRestriction : bool;(*

Whether the current user can modify restrictions on content of this file.

*)
canMoveChildrenOutOfDrive : bool;(*

Whether the current user can move children of this folder outside of the shared drive. This is false when the item is not a folder. Only populated for items in shared drives.

*)
canMoveChildrenOutOfTeamDrive : bool;(*

Deprecated - use canMoveChildrenOutOfDrive instead.

*)
canMoveChildrenWithinDrive : bool;(*

Whether the current user can move children of this folder within this drive. This is false when the item is not a folder. Note that a request to move the child may still fail depending on the current user's access to the child and to the destination folder.

*)
canMoveChildrenWithinTeamDrive : bool;(*

Deprecated - use canMoveChildrenWithinDrive instead.

*)
canMoveItemIntoTeamDrive : bool;(*

Deprecated - use canMoveItemOutOfDrive instead.

*)
canMoveItemOutOfDrive : bool;(*

Whether the current user can move this item outside of this drive by changing its parent. Note that a request to change the parent of the item may still fail depending on the new parent that is being added.

*)
canMoveItemOutOfTeamDrive : bool;(*

Deprecated - use canMoveItemOutOfDrive instead.

*)
canMoveItemWithinDrive : bool;(*

Whether the current user can move this item within this drive. Note that a request to change the parent of the item may still fail depending on the new parent that is being added and the parent that is being removed.

*)
canMoveItemWithinTeamDrive : bool;(*

Deprecated - use canMoveItemWithinDrive instead.

*)
canMoveTeamDriveItem : bool;(*

Deprecated - use canMoveItemWithinDrive or canMoveItemOutOfDrive instead.

*)
canReadDrive : bool;(*

Whether the current user can read the shared drive to which this file belongs. Only populated for items in shared drives.

*)
canReadRevisions : bool;(*

Whether the current user can read the revisions resource of this file. For a shared drive item, whether revisions of non-folder descendants of this item, or this item itself if it is not a folder, can be read.

*)
canReadTeamDrive : bool;(*

Deprecated - use canReadDrive instead.

*)
canRemoveChildren : bool;(*

Whether the current user can remove children from this folder. This is always false when the item is not a folder. For a folder in a shared drive, use canDeleteChildren or canTrashChildren instead.

*)
canRemoveMyDriveParent : bool;(*

Whether the current user can remove a parent from the item without adding another parent in the same request. Not populated for shared drive files.

*)
canRename : bool;(*

Whether the current user can rename this file.

*)
canShare : bool;(*

Whether the current user can modify the sharing settings for this file.

*)
canTrash : bool;(*

Whether the current user can move this file to trash.

*)
canTrashChildren : bool;(*

Whether the current user can trash children of this folder. This is false when the item is not a folder. Only populated for items in shared drives.

*)
canUntrash : bool;(*

Whether the current user can restore this file from trash.

*)
}
val canAddChildren : ( t, bool ) GapiLens.t
val canAddFolderFromAnotherDrive : ( t, bool ) GapiLens.t
val canAddMyDriveParent : ( t, bool ) GapiLens.t
val canChangeCopyRequiresWriterPermission : ( t, bool ) GapiLens.t
val canChangeSecurityUpdateEnabled : ( t, bool ) GapiLens.t
val canChangeViewersCanCopyContent : ( t, bool ) GapiLens.t
val canComment : ( t, bool ) GapiLens.t
val canCopy : ( t, bool ) GapiLens.t
val canDelete : ( t, bool ) GapiLens.t
val canDeleteChildren : ( t, bool ) GapiLens.t
val canDownload : ( t, bool ) GapiLens.t
val canEdit : ( t, bool ) GapiLens.t
val canListChildren : ( t, bool ) GapiLens.t
val canModifyContent : ( t, bool ) GapiLens.t
val canModifyContentRestriction : ( t, bool ) GapiLens.t
val canMoveChildrenOutOfDrive : ( t, bool ) GapiLens.t
val canMoveChildrenOutOfTeamDrive : ( t, bool ) GapiLens.t
val canMoveChildrenWithinDrive : ( t, bool ) GapiLens.t
val canMoveChildrenWithinTeamDrive : ( t, bool ) GapiLens.t
val canMoveItemIntoTeamDrive : ( t, bool ) GapiLens.t
val canMoveItemOutOfDrive : ( t, bool ) GapiLens.t
val canMoveItemOutOfTeamDrive : ( t, bool ) GapiLens.t
val canMoveItemWithinDrive : ( t, bool ) GapiLens.t
val canMoveItemWithinTeamDrive : ( t, bool ) GapiLens.t
val canMoveTeamDriveItem : ( t, bool ) GapiLens.t
val canReadDrive : ( t, bool ) GapiLens.t
val canReadRevisions : ( t, bool ) GapiLens.t
val canReadTeamDrive : ( t, bool ) GapiLens.t
val canRemoveChildren : ( t, bool ) GapiLens.t
val canRemoveMyDriveParent : ( t, bool ) GapiLens.t
val canRename : ( t, bool ) GapiLens.t
val canShare : ( t, bool ) GapiLens.t
val canTrash : ( t, bool ) GapiLens.t
val canTrashChildren : ( t, bool ) GapiLens.t
val canUntrash : ( t, bool ) GapiLens.t
val empty : t
val render : t -> GapiJson.json_data_model list
val parse : t -> GapiJson.json_data_model -> t